public inbox for netfilter-devel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH nft,v2 00/20] prepare for EXPR_SET_ELEM removal
@ 2026-02-05  2:41 Pablo Neira Ayuso
  2026-02-05  2:41 ` [PATCH nft 01/20] src: normalize set element with EXPR_MAPPING Pablo Neira Ayuso
                   ` (20 more replies)
  0 siblings, 21 replies; 22+ messages in thread
From: Pablo Neira Ayuso @ 2026-02-05  2:41 UTC (permalink / raw)
  To: netfilter-devel

Hi,

This is v2 of the update to prepare for the removal of EXPR_SET_ELEM.
This series is slightly larger than v1, including more preparation work.
No functional changes are intended. No memory footprint reduction at
this stage. This slightly increases LoC because of the patches that add
assertions on EXPR_SET_ELEM.

This is passing tests/shell.

Apologies for this large series...

Pablo Neira Ayuso (20):
  src: normalize set element with EXPR_MAPPING
  src: allocate EXPR_SET_ELEM for EXPR_SET in embedded set declaration in sets
  src: assert on EXPR_SET only contains EXPR_SET_ELEM in the expressions list
  evaluate: simplify sets as set elems evaluation
  evaluate: clean up expr_evaluate_set()
  segtree: rename set_elem_add() to set_elem_expr_add()
  src: move flags from EXPR_SET_ELEM to key
  src: remove EXPR_SET_ELEM in range_expr_value_{low,high}()
  src: use key location to prepare removal of EXPR_SET_ELEM
  intervals: remove interval_expr_key()
  src: move __set_expr_add() to src/intervals.c
  segtree: remove EXPR_VALUE from expr_value()
  segtree: more assert on EXPR_SET_ELEM
  segtree: remove dead code in set_expr_add_splice()
  segtree: disentangle concat_range_aggregate()
  segtree: replace default case by specific types in get_set_intervals()
  segtree: consolidate calls to expr_value() to fetch the element key
  segtree: use set->key->byteorder instead of expr->byteorder
  evaluate: remove check for constant expression in set/map statement
  evaluate: skip EXPR_SET_ELEM in error path of set statements

 include/expression.h      |   5 +-
 src/datatype.c            |   1 +
 src/evaluate.c            | 151 +++++++++----------
 src/expression.c          |  58 +++++---
 src/intervals.c           | 300 ++++++++++++++++++++------------------
 src/json.c                |  42 +++++-
 src/mergesort.c           |   8 +-
 src/monitor.c             |   2 +-
 src/netlink.c             | 105 ++++++-------
 src/netlink_delinearize.c |  18 ++-
 src/optimize.c            |  52 ++++---
 src/parser_bison.y        |  12 +-
 src/parser_json.c         |  14 +-
 src/segtree.c             | 230 ++++++++++++++++-------------
 14 files changed, 559 insertions(+), 439 deletions(-)

-- 
2.47.3


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

end of thread, other threads:[~2026-02-05 10:37 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-05  2:41 [PATCH nft,v2 00/20] prepare for EXPR_SET_ELEM removal Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 01/20] src: normalize set element with EXPR_MAPPING Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 02/20] src: allocate EXPR_SET_ELEM for EXPR_SET in embedded set declaration in sets Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 03/20] src: assert on EXPR_SET only contains EXPR_SET_ELEM in the expressions list Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 04/20] evaluate: simplify sets as set elems evaluation Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 05/20] evaluate: clean up expr_evaluate_set() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 06/20] segtree: rename set_elem_add() to set_elem_expr_add() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 07/20] src: move flags from EXPR_SET_ELEM to key Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 08/20] src: remove EXPR_SET_ELEM in range_expr_value_{low,high}() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 09/20] src: use key location to prepare removal of EXPR_SET_ELEM Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 10/20] intervals: remove interval_expr_key() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 11/20] src: move __set_expr_add() to src/intervals.c Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 12/20] segtree: remove EXPR_VALUE from expr_value() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 13/20] segtree: more assert on EXPR_SET_ELEM Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 14/20] segtree: remove dead code in set_expr_add_splice() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 15/20] segtree: disentangle concat_range_aggregate() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 16/20] segtree: replace default case by specific types in get_set_intervals() Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 17/20] segtree: consolidate calls to expr_value() to fetch the element key Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 18/20] segtree: use set->key->byteorder instead of expr->byteorder Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 19/20] evaluate: remove check for constant expression in set/map statement Pablo Neira Ayuso
2026-02-05  2:41 ` [PATCH nft 20/20] evaluate: skip EXPR_SET_ELEM in error path of set statements Pablo Neira Ayuso
2026-02-05 10:37 ` [PATCH nft,v2 00/20] prepare for EXPR_SET_ELEM removal Florian Westphal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox