Changes since v6: - Rebase onto "netfilter: nf_tables: imbalance in flowtable binding" patch which is in nf-25-01-09 tag but missing in nf-next - Drop patch 7 which removed __nft_unregister_flowtable_net_hooks(): The function is no longer a duplicate of nft_netdev_unregister_hooks() This series makes netdev hooks store the interface name spec they were created for and establishes this stored name as the key identifier. The previous one which is the hook's 'ops.dev' pointer is thereby freed to vanish, so a vanishing netdev no longer has to drag the hook along with it. (Patches 2-4) Furthermore, it aligns behaviour of netdev-family chains with that of flowtables in situations of vanishing interfaces. When previously a chain losing its last interface was torn down and deleted, it may now remain in place (albeit with no remaining interfaces). (Patch 5) Patch 6 is a cleanup following patch 5, patch 1 is an independent code simplification. Phil Sutter (6): netfilter: nf_tables: Flowtable hook's pf value never varies netfilter: nf_tables: Store user-defined hook ifname netfilter: nf_tables: Use stored ifname in netdev hook dumps netfilter: nf_tables: Compare netdev hooks based on stored name netfilter: nf_tables: Tolerate chains with no remaining hooks netfilter: nf_tables: Simplify chain netdev notifier include/net/netfilter/nf_tables.h | 4 +- net/netfilter/nf_tables_api.c | 74 ++++++++----------------------- net/netfilter/nft_chain_filter.c | 48 ++++++-------------- 3 files changed, 33 insertions(+), 93 deletions(-) -- 2.47.1