Skip to contentSkip to conversation

ext4: change EXT4_IOC_GETSTATE ioctl to _IOR

PATCH In review Denis Efremov 2 participants 2 messages Aug 30, 2021 ext4 file system

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ext4: change EXT4_IOC_GETSTATE ioctl to _IOR

EXT4_IOC_GETSTATE is only used to read the state flags from the kernel.

Fixes 1ad3ea6e0a69 ("ext4: add a new ioctl EXT4_IOC_GETSTATE")
---
 fs/ext4/ext4.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
fs/ext4/ext4.h +1 -1
index 3c51e243450d..244b4dd193d3 100644
@@ -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)
 
Signature · 1 line
2.31.1
maintainer
#1 lore raw
Quoted 4 lines · Denis Efremov

EXT4_IOC_GETSTATE is only used to read the state flags from the kernel.

Fixes 1ad3ea6e0a69 ("ext4: add a new ioctl EXT4_IOC_GETSTATE")

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