net: Avoid thousands of -Wflex-array-member-not-at-end warnings
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest4 patches 10 repliesIn review
- v12 patches 17 repliesSuperseded
Changes in v2 from the cover letter
- Drop nfsd patch.
- Move struct sockaddr_legacy to include/uapi/linux/socket.h
- Introduce __kernel_sockaddr_legacy macro (Kees)
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/4 | uapi: socket: Introduce struct sockaddr_legacyinclude/ | +28 | 7 replies | |
| 2/4 | uapi: wireless: Avoid -Wflex-array-member-not-at-end warningsinclude/ | +28 | 1 reply | |
| 3/4 | uapi: net: arp: Avoid -Wflex-array-member-not-at-end warningsinclude/ net/ | +10 | 1 reply | |
| 4/4 | uapi: net: Avoid -Wflex-array-member-not-at-end warningsinclude/ include/ net/ +2 more | +32 | 1 reply |
Reviews trailers per patch
All 4 patches have a Reviewed-by or Acked-by.
| Patch | Kees Cook |
|---|---|
| 1/4 | R-b |
| 2/4 | R-b |
| 3/4 | R-b |
| 4/4 | R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v2 0/4][next] net: Avoid thousands of -Wflex-array-member-not-at-end warnings
This series aims to resolve thousands of -Wflex-array-member-not-at-end warnings by introducing struct sockaddr_legacy. The intention is to use it to replace the type of several struct members in the middle of composite structures, currently of type struct sockaddr.
These middle struct members are currently causing thousands of warnings because struct sockaddr contains a flexible-array member, introduced by commit b5f0de6df6dce ("net: dev: Convert sa_data to flexible array in struct sockaddR").
The new struct sockaddr_legacy doesn't include a flexible-array member, making it suitable for use as the type of middle members in composite structs that don't really require the flexible-array member in struct sockaddr, thus avoiding -Wflex-array-member-not-at-end warnings.
As this new struct will live in UAPI, to avoid breaking user-space code that expects struct sockaddr, the __kernel_sockaddr_legacy macro is introduced. This macro allows us to use either struct sockaddr or struct sockaddr_legacy depending on the context in which the code is
used: kernel-space or user-space.
Changes in v2
- Drop nfsd patch.
- Move struct sockaddr_legacy to include/uapi/linux/socket.h
- Introduce __kernel_sockaddr_legacy macro (Kees)
v1:
Gustavo A. R. Silva (4):
uapi: socket: Introduce struct sockaddr_legacy
uapi: wireless: Avoid -Wflex-array-member-not-at-end warnings
uapi: net: arp: Avoid -Wflex-array-member-not-at-end warnings
uapi: net: Avoid -Wflex-array-member-not-at-end warnings
include/net/compat.h | 30 +++++++++---------- include/uapi/linux/if_arp.h | 18 +++++------ include/uapi/linux/route.h | 28 +++++++++--------- include/uapi/linux/socket.h | 28 ++++++++++++++++++ include/uapi/linux/wireless.h | 56 +++++++++++++++++------------------ net/appletalk/ddp.c | 2 +- net/ipv4/af_inet.c | 2 +- net/ipv4/arp.c | 2 +- net/ipv4/fib_frontend.c | 2 +- 9 files changed, 98 insertions(+), 70 deletions(-)
Signature · 1 line
2.34.1