On Tue, 31 Jan 2017 17:00:43 -0500
Jason Baron <[email protected]> wrote:
> --- a/kernel/jump_label.c
> +++ b/kernel/jump_label.c
> @@ -236,12 +236,27 @@ void __weak __init_or_module
> arch_jump_label_transform_static(struct jump_entry
>
> static inline struct jump_entry *static_key_entries(struct static_key *key)
> {
> - return (struct jump_entry *)((unsigned long)key->entries &
> ~JUMP_TYPE_MASK);
I wonder if we should add:
WARN_ON_ONCE(key->type & JUMP_TYPE_LINKED);
> + return (struct jump_entry *)(key->type & ~JUMP_TYPE_MASK);
> }
>
[...]
>
> +static inline struct static_key_mod *static_key_mod(struct static_key *key)
> +{
WARN_ON_ONCE(!(key->type & JUMP_TYPE_LINKED));
> + return (struct static_key_mod *)(key->type & ~JUMP_TYPE_MASK);
> +}
> +
-- Steve