Как опционально использовать экспортированные символы, только если они присутствуют в модифицированном модуле ядра Linux?

Я модифицирую ядро ​​Linux, чтобы добавить некоторые функции виртуальному серверу Linux (LVS ).

Я разработал модуль (, который назвал net/netfilter/ipvs/ip_vs_utils.c). с некоторыми функциями, которые будут использоваться при балансировке нагрузки -. Все функции здесь экспортируются с помощью EXPORT_SYMBOL().

Этот модуль логически не загружается все время.Мое намерение состоит в том, чтобы позволить пользователю решить, хочет ли он использовать эту дополнительную функциональность или нет (, загружая или выгружая модуль ).

Мой вопрос заключается в том, как я могу вызывать эти функции ДОПОЛНИТЕЛЬНО (в зависимости от того, работает ли модуль или нет )из существующего (и, конечно же, модифицированного )модуля(net/netfilter/ipvs/ip_vs_core.c). Что-то вроде этого:

if(ip_vs_utils_IsLoaded)
{
  function1(arg1, arg2, arg3); // being function1 defined on ip_vs_utils.c
}
5
задан Ciro Santilli 新疆改造中心法轮功六四事件 18 June 2017 в 11:02
поделиться