LINUX.ORG.RU

remove kernel options

 , , , ,


0

1

Есть опции, которые хочется убрать. Как пример - CONFIG_RELOCATABLE
Ест 10% ядра и мне не нужна. Можно убрать руками, можно через scripts/config -d CONFIG_RELOCATABLE, но при make запускается сценарий auto.conf.cmd, который возвращает опцию на место.
Если пользоваться make menuconfig - то опция захардкожена.

Помогите разобраться в вопросе. @Spoofing, @Kroz, @X512, @Pinkbyte приглашаются в тему…


Ну так посмотри, кто ее «захардкодил». Сто лет уже не открывал menuconfig, но вроде было что-то на тему «selected by...».

YAR ★★★★★ ()
Ответ на: комментарий от YAR

да я её убираю, но при сборке вызывается скрипт auto.conf.cmd. После него все depends возвращаются. убрать опций 5 нельзя, а хочется

Oldboy ()
Ответ на: комментарий от Oldboy

Selected by [y]:

> - EFI_STUB [=y] && EFI [=y] && (y || X86_32 [=n])

Если выключить EFI_STUB в том же меню - все прекрасно выключается. Или ты о чем-то другом и даже после этого оно как-то включается обратно?

YAR ★★★★★ ()
Последнее исправление: YAR (всего исправлений: 1)
Ответ на: комментарий от YAR

scripts/config тупо sed'ом делает ее выключенной. Естественно, что для нормальной сборки ядра если опцию требует какая-то другая подсистема, то скрипты включат ее обратно.

YAR ★★★★★ ()
Ответ на: комментарий от YAR

Так в том и дело, что отрабатывает скипт автоматизации, на кой мне горячая смена ядер? На десктопе? берёт 10%, или DEBUG_KERNEL? Я не буду дебажить, я им пользуюсь. Куда копать, если опция типа на самом верху? Как посмотреть зависимости? Ну не первый раз собираю я ядро, а этого не знаю (ввела вроде Шапка, Kexec).

Oldboy ()
Последнее исправление: Oldboy (всего исправлений: 1)
Ответ на: комментарий от Oldboy

Как посмотреть зависимости?

Поиск - слеш нажми, там введи название опции. Либо "?" на самой опции.

YAR ★★★★★ ()
Ответ на: комментарий от YAR

ты не понял, при начале сборки отрабатывает скрипт auto.conf.cmd, заменяя мои настройки на дефолт. Те, которые «вшиты». Скрипт меняет .config

Makefile

# Read in dependencies to all Kconfig* files, make sure to run syncconfig if
# changes are detected. This should be included after arch/$(SRCARCH)/Makefile
# because some architectures define CROSS_COMPILE there.
include include/config/auto.conf.cmd
Oldboy ()
Последнее исправление: Oldboy (всего исправлений: 2)

Возможно CONFIG_RELOCATABLE нужен для EFISTUB потому что EFI загружает загрузчик по произвольному неопределённому адресу.

X512 ★★★★ ()
Ответ на: комментарий от X512

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

Oldboy ()
Ответ на: комментарий от YAR

Если выключить EFI_STUB в том же меню - все прекрасно выключается. Или ты о чем-то другом и даже после этого оно как-то включается обратно?

Спасибо. Вот только я без bootloader живу. Напрямую стартует, мне не нужны grub, lilo etc.

Oldboy ()
Ответ на: комментарий от X512

EFISTUB пользуюсь. Непонятно. Depends… А как посмотреть дерево зависимочстей в ядре?

Oldboy ()
Ответ на: комментарий от Oldboy

Тогда нельзя выключить опцию relocatable, потому что без неё сломается процесс загрузки, так как efi требует особый формат файла ядра, который можно грузить по произвольному адресу.

Тут или-или. Либо настраивать загрузчик (который сможет грузить ядро по жёсткому адресу), либо +10% ядра.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.