]> git.baikalelectronics.ru Git - kernel.git/commit
jump_label: add arch_jump_label_transform_static() to optimise non-live code updates
authorJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Mon, 3 Oct 2011 18:01:46 +0000 (11:01 -0700)
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Tue, 25 Oct 2011 18:54:31 +0000 (11:54 -0700)
commitf91b6dab2918c9de2454744bd17d96cc48aedc60
tree46fb708a9508e3d718be7eb432367547e71208d3
parent0d30bf86ab9270699fdea7b1301a360d0316e23f
jump_label: add arch_jump_label_transform_static() to optimise non-live code updates

When updating a newly loaded module, the code is definitely not yet
executing on any processor, so it can be updated with no need for any
heavyweight synchronization.

This patch adds arch_jump_label_static() which is implemented as
arch_jump_label_transform() by default, but architectures can override
it if it avoids, say, a call to stop_machine().

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Acked-by: Jason Baron <jbaron@redhat.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
include/linux/jump_label.h
kernel/jump_label.c