diff mbox series

ext4: change EXT4_IOC_GETSTATE ioctl to _IOR

Message ID 20210830100508.56004-1-efremov@linux.com
State Rejected
Headers show
Series ext4: change EXT4_IOC_GETSTATE ioctl to _IOR | expand

Commit Message

Denis Efremov Aug. 30, 2021, 10:05 a.m. UTC
EXT4_IOC_GETSTATE is only used to read the state flags from the kernel.

Fixes: 1ad3ea6e0a69 ("ext4: add a new ioctl EXT4_IOC_GETSTATE")
Signed-off-by: Denis Efremov <efremov@linux.com>
---
 fs/ext4/ext4.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Theodore Ts'o Aug. 30, 2021, 12:05 p.m. UTC | #1
On Mon, Aug 30, 2021 at 01:05:08PM +0300, Denis Efremov wrote:
> EXT4_IOC_GETSTATE is only used to read the state flags from the kernel.
> 
> Fixes: 1ad3ea6e0a69 ("ext4: add a new ioctl EXT4_IOC_GETSTATE")
> Signed-off-by: Denis Efremov <efremov@linux.com>

NACK.  This will break ABI compatibility, which is way important than
getting the ioctl encoding incorrect.

If you really care, I suppose we could add an EXT4_IOC_GETSTATE_OLD
for the old value, and then support EXT4_IOC_GETSTATE and
EXT4_IOC_GETSTATE_OLD for a decade or two until all of the binaries in
the world get recompiled.

Is it worth it?  Eh....

						- Ted
diff mbox series

Patch

diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index 3c51e243450d..244b4dd193d3 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -718,7 +718,7 @@  enum {
 #define EXT4_IOC_PRECACHE_EXTENTS	_IO('f', 18)
 /* ioctl codes 19--39 are reserved for fscrypt */
 #define EXT4_IOC_CLEAR_ES_CACHE		_IO('f', 40)
-#define EXT4_IOC_GETSTATE		_IOW('f', 41, __u32)
+#define EXT4_IOC_GETSTATE		_IOR('f', 41, __u32)
 #define EXT4_IOC_GET_ES_CACHE		_IOWR('f', 42, struct fiemap)
 #define EXT4_IOC_CHECKPOINT		_IOW('f', 43, __u32)