aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/intel/igc/igc_ethtool.c
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2024-09-03 10:46:00 -0700
committerPeter Zijlstra <peterz@infradead.org>2024-09-05 16:56:14 +0200
commit04b01625da130c7521b768996cd5e48052198b97 (patch)
treed9f6d4adae5de1747d91f31fc70a9558c19e6127 /drivers/net/ethernet/intel/igc/igc_ethtool.c
parentcc01bd044e6a521d2cd128f685ee8d23ef0067f2 (diff)
perf/uprobe: split uprobe_unregister()
With uprobe_unregister() having grown a synchronize_srcu(), it becomes fairly slow to call. Esp. since both users of this API call it in a loop. Peel off the sync_srcu() and do it once, after the loop. We also need to add uprobe_unregister_sync() into uprobe_register()'s error handling path, as we need to be careful about returning to the caller before we have a guarantee that partially attached consumer won't be called anymore. This is an unlikely slow path and this should be totally fine to be slow in the case of a failed attach. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: "Peter Zijlstra (Intel)" <peterz@infradead.org> Co-developed-by: Andrii Nakryiko <andrii@kernel.org> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Oleg Nesterov <oleg@redhat.com> Link: https://lore.kernel.org/r/20240903174603.3554182-6-andrii@kernel.org
Diffstat (limited to 'drivers/net/ethernet/intel/igc/igc_ethtool.c')
0 files changed, 0 insertions, 0 deletions