On Tue, Jan 30, 2024 at 08:43:24PM +0100, Niklas Cassel wrote: > On Thu, Jan 25, 2024 at 10:33:19AM -0500, Frank Li wrote: > > On Mon, Jan 08, 2024 at 10:10:15AM -0500, Frank Li wrote: > > > For the inbound MEM/IO TLPs, iATU on the endpoint expects the target > > > address to be aligned to the size of the BAR. For configurable BARs, there > > > is no issue because both host and endpoint will know the exact size of the > > > BAR region. But for fixed size BARs available in some controllers, if the > > > BAR size advertised by the endpoint is not same as of the actual BAR size > > > used in the controller, then the MEM/IO TLPs generated by the host will not > > > be translated properly by the endpoint iATU. > > > > > > So if the fixed size BARs are available in endpoint controllers, always use > > > the actual BAR size. > > > > > > This only fixes doorbell (DB) BAR. A similar fix is needed for memory map > > > windows(MW) BARs. > > > > > > Fixes: e35f56bb0330 ("PCI: endpoint: Support NTB transfer between RC and EP") > > > Cc: stable@xxxxxxxxxxxxxxx > > > Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > > > Signed-off-by: Frank Li <Frank.Li@xxxxxxx> > > > --- > > > > @lpieralisi: > > > > Could you please pick this fix patch? > > > Hello Frank, Lorenzo, Mani, > > > Frank, sorry for not seeing this patch earlier. > > Could you please see if this series fixes your issue: > https://lore.kernel.org/linux-pci/20240130193214.713739-1-cassel@xxxxxxxxxx/T/#t > > I think it is nicer since: > 1) It doesn't add copy pasted code from pci-epf-test.c to pci-epf-vntb.c. > 2) I would expect it to handle both the doorbell BAR and the MW BARs. Agree! Thanks Frank > > > Kind regards, > Niklas