The CVE-2026-72344 patch fixes a kernel crash in mlx5 driver code during device removal, but it treats a symptom rather than the underlying race condition. The vulnerability occurs when mlx5_lag_get_dev_seq() returns an error indicating the peer isn't available or no device is marked as master, yet the calling function mlx5e_tc_del_fdb_peers_flow proceeds to dereference an invalid sequence number anyway, causing a kernel oops.

The crash happens during device teardown: mlx5_uninit_onemlx5_rescan_drivers_lockeddevice_release_driver_internal → down to the peer flow cleanup. This 14-level call stack crossing subsystem boundaries reveals the real problem — the LAG state machine's invariants about when peer flows should be cleaned up are not enforced by locks or reference counts, relying instead on undocumented timing assumptions.

The patch adds a guard to skip peer cleanup when the sequence is unavailable, which prevents the crash. However, this creates a different risk: skipped cleanup may leave orphaned flow entries in hardware tables that reference a PF that no longer exists. In active-active LAG configurations, this could manifest not as a crash but as silent asymmetric traffic patterns, forwarding loops, or packet drops that only appear under specific hash distributions — far harder to diagnose than a kernel panic.

The comment in the original code claiming 'peer flows are cleaned before LAG cleared the master mark' was wishful thinking, not a guarantee. The crash proves that invariant fails under some timing condition during device removal. The fix should prompt an audit of all devcom event handlers that assume this ordering, converting implicit timing assumptions into explicit synchronization primitives. Without that, you're one timing variant away from the next crash or silent state corruption. Monitor for any firmware errors or traffic anomalies on mlx5 LAG deployments that persist after applying this patch — they may indicate the deeper synchronization problem is still manifesting through other symptoms.