Re: [PATCH v5 3/4] net: socket: simplify dev_ifconf handling
From: Christoph Hellwig <hch@lst.de>
Date: 2021-07-21 07:34:09
The implementation can be simplified further, based on the knowledge that the dynamic registration is only ever usedquoted
for IPv4.
I think dropping register_gifconf (which seems like a nice cleanup!) needs to be a separate prep patch to not make this too confusing.
quoted hunk ↗ jump to hunk
index e6231837aff5..4727c7a3a988 100644--- a/include/linux/compat.h +++ b/include/linux/compat.h@@ -104,6 +104,11 @@ struct compat_ifmap { unsigned char port; }; +struct compat_ifconf { + compat_int_t ifc_len; /* size of buffer */ + compat_uptr_t ifcbuf; +}; + #ifdef CONFIG_COMPAT #ifndef compat_user_stack_pointer@@ -326,12 +331,6 @@ typedef struct compat_sigevent { } _sigev_un; } compat_sigevent_t; -struct compat_if_settings { - unsigned int type; /* Type of physical device or protocol */ - unsigned int size; /* Size of the data allocated by the caller */ - compat_uptr_t ifs_ifsu; /* union of pointers */ -};
Does this actually compile as-is? It adds a second definition of compat_ifconf but removes the still used compat_if_settings? Maybe it would be a better idea to add a prep patch that makes as much as possible of compat.h available unconditionally instead of all these little moves.