Commit 17a7eac
Guillaume Nault
vxlan: Add RCU read-side critical sections in the Tx path
JIRA: https://issues.redhat.com/browse/RHEL-115639
Upstream Status: linux.git
commit 804b09b
Author: Ido Schimmel <idosch@nvidia.com>
Date: Tue Apr 15 15:11:29 2025 +0300
vxlan: Add RCU read-side critical sections in the Tx path
The Tx path does not run from an RCU read-side critical section which
makes the current lockless accesses to FDB entries invalid. As far as I
am aware, this has not been a problem in practice, but traces will be
generated once we transition the FDB lookup to rhashtable_lookup().
Add rcu_read_{lock,unlock}() around the handling of FDB entries in the
Tx path. Remove the RCU read-side critical section from vxlan_xmit_nh()
as now the function is always called from an RCU read-side critical
section.
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Link: https://patch.msgid.link/20250415121143.345227-2-idosch@nvidia.com
Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Guillaume Nault <gnault@redhat.com>1 parent b19f127 commit 17a7eac
1 file changed
+8
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1916 | 1916 | | |
1917 | 1917 | | |
1918 | 1918 | | |
| 1919 | + | |
1919 | 1920 | | |
1920 | 1921 | | |
1921 | 1922 | | |
1922 | 1923 | | |
| 1924 | + | |
1923 | 1925 | | |
1924 | 1926 | | |
| 1927 | + | |
1925 | 1928 | | |
1926 | 1929 | | |
1927 | 1930 | | |
| |||
2638 | 2641 | | |
2639 | 2642 | | |
2640 | 2643 | | |
2641 | | - | |
2642 | 2644 | | |
2643 | | - | |
2644 | | - | |
| 2645 | + | |
2645 | 2646 | | |
2646 | | - | |
2647 | 2647 | | |
2648 | | - | |
2649 | 2648 | | |
2650 | 2649 | | |
2651 | 2650 | | |
| |||
2772 | 2771 | | |
2773 | 2772 | | |
2774 | 2773 | | |
| 2774 | + | |
2775 | 2775 | | |
2776 | 2776 | | |
2777 | 2777 | | |
| |||
2794 | 2794 | | |
2795 | 2795 | | |
2796 | 2796 | | |
2797 | | - | |
| 2797 | + | |
2798 | 2798 | | |
2799 | 2799 | | |
2800 | 2800 | | |
| |||
2819 | 2819 | | |
2820 | 2820 | | |
2821 | 2821 | | |
| 2822 | + | |
| 2823 | + | |
2822 | 2824 | | |
2823 | 2825 | | |
2824 | 2826 | | |
| |||
0 commit comments