[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200204193500.GA15564@ashkalra_ubuntu_server>
Date: Tue, 4 Feb 2020 19:35:00 +0000
From: Ashish Kalra <ashish.kalra@....com>
To: Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
Cc: Konrad Rzeszutek Wilk <konrad@...nok.org>, hch@....de,
tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, hpa@...or.com,
x86@...nel.org, luto@...nel.org, peterz@...radead.org,
dave.hansen@...ux-intel.com, iommu@...ts.linux-foundation.org,
linux-kernel@...r.kernel.org, brijesh.singh@....com,
Thomas.Lendacky@....com
Subject: Re: [PATCH v2] swiotlb: Adjust SWIOTBL bounce buffer size for SEV
guests.
Hello Konrad,
Looking fwd. to your feedback regarding support of other memory
encryption architectures such as Power, S390, etc.
Thanks,
Ashish
On Fri, Jan 24, 2020 at 11:00:08PM +0000, Ashish Kalra wrote:
> On Tue, Jan 21, 2020 at 03:54:03PM -0500, Konrad Rzeszutek Wilk wrote:
> > >
> > > Additional memory calculations based on # of PCI devices and
> > > their memory ranges will make it more complicated with so
> > > many other permutations and combinations to explore, it is
> > > essential to keep this patch as simple as possible by
> > > adjusting the bounce buffer size simply by determining it
> > > from the amount of provisioned guest memory.
> >>
> >> Please rework the patch to:
> >>
> >> - Use a log solution instead of the multiplication.
> >> Feel free to cap it at a sensible value.
>
> Ok.
>
> >>
> >> - Also the code depends on SWIOTLB calling in to the
> >> adjust_swiotlb_default_size which looks wrong.
> >>
> >> You should not adjust io_tlb_nslabs from swiotlb_size_or_default.
>
> >> That function's purpose is to report a value.
> >>
> >> - Make io_tlb_nslabs be visible outside of the SWIOTLB code.
> >>
> >> - Can you utilize the IOMMU_INIT APIs and have your own detect which would
> >> modify the io_tlb_nslabs (and set swiotbl=1?).
>
> This seems to be a nice option, but then IOMMU_INIT APIs are
> x86-specific and this swiotlb buffer size adjustment is also needed
> for other memory encryption architectures like Power, S390, etc.
>
> >>
> >> Actually you seem to be piggybacking on pci_swiotlb_detect_4gb - so
> >> perhaps add in this code ? Albeit it really should be in it's own
> >> file, not in arch/x86/kernel/pci-swiotlb.c
>
> Actually, we piggyback on pci_swiotlb_detect_override which sets
> swiotlb=1 as x86_64_start_kernel() and invocation of sme_early_init()
> forces swiotlb on, but again this is all x86 architecture specific.
>
> Thanks,
> Ashish
Powered by blists - more mailing lists