Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp2449223ybl; Mon, 19 Aug 2019 02:10:37 -0700 (PDT) X-Google-Smtp-Source: APXvYqxIdxMAXOe/ND40gvxNxvinvYEfCkq0LjMTLV7/NNUZwFwEFslT/AENE6+heXVyRhCbWf+8 X-Received: by 2002:a63:58c:: with SMTP id 134mr19831320pgf.106.1566205837575; Mon, 19 Aug 2019 02:10:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1566205837; cv=none; d=google.com; s=arc-20160816; b=XK8UAzKeG1+Yf3ceT5qBmFi40+P8vPNO74zVNxrPKanGDdhOL7i35I3oA63RAcCx5b SKwoeR/dPmh5TnU4lNl2DBtEOoPZea8dPfUev6IwgvIGtw2ejs3ZIMnw+g63K4pO3CSw Xr8QRIATT+lUkbrLN0X9g3BtvgcxuY8aikm+sDJEtD+HlUVRcoSKR2siKr8AVdF1tSLB nvwByXyZeFVPcVvc1ef4Mw6c/axZBaIV7xZssQRAggGHR/W2BzEOVyYbNoSolSr6Ly2F AK6ADLqQ+mntjao1cPSdr+JewJBniYkgTJDD+/ToW5TAVD6Gr3gaco0COVdQssXsvhXT Nu9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version; bh=yOpxexs/iyVyRlJCYbmYr/Uh8Hm2CR+IbbpY+Q6eMEM=; b=sKH56Gz84XvZ8l9c0NfaVEic+zd9QA/chSleRG7dxjF+jdQ4eY0ytcZMI+VrQMQoy/ E2G0LotNnZj4r83R5Lijse5e7N/jS6WjaTqx+nBIVG6JTRYh8RuSaIxz6LZHCE2PHfPV S+SGBOyZNmJ4cbJyIip6dT382o6u9MBOn2vglH520Ll5NTqkLjJL57+USDa+JST3DSO5 8oE1OF7mPFRe2Ql3pXi2g06mwNyaR09z4AVKx4U5moYm17TkkgpECCeWs2rOJZeZcWKW rs8jW4bnTjz6TKm+TyRhG+HuhJG/voP/km+MGJ3ieqEQbdcpn85YCpXx5JJ7dCZzklA2 vHjA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l63si9396783pge.264.2019.08.19.02.10.22; Mon, 19 Aug 2019 02:10:37 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727334AbfHSJJ2 convert rfc822-to-8bit (ORCPT + 99 others); Mon, 19 Aug 2019 05:09:28 -0400 Received: from mail-qt1-f195.google.com ([209.85.160.195]:36892 "EHLO mail-qt1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727077AbfHSJJ2 (ORCPT ); Mon, 19 Aug 2019 05:09:28 -0400 Received: by mail-qt1-f195.google.com with SMTP id y26so1103615qto.4; Mon, 19 Aug 2019 02:09:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=rczbmYNDQXzrrKbji3E8GHKh4iXow7Hl/uO3TZ6Tc+k=; b=S4cGx3Qxbua2gFHW5ATNxAKue9yt2cd2tRpzLC8nvMZDokwCJmzJzRbnM09oMdFMv8 3TO6M61tnxh67AofxzidC9nhw09+o/fHfwjDvgWVI91ptZl4Oi6MGW4QvyPiurEnkTKH NqNYPuWybbTGa1TIlBQb3EyDThcullC2PkT5TWXyoScH0ls+TWrI8FqtjAB64GJkzjiG duVyOm20ZXDfc+xOYGEBfXeEll7jb6rP7NdnKgmJlJg8oJY/vdIBrFHzHHXEN62PM79T 7QrQGlibS97dO8TSaZTsdtjcij/CkK/AhU7qvDJRgqQc0jDysaq36qjMjrzU+o4WA8oI XKIQ== X-Gm-Message-State: APjAAAVBBSb7P9MlDZ0qzISjWD14A2Q/N/gpi1HlEaXE4ZIFe4Cg7eqv Z4d+lLIgZixkrne3zxnk5yksRq4aGt+lOAJUITU= X-Received: by 2002:ad4:45c7:: with SMTP id v7mr9673895qvt.63.1566205767031; Mon, 19 Aug 2019 02:09:27 -0700 (PDT) MIME-Version: 1.0 References: <20190814204259.120942-1-arnd@arndb.de> <20190814204259.120942-4-arnd@arndb.de> In-Reply-To: From: Arnd Bergmann Date: Mon, 19 Aug 2019 11:09:11 +0200 Message-ID: Subject: Re: [PATCH v5 03/18] gfs2: add compat_ioctl support To: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= Cc: Andreas Gruenbacher , LKML , Alexander Viro , linux-fsdevel , Bob Peterson , Steve Whitehouse , Jan Kara , NeilBrown , "Darrick J. Wong" , cluster-devel Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Aug 18, 2019 at 10:17 PM Andreas Grünbacher wrote: > Am So., 18. Aug. 2019 um 21:32 Uhr schrieb Arnd Bergmann : > > On Fri, Aug 16, 2019 at 7:32 PM Andreas Gruenbacher wrote: > > > On Wed, Aug 14, 2019 at 10:45 PM Arnd Bergmann wrote: > > > > + /* These are just misnamed, they actually get/put from/to user an int */ > > > > + switch(cmd) { > > > > + case FS_IOC32_GETFLAGS: > > > > + cmd = FS_IOC_GETFLAGS; > > > > + break; > > > > + case FS_IOC32_SETFLAGS: > > > > + cmd = FS_IOC_SETFLAGS; > > > > + break; > > > > > > I'd like the code to be more explicit here: > > > > > > case FITRIM: > > > case FS_IOC_GETFSLABEL: > > > break; > > > default: > > > return -ENOIOCTLCMD; > > > > I've looked at it again: if we do this, the function actually becomes > > longer than the native gfs2_ioctl(). Should we just make a full copy then? > > I don't think the length of gfs2_compat_ioctl is really an issue as > long as the function is that simple. True. The most important goal should just be to make it easy to add the correct handler the next time another command is added to the ioctl function. Just let me know which version you want for that: 1. my original patch 2. the version from your reply 3. my version below with compat_ptr() added 4. ... > > static long gfs2_compat_ioctl(struct file *filp, unsigned int cmd, > > unsigned long arg) > > { > > switch(cmd) { > > case FS_IOC32_GETFLAGS: > > return gfs2_get_flags(filp, (u32 __user *)arg); > > case FS_IOC32_SETFLAGS: > > return gfs2_set_flags(filp, (u32 __user *)arg); > > case FITRIM: > > return gfs2_fitrim(filp, (void __user *)arg); > > case FS_IOC_GETFSLABEL: > > return gfs2_getlabel(filp, (char __user *)arg); > > } > > > > return -ENOTTY; > > } > > Don't we still need the compat_ptr conversion? That seems to be the > main point of having a compat_ioctl operation. Right, of course. Fixed now in my tree. Arnd