August 28th, 2011

404

make deb-pkg TAI make-kpkg

Кстати, чисто для сравнения: make deb-pkg (при выставленном в среде окружения MOD_INSTALL_STRIP) даёт пакет, который при установке правильно принуждает update-initrd к созданию initrd, а make-kpkg этого не делает и приходится ручками принуждать сначала его к созданию initrd, а потом уже update-grub.

Так что я пока что больше за цель в Makefile'е ядра. Раньше оно было странное, а сейчас вполне поправили до приличного состояния.

PS Всё-таки с третьим ядром что-то не так. И 3.1rc3, и 3.0.2 (штвтное бубунтовское из тестинга) дают power usage в 14-16Вт по сравнению с 6-7 у 2.6.38 (штатное бубунтовское). Сейчас я собиру своё 2.6.38 (для сравнения) - если там будут те же 6-7Вт, значит, будем развлекаться бисектом.

Если же рукосборное 2.6.38 даст разницу, значит, дело в каких-то патчах бубунты.

В любом случае, меня этот вопрос заинтересовал.
404

lowlevel

Каждый раз, когда я обнаруживаю какую-нибудь лоулевельную штуку, меня прёт. Сейчас разбираюсь с MSR и msr-tools. Насколько я понимаю, именно через MSR cpupowerd регулирует вольтаж процессора. Мой процессор он не понимает, так что придётся разбираться с этим руками.

Пока вожусь с rdmsr. После того, как я всё это прочитаю, придёт время для разбирательства, что бы это всё значило...
lonley boy

MSR

Для начала найдём все регистры, которые можно читать (не известно, совпадают ли регистры "для чтения" с регистрами "для записи"):

# (for a in `seq 0 65536`;do r=`rdmsr -x $a`; if [ $r- != - ]; then echo $a, $r;fi;done) 2>/dev/null

У меня оно показало пачку значений (267 шт), старшее - 1833, среди них ненулевых - 134 шт. Судя по возвращаемым значениям: (напр., 1154, fff9fffe0401e172) - регистры 64-битные.

Среди них (при выводе в RAW) ни одного текстового значения.

Вывод меняется даже для одного процессора от разу к разу. Видимо, нужно искать документацию к процессору.
404

Напряжение процессора (core2, i3-7 и т.д.)

# modprobe msr
# apt-get install msr-tools
# echo $(( `rdmsr 408 -p 3 -f 47:32 -d` * 1000 / 8192 ))
(показывает умноженным на тысячу, флоат в шелле не любят).

Источник значений регистров: http://www.intel.com/content/dam/doc/manual/64-ia-32-architectures-software-developer-vol-3a-3b-system-programming-manual.pdf


... А вот регулировать его, увы, нельзя, если верить документации.
404

fighting for 5W

Самособранное ванильное 2.6.38-8 даёт 6.2Вт, что похоже на правду. наверное, если повоевать, то можно будет увидеть и однажды увиденные 6.1Вт, в данном случае это уже не принципиально (напомню историю: на 3.0/3.1 я получаю загрузку в 14-17Вт на простаивающей машине).

Следующее на очереди - ванильное 2.6.39, после чего можно будет и


ЗЫ Внезапно оно свалилось до 6.0Вт (13.5 часов). Новый рекорд, однако.

ЗЗЫ Внешняя оптическая USB-мышь ноутбуку стоит примерно 100 мВт. Речь про бездействие, двигающаяся мышка отъедает почти ватт потребляемой мощности.
404

fighting for 5w

Ага, самособранное 2.6.39 выдало 6.1 Вт, так что проблема начинается в районе 3.0.

Сейчас будет очень нудный bisect по коммитам между 2.6.39 и 3.0... Мдя.
404

О романтике

Я слишком много раз смотрел на Рицко в потрохах у Маги, чтобы не ощущать романтики в сидении с ноутбуком в серверной возле сервера, потому что это-нельзя-сделать-удалённо.

Последнее, когда я так сидел - это отладка скрипта для ifplugd.

Мне начальник говорит мол, "он уже перерос такое", а я нет.

Чьёрт, это всё-таки здорово - сидеть рядом с сервером в серверной с дебаг-консолью на экране и ждать начала операции по зачистке Нерва.
404

/var/log на tmpfs

Вполне очевидно, что у хочется иметь /var/log на tmpfs, потому что зачем мне архив логов за N лет на ноутбуке? Если там что-то сломалось, я буду чинить "здесь и сейчас", а выяснять, что там неделю назад было - не интересно совсем. А вот существенное снижение дисковой активности - это да.

Кстати, о ней. Поскольку мы плотно следим за типами нагрузки в облаке, я могу сказать, что средней руки линукс непрерывно срёт в логи (1-3 дисковые операции в секунду). Это и dd bs=1 из /dev/kmesg в /var/log/dmesg, и постоянные messages, и т.д. и т.п. На сервере это понятно, имитация keepalive от машины, но нафига это на десктопе?

так вот, решение в лоб (tmpfs /var/log/ tmpfs defaults 0 0 в /etc/fstab) не прокатило - часть сервисов, кажется, туды начинают писать до mountall. Так что я сделал себе скриптик с S00 в /etc/rcS.d/.

Итог - оно грузится, половины каталогов в /var/log нет, нужно выяснить, будет ли из-за этого кто-то падать. Если не будет, решение отличное. Потому что даже голая загрузка системы - это 580кБ логов. Нафига столько?