Re: [PATCH] PCI: mobiveil: integer overflow in IB_WIN_SIZE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Lorenzo,

looks like I missed it during the review process;
I'll submit the Kconfig and makefile as soon as possible.

Thanks,

On Mon, Jul 9, 2018 at 5:12 PM, Lorenzo Pieralisi
<lorenzo.pieralisi@xxxxxxx> wrote:
> On Mon, Jul 09, 2018 at 03:55:00PM +0530, Subrahmanya Lingappa wrote:
>> Hi Lorenzo,
>>
>> Our reference IP's hardware registers require the to support 256GB
>> inbound window size and this driver did exactly that I believe.
>
> No it does not, please check what this patch does, the window size
> is not currently configured as you wish.
>
> More importantly, nobody can even test it given that this driver lacks a
> Kconfig and a Makefile entry unless I am missing something, I presume
> they were lost in patch reviews but you ought to fix this as soon as
> possible please since this was something I should not have missed.
>
>> May I ask, why do you think this size is questionable ?
>
> The macro is not questionable, it is buggy, the size is what you
> tell me it should be, I agree.
>
> Lorenzo
>
>>
>> Thanks.
>>
>>
>> On Fri, Jul 6, 2018 at 4:56 PM, Lorenzo Pieralisi
>> <lorenzo.pieralisi@xxxxxxx> wrote:
>> > On Thu, Jul 05, 2018 at 12:45:39PM +0300, Dan Carpenter wrote:
>> >> IB_WIN_SIZE is larger than INT_MAX so we need to cast it to u64.
>> >>
>> >> Fixes: 9af6bcb11e12 ("PCI: mobiveil: Add Mobiveil PCIe Host Bridge IP driver")
>> >> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
>> >> ---
>> >> Untested...  Possibly the problem is that there are too many multiplies
>> >> by * 1024.
>> >
>> > Hi Subrahmanya,
>> >
>> > I always thought that that macro value was questionable, please
>> > can you comment on this ?
>> >
>> > Thanks,
>> > Lorenzo
>> >
>> >> diff --git a/drivers/pci/controller/pcie-mobiveil.c b/drivers/pci/controller/pcie-mobiveil.c
>> >> index 4d6c20e47bed..cf0aa7cee5b0 100644
>> >> --- a/drivers/pci/controller/pcie-mobiveil.c
>> >> +++ b/drivers/pci/controller/pcie-mobiveil.c
>> >> @@ -107,7 +107,7 @@
>> >>  #define CFG_WINDOW_TYPE      0
>> >>  #define IO_WINDOW_TYPE               1
>> >>  #define MEM_WINDOW_TYPE      2
>> >> -#define IB_WIN_SIZE          (256 * 1024 * 1024 * 1024)
>> >> +#define IB_WIN_SIZE          ((u64)256 * 1024 * 1024 * 1024)
>> >>  #define MAX_PIO_WINDOWS      8
>> >>
>> >>  /* Parameters for the waiting for link up routine */



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux