Re: [PATCH v2 04/13] uprobes: allow arch-specific initialization

From: Oleg Nesterov
Date: Sat Oct 19 2013 - 12:49:55 EST


On 10/15, David Long wrote:
>
> Add a weak function for any architecture-specific initialization. ARM
> will use this to register the handlers for the undefined instructions it
> uses to implement uprobes.

Could you explain why ARM can't simply do the necessary initialization in
arch/arm/kernel/uprobes-arm.c ?


> +int __weak __init arch_uprobes_init(void)
> +{
> + return 0;
> +}
> +
> static int __init init_uprobes(void)
> {
> + int ret;
> int i;
>
> for (i = 0; i < UPROBES_HASH_SZ; i++)
> @@ -1870,6 +1876,10 @@ static int __init init_uprobes(void)
> if (percpu_init_rwsem(&dup_mmap_sem))
> return -ENOMEM;
>
> + ret = arch_uprobes_init();
> + if (ret)
> + return ret;
> +
> return register_die_notifier(&uprobe_exception_nb);
> }
> module_init(init_uprobes);

IOW, why do we need to call arch_uprobes_init() from init_uprobes().

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/