The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Как задать новую опцию сборки ядра Linux"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (C/C++)
Изначальное сообщение [ Отслеживать ]

"Как задать новую опцию сборки ядра Linux"  +/
Сообщение от tux2002 email(ok) on 01-Апр-13, 18:23 
Здравствуйте.
Я оредактировал файлик /usr/src/linux-2.6.37.6/fs/Kconfig и добавил опцию:

config FS_TEST_OPTION
        bool "Test option"
        default n
        help
             Test option

Включил её в make menuconfig
Ожидаю в тексте #ifdef CONFIG_FS_TEST_OPTION... #endif
Но переменная не включилась.
Что я не доделал?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Как задать новую опцию сборки ядра Linux"  +/
Сообщение от Спокойный аноним on 01-Апр-13, 19:54 
> Что я не доделал?

забыл добавить в Makefile
obj-$(CONFIG_FS_TEST) += test/

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Как задать новую опцию сборки ядра Linux"  +/
Сообщение от tux2002 email(ok) on 01-Апр-13, 21:33 
>> Что я не доделал?
> забыл добавить в Makefile
> obj-$(CONFIG_FS_TEST) += test/

Спасибо, но мне не нужно собирать в подкаталоге test. Мне нужно чтобы была определена переменная препроцессора CONFIG_FS_TEST_OPTION в уже существующих файлах fs/*.c

Ну вот в /usr/src/linux/include/linux/fs.h


#ifdef CONFIG_FSNOTIFY
        __u32                   i_fsnotify_mask; /* all events this inode cares about */
        struct hlist_head       i_fsnotify_marks;
#endif


CONFIG_FSNOTIFY это именно переменная выставляемая опцией сборки ядра FSNOTIFY.

Мне надо тожесамое с моей опцией.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Как задать новую опцию сборки ядра Linux"  +/
Сообщение от pavlinux (ok) on 02-Апр-13, 00:45 
>[оверквотинг удален]
> #ifdef CONFIG_FSNOTIFY
>         __u32    
>            
>     i_fsnotify_mask; /* all events this inode cares
> about */
>         struct hlist_head  
>     i_fsnotify_marks;
> #endif
> CONFIG_FSNOTIFY это именно переменная выставляемая опцией сборки ядра FSNOTIFY.
> Мне надо тожесамое с моей опцией.

--- a/fs/ioctl.c     2013-03-27 06:41:26.000000000 +0400
+++ b/fs/ioctl.c 2013-04-02 00:39:19.691000000 +0400
@@ -21,6 +21,10 @@
/* So that the fiemap access checks can't overflow on 32 bit machines. */
#define FIEMAP_MAX_EXTENTS     (UINT_MAX / sizeof(struct fiemap_extent))

+#ifdef CONFIG_FS_TEST_OPTION
+    #error "CONFIG_FS_TEST_OPTION"
+#endif
+
/**
  * vfs_ioctl - call filesystem specific ioctl methods
  * @filp:      open file to invoke ioctl method on
--- a/fs/Kconfig     2013-03-27 06:41:26.000000000 +0400
+++ b/fs/Kconfig 2013-04-02 00:37:16.088000000 +0400
@@ -4,6 +4,12 @@

menu "File systems"

+config FS_TEST_OPTION
+       bool "Test option"
+       default n
+       help
+         Test option
+
if BLOCK

# make mrproper;
# make oldconfig;
# make menuconfig /* если нужно */

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру