Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отключение/Подключение AP ядер процессора, проблемы со сборкой 
V
    Опции темы
Relkin
Дата 17.6.2010, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 21.12.2006

Репутация: 2
Всего: 2



Необходимо сначала отключить все ядра процессора, кроме загрузочного, после, соответственно, включить.

Подозреваю, что это можно сделать функциями:
Сразу для всех:
Код

int disable_nonboot_cpus(void);
void enable_nonboot_cpus(void);


или же поотдельности:
Код

int cpu_down(unsigned int cpu);
int cpu_up(unsigned int cpu);


Последнии используются при записи 0/1 в /sys/devices/system/cpu/cpu#/online.

Проблема заключается в том, что при попытке скомпилировать следующий тестовый модуль, появляются warning' и, из-за которых я не могу его загрузить в ядро:
Код

#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/cpu.h>

static int __init
init( void )
{
        return disable_nonboot_cpus();
}

static void __exit
uninit( void )
{
        enable_nonboot_cpus();
}

module_init( init );
module_exit( uninit );

MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("TEST");


Код

make -C /lib/modules/2.6.33.5-124.relkin.fc13.x86_64/build M=/home/relkin/modules modules
make[1]: Entering directory `/usr/src/kernels/2.6.33.5-124.relkin.fc13.x86_64'
  CC [M]  /home/relkin/modules/test.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "disable_nonboot_cpus" [/home/relkin/modules/test.ko] undefined!
WARNING: "enable_nonboot_cpus" [/home/relkin/modules/test.ko] undefined!
  CC      /home/relkin/modules/test.mod.o
  LD [M]  /home/relkin/modules/test.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.33.5-124.relkin.fc13.x86_64'


Ядро собрано в нужной конфигурации.
Если использовать отдельно функцию cpu_down, то всё работает, но если в модуле есть cpu_up, то опять появляется warning.
Мне кажется, что дело может быть в объявлениях __cpuinit или __ref, но точно я не знаю, т. к. не знаю зачем они нужны.

P.S.
Проблема решена. Эти функции не экспортируются.

Это сообщение отредактировал(а) Relkin - 17.6.2010, 20:44
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0573 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.