[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e6518637-4e78-3935-133d-79afea67cf80@acm.org>
Date: Wed, 1 Mar 2023 10:44:06 -0800
From: Bart Van Assche <bvanassche@....org>
To: Arthur Simchaev <Arthur.Simchaev@....com>,
"martin.petersen@...cle.com" <martin.petersen@...cle.com>
Cc: "beanhuo@...ron.com" <beanhuo@...ron.com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/2] include: uapi: scsi: Change utp_upiu_query struct
On 3/1/23 01:46, Arthur Simchaev wrote:
>>>>> struct utp_upiu_query {
>>>>> __u8 opcode;
>>>>> __u8 idn;
>>>>> __u8 index;
>>>>> __u8 selector;
>>>>> - __be16 reserved_osf;
>>>>> - __be16 length;
>>>>> - __be32 value;
>>>>> - __be32 reserved[2];
>>>>> + __u8 osf3;
>>>>> + __u8 osf4;
>>>>> + __be16 osf5;
>>>>> + __be32 osf6;
>>>>> + __be32 osf7;
>>>>> };
>>>> All changes in UAPI headers must be backwards compatible. The above
>> doesn't look like a backwards compatible change to me.
>>>
>>> This API was originally invented to support ufs-bsg.
>>> AFAIK, ufs-utils is the only app that makes use of this API,
>>> and it doesn't dig into struct utp_upiu_query inner fields.
>>
>> That does not match what I see. I see that code in ufs-utils accesses
>> the 'length' and 'value' members of the above data structure.
>>
>> Please follow the rules for UAPI header files.
>>
>> Thanks,
>>
>> Bart.
>
> You are right , my fault.
> Anyway, It just return reserved field to the struct.
> Also I can update the tool accordingly. Instead length and value fields,
> using osf5 and osf6.
> In this case we will keep it backward compatible.
> Is it OK?
Hi Arthur,
I doubt that renaming structure members is acceptable for UAPI headers.
How about introducing a second struct next to the utp_upiu_query struct?
Thanks,
Bart.
Powered by blists - more mailing lists