Re: [PATCH v4] irqchip/gicv3-its: Don't allow devices whose ID is outside range

From: Shanker Donthineni
Date: Thu Mar 17 2016 - 13:14:33 EST


Hi Marc,

Sorry, absolutely It was my mistake sending the same patch second time.

On 03/17/2016 10:34 AM, Marc Zyngier wrote:
> On 17/03/16 15:18, Shanker Donthineni wrote:
>> We are not checking whether the requested device identifier fits into
>> the device table memory or not. The function its_create_device()
>> assumes that enough memory has been allocated for whole DevID space
>> (reported by ITS_TYPER.Devbits) during the ITS probe() and continues
>> to initialize ITS hardware.
>>
>> This assumption is not perfect, sometimes we reduce memory size either
>> because of its size crossing MAX_ORDER-1 or BASERn max size limit. The
>> MAPD command fails if 'Device ID' is outside of device table range.
>>
>> Add a simple validation check to avoid MAPD failures since we are
>> not handling ITS command errors. This change also helps to return an
>> error -ENOMEM instead of success to caller.
>>
>> Signed-off-by: Shanker Donthineni <shankerd@xxxxxxxxxxxxxx>
> Is there any difference between this patch and the one you posted on
> March 10th?
>
> Thanks,
>
> M.

--
Shanker Donthineni
Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project