From mboxrd@z Thu Jan 1 00:00:00 1970 From: Al Viro Subject: Re: [PATCH RESEND] compat-ioctl/Xen: support at least some IOCTLs of evtchn and privcmd Date: Wed, 15 Aug 2018 14:27:31 +0100 Message-ID: <20180815132730.GW6515@ZenIV.linux.org.uk> References: <5B30C6E202000078001CD724@prv1-mh.provo.novell.com> <5B73C5D402000078001DE189@prv1-mh.provo.novell.com> <20180815125114.GV6515@ZenIV.linux.org.uk> <5B7427BB02000078001DE675@prv1-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fpvpl-0006fD-Qq for xen-devel@lists.xenproject.org; Wed, 15 Aug 2018 13:27:33 +0000 Content-Disposition: inline In-Reply-To: <5B7427BB02000078001DE675@prv1-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Jan Beulich Cc: Juergen Gross , xen-devel , Boris Ostrovsky , linux-fsdevel@vger.kernel.org List-Id: xen-devel@lists.xenproject.org T24gV2VkLCBBdWcgMTUsIDIwMTggYXQgMDc6MTY6NDNBTSAtMDYwMCwgSmFuIEJldWxpY2ggd3Jv dGU6Cj4gPj4+IE9uIDE1LjA4LjE4IGF0IDE0OjUxLCA8dmlyb0BaZW5JVi5saW51eC5vcmcudWs+ IHdyb3RlOgo+ID4gT24gV2VkLCBBdWcgMTUsIDIwMTggYXQgMTI6MTk6MDBBTSAtMDYwMCwgSmFu IEJldWxpY2ggd3JvdGU6Cj4gPj4gV2hpbGUgdGhpcyBpcyBvbmx5IGEgc3RhcnQgKElPQ1RMX1BS SVZDTURfTU1BUCogYW5kIElPQ1RMX1BSSVZDTURfRE1fT1AKPiA+PiByZXF1aXJlIG1vcmUgd29y ayksIGl0IGF0IGxlYXN0IGFsbG93cyBzb21lIHNpbXBsZSBvcGVyYXRpb25zIChsaWtlCj4gPj4g InhsIGRtZXNnIikgd2hpY2ggaGF2ZSBhbHdheXMgYmVlbiBhdmFpbGFibGUgb24gWGVub0xpbnV4 IHRvIHdvcmsgYWdhaW4KPiA+PiB3aXRoIGEgNjQtYml0IGtlcm5lbCB1bmRlcm5lYXRoIGEgMzIt Yml0IGRpc3Ryby4KPiA+PiAKPiA+PiBTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxp Y2hAc3VzZS5jb20+Cj4gPj4gQWNrZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNv bT4KPiA+IAo+ID4gCj4gPiBOYWNrZWQtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYubGludXgub3Jn LnVrPgo+ID4gCj4gPiAJVGhpcyBiZWxvbmdzIGluIGRyaXZlcnMveGVuL3ByaXZjbWQuYywgbm90 IGluIGZzL2NvbXBhdF9pb2N0bC5jCj4gPiAqQU5ZKiBzaW5nbGUtZHJpdmVyIGlvY3RsIGRlZmlu aXRlbHkgc2hvdWxkIGJlIGhhbmRsZWQgYnkgLT5jb21wYXRfaW9jdGwoKQo+ID4gbWV0aG9kIGFu ZCBhbnkgcGF0Y2hlcyBkdW1waW5nIHN1Y2ggc3R1ZmYgaW50byBmcy9jb21wYXRfaW9jdGwuYyB3 aWxsIGJlCj4gPiByZWplY3RlZC4KPiAKPiBPa2F5LCBJJ2xsIHNlZSBhYm91dCBkb2luZyB0aGlz OyBJIGhhdmUgdG8gYWRtaXQgSSB3YXMgdW5hd2FyZSBvZgo+IC0+Y29tcGF0X2lvY3RsKCkncyBl eGlzdGVuY2UuIEl0IHdvdWxkIGJlIHJhdGhlciBoZWxwZnVsIGlmIHRoZSBoZWFkZXIKPiBvZiBj b21wYXRfaW9jdGwuYyBpbmRpY2F0ZWQgd2hhdCB5b3Ugc2F5LiBXaXRob3V0IHRoYXQsIEkndmUg c2ltcGx5Cj4gZ29uZSBieSB0aGUgb2JzZXJ2YXRpb24gdGhhdCB0aGVyZSBhcmUgdGhpbmdzIGlu IHRoZSBmaWxlIHdoaWNoCj4gYWNjb3JkaW5nIHRvIHdoYXQgeW91IHNheSBzaG91bGRuJ3QgYmUg dGhlcmUsIGFuZCBJJ3ZlIHRoZW4gd3JvbmdseQo+IGltcGxpZWQgYWRkaW5nIHRoZSBYZW4gc3R1 ZmYgaGVyZSB3b3VsZCBiZSBmaW5lLgoKT3JpZ2luYWxseSBmcy9jb21wYXRfaW9jdGwuYyB3YXMg YSByZXN1bHQgb2YgbWVyZ2VyIGJldHdlZW4gc2V2ZXJhbCBzdWNoCmJlYXN0cyBpbiBhcmNoLyo7 IGl0J3MgKm9sZCogLSB3ZWxsIGJlZm9yZSAtPmNvbXBhdF9pb2N0bCgpIGludHJvZHVjdGlvbi4K SWYgeW91IGNoZWNrIHRoZSBoaXN0b3J5IG9mIHRoYXQgdGhpbmcsIHlvdSdsbCBzZWUgY3JhcCBn ZXR0aW5nIHJlbW92ZWQKb3ZlciB0aGUgeWVhcnMuICBTb21ldGltZXMgdGhlIHRoaW5ncyBzbmVh ayBpbiwgYnV0IGdlbmVyYWxseSBpdCBrZWVwcwpzaHJpbmtpbmcuLi4KClRoZSBvbmx5IHN0dWZm IHRoYXQgbWlnaHQgYmVsb25nIHRoZXJlIGlzIHdpZGVseS1pbXBsZW1lbnRlZCBpb2N0bHMuCkFu eXRoaW5nIHRoYXQgaXMgbmF0aXZlbHkgaGFuZGxlZCBpbiBhIGNvdXBsZSBvZiAtPmlvY3RsKCkg aW5zdGFuY2VzCnNob3VsZCBiZSBnZXR0aW5nIC0+Y29tcGF0X2lvY3RsKCkgaW5zdGFuY2UgdG8g Z28gd2l0aCB0aGF0IG9uZS4KCkFuZCB5ZXMsIGJpZyBmYXQgd2FybmluZyBhbG9uZyB0aGUgbGlu ZXMgb2YgImRvbid0IGR1bXAgaGVyZSIgaXMKcHJvYmFibHkgYSBnb29kIGlkZWEuLi4KCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from zeniv.linux.org.uk ([195.92.253.2]:48590 "EHLO ZenIV.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729125AbeHOQTp (ORCPT ); Wed, 15 Aug 2018 12:19:45 -0400 Date: Wed, 15 Aug 2018 14:27:31 +0100 From: Al Viro To: Jan Beulich Cc: xen-devel , Boris Ostrovsky , Juergen Gross , linux-fsdevel@vger.kernel.org Subject: Re: [PATCH RESEND] compat-ioctl/Xen: support at least some IOCTLs of evtchn and privcmd Message-ID: <20180815132730.GW6515@ZenIV.linux.org.uk> References: <5B30C6E202000078001CD724@prv1-mh.provo.novell.com> <5B73C5D402000078001DE189@prv1-mh.provo.novell.com> <20180815125114.GV6515@ZenIV.linux.org.uk> <5B7427BB02000078001DE675@prv1-mh.provo.novell.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5B7427BB02000078001DE675@prv1-mh.provo.novell.com> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Wed, Aug 15, 2018 at 07:16:43AM -0600, Jan Beulich wrote: > >>> On 15.08.18 at 14:51, wrote: > > On Wed, Aug 15, 2018 at 12:19:00AM -0600, Jan Beulich wrote: > >> While this is only a start (IOCTL_PRIVCMD_MMAP* and IOCTL_PRIVCMD_DM_OP > >> require more work), it at least allows some simple operations (like > >> "xl dmesg") which have always been available on XenoLinux to work again > >> with a 64-bit kernel underneath a 32-bit distro. > >> > >> Signed-off-by: Jan Beulich > >> Acked-by: Juergen Gross > > > > > > Nacked-by: Al Viro > > > > This belongs in drivers/xen/privcmd.c, not in fs/compat_ioctl.c > > *ANY* single-driver ioctl definitely should be handled by ->compat_ioctl() > > method and any patches dumping such stuff into fs/compat_ioctl.c will be > > rejected. > > Okay, I'll see about doing this; I have to admit I was unaware of > ->compat_ioctl()'s existence. It would be rather helpful if the header > of compat_ioctl.c indicated what you say. Without that, I've simply > gone by the observation that there are things in the file which > according to what you say shouldn't be there, and I've then wrongly > implied adding the Xen stuff here would be fine. Originally fs/compat_ioctl.c was a result of merger between several such beasts in arch/*; it's *old* - well before ->compat_ioctl() introduction. If you check the history of that thing, you'll see crap getting removed over the years. Sometimes the things sneak in, but generally it keeps shrinking... The only stuff that might belong there is widely-implemented ioctls. Anything that is natively handled in a couple of ->ioctl() instances should be getting ->compat_ioctl() instance to go with that one. And yes, big fat warning along the lines of "don't dump here" is probably a good idea...