linux-hyperv.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/14] Batch 1: Annotate structs with __counted_by
@ 2023-09-22 17:28 Kees Cook
  2023-09-22 17:28 ` [PATCH 01/14] ipv4: Annotate struct fib_info " Kees Cook
                   ` (15 more replies)
  0 siblings, 16 replies; 37+ messages in thread
From: Kees Cook @ 2023-09-22 17:28 UTC (permalink / raw)
  To: Jakub Kicinski
  Cc: Kees Cook, Jamal Hadi Salim, David S. Miller, David Ahern,
	Eric Dumazet, Paolo Abeni, Martin KaFai Lau, Gustavo A. R. Silva,
	Alexei Starovoitov, Yisen Zhuang, Salil Mehta, Claudiu Manoil,
	Vladimir Oltean, K. Y. Srinivasan, Haiyang Zhang, Wei Liu,
	Dexuan Cui, Long Li, Ajay Sharma, Alex Elder, Pravin B Shelar,
	Shaokun Zhang, Cong Wang, Jiri Pirko, Nathan Chancellor,
	Nick Desaulniers, Tom Rix, Simon Horman, linux-kernel, netdev,
	linux-hyperv, linux-rdma, dev, linux-parisc, llvm,
	linux-hardening

Hi,

This is the batch 1 of patches touching netdev for preparing for
the coming implementation by GCC and Clang of the __counted_by
attribute. Flexible array members annotated with __counted_by can have
their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS
(for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family
functions).

As found with Coccinelle[1], add __counted_by to structs that would
benefit from the annotation.

Since the element count member must be set before accessing the annotated
flexible array member, some patches also move the member's initialization
earlier. (These are noted in the individual patches.)

-Kees

[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci


Kees Cook (14):
  ipv4: Annotate struct fib_info with __counted_by
  ipv4/igmp: Annotate struct ip_sf_socklist with __counted_by
  ipv6: Annotate struct ip6_sf_socklist with __counted_by
  net: hns: Annotate struct ppe_common_cb with __counted_by
  net: enetc: Annotate struct enetc_int_vector with __counted_by
  net: hisilicon: Annotate struct rcb_common_cb with __counted_by
  net: mana: Annotate struct mana_rxq with __counted_by
  net: ipa: Annotate struct ipa_power with __counted_by
  net: mana: Annotate struct hwc_dma_buf with __counted_by
  net: openvswitch: Annotate struct dp_meter_instance with __counted_by
  net: enetc: Annotate struct enetc_psfp_gate with __counted_by
  net: openvswitch: Annotate struct dp_meter with __counted_by
  net: tulip: Annotate struct mediatable with __counted_by
  net: sched: Annotate struct tc_pedit with __counted_by

 drivers/net/ethernet/dec/tulip/tulip.h            | 2 +-
 drivers/net/ethernet/freescale/enetc/enetc.h      | 2 +-
 drivers/net/ethernet/freescale/enetc/enetc_qos.c  | 2 +-
 drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.h | 2 +-
 drivers/net/ethernet/hisilicon/hns/hns_dsaf_rcb.h | 2 +-
 drivers/net/ipa/ipa_power.c                       | 2 +-
 include/linux/igmp.h                              | 2 +-
 include/net/if_inet6.h                            | 2 +-
 include/net/ip_fib.h                              | 2 +-
 include/net/mana/hw_channel.h                     | 2 +-
 include/net/mana/mana.h                           | 2 +-
 net/openvswitch/meter.h                           | 4 ++--
 net/sched/act_pedit.c                             | 2 +-
 13 files changed, 14 insertions(+), 14 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2023-10-02 20:29 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-22 17:28 [PATCH 00/14] Batch 1: Annotate structs with __counted_by Kees Cook
2023-09-22 17:28 ` [PATCH 01/14] ipv4: Annotate struct fib_info " Kees Cook
2023-09-23  1:43   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 02/14] ipv4/igmp: Annotate struct ip_sf_socklist " Kees Cook
2023-09-23  1:50   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 03/14] ipv6: Annotate struct ip6_sf_socklist " Kees Cook
2023-09-23  1:51   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 04/14] net: hns: Annotate struct ppe_common_cb " Kees Cook
2023-09-23  1:51   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 05/14] net: enetc: Annotate struct enetc_int_vector " Kees Cook
2023-09-23  1:52   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 06/14] net: hisilicon: Annotate struct rcb_common_cb " Kees Cook
2023-09-23  1:52   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 07/14] net: mana: Annotate struct mana_rxq " Kees Cook
2023-09-23  1:55   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 08/14] net: ipa: Annotate struct ipa_power " Kees Cook
2023-09-23  1:55   ` Gustavo A. R. Silva
2023-09-23 12:09   ` Alex Elder
2023-09-24  2:03     ` Kees Cook
2023-09-22 17:28 ` [PATCH 09/14] net: mana: Annotate struct hwc_dma_buf " Kees Cook
2023-09-23  1:56   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 10/14] net: openvswitch: Annotate struct dp_meter_instance " Kees Cook
2023-09-23  1:56   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 11/14] net: enetc: Annotate struct enetc_psfp_gate " Kees Cook
2023-09-23  1:56   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 12/14] net: openvswitch: Annotate struct dp_meter " Kees Cook
2023-09-23  1:57   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 13/14] net: tulip: Annotate struct mediatable " Kees Cook
2023-09-23  1:57   ` Gustavo A. R. Silva
2023-09-22 17:28 ` [PATCH 14/14] net: sched: Annotate struct tc_pedit " Kees Cook
2023-09-22 18:18   ` Kees Cook
2023-09-22 18:23   ` Kees Cook
2023-09-23  2:06   ` Gustavo A. R. Silva
2023-09-27 15:57 ` [PATCH 00/14] Batch 1: Annotate structs " Kees Cook
2023-10-02 18:26   ` Jakub Kicinski
2023-10-02 20:29     ` Kees Cook
2023-10-02 18:40 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).