From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58961) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZxI4w-0004Xs-GP for qemu-devel@nongnu.org; Fri, 13 Nov 2015 12:24:03 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZxI4s-0001AD-Ge for qemu-devel@nongnu.org; Fri, 13 Nov 2015 12:24:02 -0500 Received: from mx1.redhat.com ([209.132.183.28]:56853) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZxI4s-0001A3-Bi for qemu-devel@nongnu.org; Fri, 13 Nov 2015 12:23:58 -0500 Message-ID: <1447435436.3946.110.camel@redhat.com> From: Alex Williamson Date: Fri, 13 Nov 2015 10:23:56 -0700 In-Reply-To: <002401d11df6$4f7282c0$ee578840$@samsung.com> References: <00fb01d11d19$fc458f20$f4d0ad60$@samsung.com> <1447337819.3946.35.camel@redhat.com> <014c01d11d57$5a101a20$0e304e60$@samsung.com> <1447342408.3946.54.camel@redhat.com> <002401d11df6$4f7282c0$ee578840$@samsung.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] vfio: Fix handling VFIO_IOMMU_GET_INFO results List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Pavel Fedin Cc: qemu-devel@nongnu.org On Fri, 2015-11-13 at 12:33 +0300, Pavel Fedin wrote: > Hello! > > > > If we fix qemu, it will automatically start working with all > > > available kernels which are there in the wild. If we fix kernel, older > > > versions will still not work, however they can. > > > That's why i think that we should adapt qemu to what already exists. > > > But, well, you are The Boss, so you can just say "i don't care". So, > > > just let me now if you strongly disagree with this. > > > > I do care, in fact I care enough about the ABI that I'm suggesting what > > I think is the correct fix rather than taking the quick and dirty > > solution. It's an unfortunate bug, but it's not worth changing the ABI > > and removing the kernel's ability to indicate whether the pgsize bitmap > > field is valid IMO. > > Ok, i see your point... > But what about fix, which would work both with future kernels, which > do provide this flag, as well as would be compatible with already > existing kernels, which set flags == 0? > We could check for ((info.flags == 0) || (info.flags & > VFIO_IOMMU_INFO_PGSIZES)). This would conform to both behaviors: > a) All current kernels set flags = 0 and report page sizes. > b) Some future kernels could have set some flags, but not reported > page sizes and not set VFIO_IOMMI_PGSIZES > > What would you say about this? Yes, this would be a "workaround" > instead of "fix". You haven't presented a compelling reason to do this. What is the case that you're thinking of that assuming PAGE_SIZE doesn't work or at least provide some degree of backwards compatibility? QEMU has been doing this all along. Thanks, Alex