Re: [PATCH 05/14] KDB: add more exports for supporting KDB modules

Eric W. Biederman
2013-03-12T20:09:57Z

Mike Travis <travis@sgi.com> writes:

> This patch adds some important KDB functions to be externally
> usable by loadable KDB modules. Note that often drivers bring
> in KDB modules for debugging, and in the past KDB has not been
> limited to use by GPL only modules. This patch restores KDB
> usefullness to non-GPL modules.

It is not ok to change EXPORT_SYMBOL_GPL to EXPORT_SYMBOL.

The symbols you are changing to EXPORT_SYMBOL from EXPORT_SYMBOL_GPL you
should not even be messing with if your source code is not in the main
kernel tree.

This patch is totally not ok.

I don't know what past you are referring to but you are changing symbols
that have never been exported as anything other than EXPORT_SYMBOL_GPL
to EXPORT_SYMBOL. The past I remember is the past where kdb was not in
the kernel tree at all.

Please go back to the drawing board and come back with a solution where
you are working with the community instead of trying asking the rest of
us to support something you won't share.

Nacked-by: "Eric W. Biederman" <ebiederm@xmission.com>

> --- linux.orig/kernel/signal.c
> +++ linux/kernel/signal.c
> @@ -1419,7 +1419,7 @@ out_unlock:
> rcu_read_unlock();
> return ret;
> }
> -EXPORT_SYMBOL_GPL(kill_pid_info_as_cred);
> +EXPORT_SYMBOL(kill_pid_info_as_cred);
>
> /*
> * kill_something_info() interprets pid in interesting ways just like kill(2).
> @@ -2491,7 +2491,7 @@ out:
> }
>
> EXPORT_SYMBOL(recalc_sigpending);
> -EXPORT_SYMBOL_GPL(dequeue_signal);
> +EXPORT_SYMBOL(dequeue_signal);
> EXPORT_SYMBOL(flush_signals);
> EXPORT_SYMBOL(force_sig);
> EXPORT_SYMBOL(send_sig);
> @@ -3661,4 +3661,5 @@ kdb_send_sig_info(struct task_struct *t,
> else
> kdb_printf("Signal %d is sent to process %d.\n", sig, t->pid);
> }
> +EXPORT_SYMBOL(kdb_send_sig_info);
> #endif /* CONFIG_KGDB_KDB */