[U-Boot] [PATCH v3] arm: socfpga: mailbox: Fix off-by-one error on command length checking
Marek Vasut
marex at denx.de
Mon Apr 22 17:57:24 UTC 2019
On 4/22/19 3:20 AM, Ley Foon Tan wrote:
> On Sun, Apr 21, 2019 at 4:30 PM Marek Vasut <marex at denx.de> wrote:
>>
>> On 4/19/19 10:52 PM, Simon Goldschmidt wrote:
>>>
>>>
>>> Marek Vasut <marex at denx.de <mailto:marex at denx.de>> schrieb am Fr., 19.
>>> Apr. 2019, 11:29:
>>>
>>> On 4/19/19 8:17 AM, Ley Foon Tan wrote:
>>> > A mailbox command contains 1-DWORD header + arguments. The "len"
>>> variable
>>> > only contains the length of the arguments, but not the 1-DWORD header.
>>> > Include the length of header when checking the ring buffer space to
>>> > prevent off-by-one error.
>>>
>>> How long is a DWORD ? Windows API (which we have nothing to do with)
>>> defines that as 32bit type, "typedef unsigned long DWORD;", see [1].
>>> But the patch below fixes an off-by-one error , not off by four error ?
>>>
>>>
>>> As all the macros for that mailbox seem to do u32 index access only, I'd
>>> be ok with the commit message if it didn't use the term 'DWORD'...
>>
>> Does that mean MBOX_CMD_BUFFER_SIZE is not in byte units, but in u32 units ?
> Yes, it is in u32 unit. One slot location is u32.
> How about change DWORD to u32 in commit message?
Yes please. It would also make sense to add a comment into the code that
len is not in bytes, but u32 units .
--
Best regards,
Marek Vasut
More information about the U-Boot
mailing list