[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 02/10] xen/arm: add sve_vl_bits field to domain
- To: Jan Beulich <jbeulich@xxxxxxxx>
- From: Luca Fancellu <Luca.Fancellu@xxxxxxx>
- Date: Wed, 15 Mar 2023 10:09:57 +0000
- Accept-language: en-GB, en-US
- 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
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=RTcTviUQsmE5ow7vwaoTn7NXz4tA6GhwGMHQRYIaWOU=; b=Oq+CinB24yT4Ljv8TukN4nVp1gJ0Y8zBrLAX5s6g5vdx04ZUffCBCdsaJWMkedJleiNINnpKQ0rVV6FPwR9cZEidNAZkJp9WaLXSfXlgkWtOE/WylSgvK35L2cmV4ZUo7vljTIVe+8TojYFc+NrQVMHy3IPxv7aMr5nJ5ARt36cpfuPuJ97fQTNwa5LpGgdj0fd2+XT1+NtHJiJDR/GCfpEu3Xo/s5vviAnh818ZxvUJLWFrf58o3UEizPF2O3sFhUaIprfW8qYZsRN0gA9hhGibrCfUzWRoMT59+aRUQtiSRlUIADzqCDgcg6XQJ5407zM0lwAin+KdmjLe56HgwA==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GCTGZTdkF8l/hgVnHF5lK1gK8/5I1H2Hfqw7oSBOOQqJ18zYGmVW0P5gkIJ0JIXjBB//lnINGIfcLESk2tYdBuS2OTXGsHNUNo5bz8eeStr7UCwttZAUuP4R9HJgxL7CoWkVPZuZugsGY3LG3RfVDpQfMqIyDrlUYaNmsxgqS0vK2JaJkWnTlo9b7Cw47jPLmsP9LZwKKNDo2a+lFfNio9u6PrGZMhnHvAk7tac7E8C7Cjh8VAocmvzf/O1cPSXkGJ9rO5zU0HvEVYZtK2Hp+VOH0ojje18aZ5X1TSR4JMG9icSkNqtVlXVpO29jN4SaLquX5JC+jJxYWWp7cjcFPg==
- Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
- Cc: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Wei Chen <Wei.Chen@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- Delivery-date: Wed, 15 Mar 2023 10:10:31 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Original-authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
- Thread-index: AQHZVx16ntfU6z6LhESDHGZZuH/Oa677kqEAgAALroA=
- Thread-topic: [PATCH v2 02/10] xen/arm: add sve_vl_bits field to domain
> On 15 Mar 2023, at 09:27, Jan Beulich <jbeulich@xxxxxxxx> wrote:
>
> On 15.03.2023 10:05, Luca Fancellu wrote:
>> --- a/xen/include/public/arch-arm.h
>> +++ b/xen/include/public/arch-arm.h
>> @@ -304,6 +304,9 @@ struct xen_arch_domainconfig {
>> uint16_t tee_type;
>> /* IN */
>> uint32_t nr_spis;
>> + /* IN */
>> + uint16_t sve_vl_bits;
>> + uint16_t _pad1;
>
> Can register sizes be a non-power-of-2 in size? If not, by representing
> the value here as log2(bits) the existing 8-bit padding field could be
> used instead. Sadly, because of it not having been checked to be zero,
> that wouldn't avoid ...
>
>> --- a/xen/include/public/domctl.h
>> +++ b/xen/include/public/domctl.h
>> @@ -21,7 +21,7 @@
>> #include "hvm/save.h"
>> #include "memory.h"
>>
>> -#define XEN_DOMCTL_INTERFACE_VERSION 0x00000015
>> +#define XEN_DOMCTL_INTERFACE_VERSION 0x00000016
>
> ... the need for the bump here. Yet you want to avoid repeating that
> mistake and hence check that the new padding field you introduce (if
> the value needs to remain 16 bits wide) is zero on input.
Hi Jan,
Thank you for your suggestion, just to be sure we are on the same page:
I can store the vector length as VL/128, doing that I can use just 8 bits, so
I can do this:
struct xen_arch_domainconfig {
/* IN/OUT */
uint8_t gic_version;
/* IN */
uint16_t tee_type;
/* IN */
uint8_t sve_vl_bits_enc;
/* IN */
uint32_t nr_spis;
[...]
To take advantage of the existing not explicit padding.
Is that what you meant?
>
> Jan
|