<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>35390</bug_id>
          
          <creation_ts>2018-09-13 12:00:59 +0300</creation_ts>
          <short_desc>Обновление ядра на Таволге требует ручной доработки</short_desc>
          <delta_ts>2024-11-11 16:58:21 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>bootloader-utils</component>
          <version>unstable</version>
          <rep_platform>mipsel</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jqt4</reporter>
          <assigned_to name="Ivan A. Melnikov">iv</assigned_to>
          <cc>aen</cc>
    
    <cc>at</cc>
    
    <cc>boyarsh</cc>
    
    <cc>evg</cc>
    
    <cc>glebfm</cc>
    
    <cc>iv</cc>
    
    <cc>klark.devel</cc>
    
    <cc>klark</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>placeholder</cc>
    
    <cc>rider</cc>
    
    <cc>sem</cc>
    
    <cc>sin</cc>
    
    <cc>slazav</cc>
    
    <cc>vitty</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>174081</commentid>
    <comment_count>0</comment_count>
    <who name="">jqt4</who>
    <bug_when>2018-09-13 12:00:59 +0300</bug_when>
    <thetext>Задача: обновить ядро на Таволге с mitx-def-3.19.12 на mitx-un-4.9.72 как описано в https://www.altlinux.org/%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B4%D1%80%D0%B0
Процедура: 
apt-get install update-kernel
update-kernel -t mitx-un
Running kernel version: kernel-image-mitx-def-3.19.12-alt2
...
Try to install new kernel kernel-image-mitx-un-4.9.72-alt3 and update its modules [y]/n?...
После завершения получается следующая конфигурация:
cat bootconf 
default: bootconf0
bootconf0 vmlinuz 0x80004000 0x80004000 tplatforms_mitx2.dtb initrd.img ...
[root@localhost boot]# ls -l
�и�т�о�г�о 30688
drwxr-xr-x 2 root root   16384 �с�е�н 13 10:47 bkup
-rw-r--r-- 1 root root     322 �с�е�н 12 17:06 bootconf
-rw-r--r-- 1 root root  105773 �а�в�г  9 18:44 config-3.19.12-mitx-def-alt2
-rw-r--r-- 1 root root  115906 �и�ю�л 10 01:55 config-4.9.72-mitx-un-alt3
lrwxrwxrwx 1 root root      35 �с�е�н 13 10:53 dtb -&gt; /lib/devicetree/4.9.72-mitx-un-alt3
-rw------- 1 root root 4665892 �с�е�н 12 15:03 initrd-3.19.12-mitx-def-alt2.img
-rw------- 1 root root 4683382 �с�е�н 13 10:53 initrd-4.9.72-mitx-un-alt3.img
lrwxrwxrwx 1 root root      30 �с�е�н 13 10:53 initrd.img -&gt; initrd-4.9.72-mitx-un-alt3.img
lrwxrwxrwx 1 root root      30 �с�е�н 13 10:53 initrd-mitx-un.img -&gt; initrd-4.9.72-mitx-un-alt3.img
drwx------ 2 root root   32768 �с�е�н 12 17:03 lost+found
-rw-r--r-- 1 root root 1810249 �а�в�г  9 18:44 System.map-3.19.12-mitx-def-alt2
-rw-r--r-- 1 root root 2004877 �и�ю�л 10 01:55 System.map-4.9.72-mitx-un-alt3
-rw-r--r-- 1 root root   13410 �с�е�н 12 15:01 tplatforms_mitx2-3.19.12-mitx-def-alt2.dtb
lrwxrwxrwx 1 root root      42 �с�е�н 12 15:01 tplatforms_mitx2.dtb -&gt; tplatforms_mitx2-3.19.12-mitx-def-alt2.dtb
lrwxrwxrwx 1 root root      27 �с�е�н 13 10:53 vmlinuz -&gt; vmlinuz-4.9.72-mitx-un-alt3
-rw-r--r-- 1 root root 8477184 �а�в�г  9 18:44 vmlinuz-3.19.12-mitx-def-alt2
-rw-r--r-- 1 root root 9413200 �и�ю�л 10 01:55 vmlinuz-4.9.72-mitx-un-alt3
lrwxrwxrwx 1 root root      27 �с�е�н 13 10:53 vmlinuz-mitx-un -&gt; vmlinuz-4.9.72-mitx-un-alt3
То есть будет грузиться новое ядро и initrd:
vmlinuz -&gt; vmlinuz-4.9.72-mitx-un-alt3
initrd.img -&gt; initrd-4.9.72-mitx-un-alt3.img
но старый dtb:
tplatforms_mitx2.dtb -&gt; tplatforms_mitx2-3.19.12-mitx-def-alt2.dtb
хотя ссылка на новый имеется:
dtb -&gt; /lib/devicetree/4.9.72-mitx-un-alt3

Эта конфигурация не работает -  при загрузке виснет с надписью:
Starting kernel ...

Далее описано, как я приводил конфигурацию в рабочее состояние.
Заменю dtb на новый.
Отредактировал
cat /mnt/bootconf 
default: bootconf0
bootconf0 vmlinuz 0x80004000 0x80004000 dtb initrd.img ...
После перезагрузки не найден dtb:
Loading FDT: dtb
** File not found dtb **

Перезагрузил. Зашел в recovery.

mkdir /tmp/sdb1
mkdir /tmp/sdb6
mount /dev/sdb1 /tmp/sdb1
mount /dev/sdb6 /tmp/sdb6
cp /tmp/sdb6/lib/devicetree/4.9.72-mitx-un-alt3 /tmp/sdb1
cp: omitting directory &apos;/tmp/sdb6/lib/devicetree/4.9.72-mitx-un-alt3&apos;
ls -l /tmp/sdb6/lib/devicetree/4.9.72-mitx-un-alt3
total 16
-rw-r--r--    1 root     root         13163 Jul  9 21:55 baikal_mitx.dtb

Ссылка dtb указывает на каталог

cp /tmp/sdb6/lib/devicetree/4.9.72-mitx-un-alt3/baikal_mitx.dtb /tmp/sdb1
rm /tmp/sdb1/dtb
ln -s baikal_mitx.dtb /tmp/sdb1/dtb
reboot

Повисла с надписью:
Starting kernel ...

Перезагрузил. Зашел в recovery.

head /mnt/System.map-4.9.72-mitx-un-alt3                                                                                                                                                 
80100000 T _text
...
~ # head /mnt/System.map-3.19.12-mitx-def-alt2 
80004000 T _text
...
Этот адрес должен быть прописан в bootconf.
Отредактировал:
cat /mnt/bootconf 
default: bootconf0
bootconf0 vmlinuz 0x80100000 0x80100000 dtb initrd.img ...

После этого Таволгу удалось загрузить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175162</commentid>
    <comment_count>1</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-10-19 15:39:30 +0300</bug_when>
    <thetext>Наверное, это не скрипт update-kernel должен делать, а postinst скрипт ядра ?
Например, есть такой скрипт:
/usr/lib/rpm/boot_kernel.filetrigger

посмотрите что он делает и напишите такой же для arm

Ещё есть такая команда как installkernel. Она вызывается из триггера для обновления загрузчика.

Ещё тоже требуется адаптировать под Таволгу.

А update-kernel просто запускает apt..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175163</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-10-19 15:40:28 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; посмотрите что он делает и напишите такой же для arm

Не для arm. Для таволги, конечно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175164</commentid>
    <comment_count>3</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-10-19 15:41:18 +0300</bug_when>
    <thetext>installkernel это пакет bootloader-utils</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175165</commentid>
    <comment_count>4</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2018-10-19 15:45:21 +0300</bug_when>
    <thetext>(In reply to comment #1)
&gt; Ещё есть такая команда как installkernel. Она вызывается из триггера для
&gt; обновления загрузчика.

Да, понятно, что править нужно installkernel, update-kernel тут по большому счёту ни при чём.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175169</commentid>
    <comment_count>5</comment_count>
    <who name="Leonid Krivoshein">klark.devel</who>
    <bug_when>2018-10-19 17:45:56 +0300</bug_when>
    <thetext>(В ответ на комментарий №0)
&gt; После завершения получается следующая конфигурация:

А процесс сам как выглядит? Там фигурирует что-то типа uimage-*/uinitrd-*?

(В ответ на комментарий №4)
&gt; Да, понятно, что править нужно installkernel, update-kernel тут по большому
&gt; счёту ни при чём.

installkernel нужно передавать ключик -u, если правильно понял. Там уже есть код для всех видов загрузчиков. Кстати, а на Таволге сейчас какой?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175170</commentid>
    <comment_count>6</comment_count>
    <who name="Leonid Krivoshein">klark.devel</who>
    <bug_when>2018-10-19 17:54:53 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Например, есть такой скрипт:
&gt; /usr/lib/rpm/boot_kernel.filetrigger

Видимо перед вызовом update-kernel д.б. экспортированы:

UBOOT_KERNEL_LOAD_ADDRESS=
UBOOT_INITRD_LOAD_ADDRESS=</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175213</commentid>
    <comment_count>7</comment_count>
      <attachid>7825</attachid>
    <who name="">jqt4</who>
    <bug_when>2018-10-22 15:02:42 +0300</bug_when>
    <thetext>Created attachment 7825
Вывод утилиты update-kernel при обновлении ядра Таволги</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175214</commentid>
    <comment_count>8</comment_count>
    <who name="">jqt4</who>
    <bug_when>2018-10-22 15:04:22 +0300</bug_when>
    <thetext>(В ответ на комментарий №5)
&gt; (В ответ на комментарий №0)
&gt; &gt; После завершения получается следующая конфигурация:
&gt; 
&gt; А процесс сам как выглядит? Там фигурирует что-то типа uimage-*/uinitrd-*?
Насколько я понимаю, нет. Все, что выводил update-kernel в приложенном файле
Tavolga-update-kernel.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175357</commentid>
    <comment_count>9</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2018-10-26 18:09:50 +0300</bug_when>
    <thetext>uboot в Таволгах приготовлен несколько необычно, поэтому в первом приближении я решил обрабатывать Таволгу отдельно и добавил немного кода в installkernel: 

http://git.altlinux.org/people/iv/packages/bootloader-utils.git?p=bootloader-utils.git;a=commitdiff;h=4d31db3b5806e5404d6dcb8380fcdf4945b448b0

В целом работает как задумано, но у меня есть ещё пара вопросов к тому, что этот код должен делать на самом деле.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254238</commentid>
    <comment_count>10</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-11-11 16:58:21 +0300</bug_when>
    <thetext>Не занимаемся mipsel.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>7825</attachid>
            <date>2018-10-22 15:02:42 +0300</date>
            <delta_ts>2018-10-22 15:02:42 +0300</delta_ts>
            <desc>Вывод утилиты update-kernel при обновлении ядра Таволги</desc>
            <filename>Tavolga-update-kernel</filename>
            <type>text/plain</type>
            <size>2015</size>
            <attacher>jqt4</attacher>
            
              <data encoding="base64">W3Jvb3RAbG9jYWxob3N0IH5dIyB1cGRhdGUta2VybmVsIC10IG1pdHgtdW4KUnVubmluZyBrZXJu
ZWwgdmVyc2lvbjoga2VybmVsLWltYWdlLW1pdHgtZGVmLTMuMTkuMTItYWx0MgpDaGVja2luZyBm
b3IgYXZhaWxhYmxlIGtlcm5lbCBwYWNrYWdlcy4uLgrQv9Cw0LrQtdGCIGtlcm5lbC1pbWFnZS1t
aXR4LXVuLTQuOS43Mi1hbHQ0INC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0KVHJ5IHRvIGluc3Rh
bGwgbmV3IGtlcm5lbCBrZXJuZWwtaW1hZ2UtbWl0eC11bi00LjkuNzItYWx0NCBhbmQgdXBkYXRl
IGl0cyBtb2R1bGVzIFt5XS9uPyAK0KfRgtC10L3QuNC1INGB0L/QuNGB0LrQvtCyINC/0LDQutC1
0YLQvtCyLi4uINCX0LDQstC10YDRiNC10L3QvgrQn9C+0YHRgtGA0L7QtdC90LjQtSDQtNC10YDQ
tdCy0LAg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5Li4uINCX0LDQstC10YDRiNC10L3QvgrQodC7
0LXQtNGD0Y7RidC40LUg0J3QntCS0KvQlSDQv9Cw0LrQtdGC0Ysg0LHRg9C00YPRgiDRg9GB0YLQ
sNC90L7QstC70LXQvdGLOgogIGtlcm5lbC1pbWFnZS1taXR4LXVuIzQuOS43Mi1hbHQ0CjAg0LHR
g9C00LXRgiDQvtCx0L3QvtCy0LvQtdC90L4sIDEg0L3QvtCy0YvRhSDRg9GB0YLQsNC90L7QstC7
0LXQvdC+LCAwINC/0LDQutC10YLQvtCyINCx0YPQtNC10YIg0YPQtNCw0LvQtdC90L4g0LggNzgg
0L3QtSDQsdGD0LTQtdGCINC+0LHQvdC+0LLQu9C10L3Qvi4K0J3QtdC+0LHRhdC+0LTQuNC80L4g
0L/QvtC70YPRh9C40YLRjCA4MjYza0Ig0LDRgNGF0LjQstC+0LIuCtCf0L7RgdC70LUg0YDQsNGB
0L/QsNC60L7QstC60Lgg0L/QvtGC0YDQtdCx0YPQtdGC0YHRjyDQtNC+0L/QvtC70L3QuNGC0LXQ
u9GM0L3QviAzMywxTUIg0LTQuNGB0LrQvtCy0L7Qs9C+INC/0YDQvtGB0YLRgNCw0L3RgdGC0LLQ
sC4K0J/QvtC70YPRh9C10L3QvjogMSBodHRwOi8vZnRwLmFsdGxpbnV4Lm9yZyBTaXN5cGh1cy9t
aXBzZWwvY2xhc3NpYyBrZXJuZWwtaW1hZ2UtbWl0eC11biM0LjkuNzItYWx0NCA0LjkuNzItYWx0
NCBbODI2M2tCXQrQn9C+0LvRg9GH0LXQvdC+IDgyNjNrQiDQt9CwIDFzICg4MjA3a0IvcykuICAg
ICAgICAgICAgICAgICAgICAgICAgICAK0KHQvtCy0LXRgNGI0LDQtdC8INC40LfQvNC10L3QtdC9
0LjRjy4uLgrQn9C+0LTQs9C+0YLQvtCy0LrQsC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBbMTAwJV0K0J7QsdC90L7QstC70LXQ
vdC40LUgLyDRg9GB0YLQsNC90L7QstC60LAuLi4KMToga2VybmVsLWltYWdlLW1pdHgtdW4tNC45
LjcyLWFsdDQgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBbMTAwJV0KQ29u
ZmlnIGZpbGU6IC9ldGMvaW5pdHJkLm1rCldBUk5JTkc6IFVua25vd24gZmVhdHVyZXMgYXJlIHNw
ZWNpZmllZCBpbiB0aGUgY29uZmlnOiBzeXN0ZW1kCkdlbmVyYXRpbmcgbW9kdWxlIGRlcGVuZGVu
Y2llcyBvbiBob3N0IC4uLgpDcmVhdGluZyBpbml0cmQgaW1hZ2UgLi4uCkFkZGluZyBtb2R1bGVz
IC4uLgpBZGRpbmcgbW9kdWxlcyAocHJlbG9hZCkgLi4uCkFkZGluZyBtb2R1bGUgZGVwZW5kZW5j
aWVzIC4uLgpHZW5lcmF0aW5nIG1vZHVsZSBkZXBlbmRlbmNpZXMgaW4gaW1hZ2UgLi4uCkFkZGlu
ZyBpbml0cmQgc2hlbGwgc3VwcG9ydCAoc2hlbGwgbW9kZSkgLi4uClBhY2tlZCBtb2R1bGVzOiBj
cmMzMmNfZ2VuZXJpYyBleHQ0IGpiZDIgbWJjYWNoZSAKU29ydGluZyBzeXN2aW5pdCBzZXJ2aWNl
cyAuLi4KUGFja2luZyBpbWFnZSB0byBhcmNoaXZlIC4uLgpXcml0aW5nIGJ1aWxkIGluZm8gZmls
ZXMgLi4uCkNvbXByZXNzaW5nIGltYWdlIC4uLgpJbnN0YWxsaW5nIGltYWdlIC4uLgpVbnBhY2tl
ZCBzaXplOiAxOE0KSW1hZ2Ugc2l6ZTogNCw1TQpSZW1vdmluZyB3b3JrIGRpcmVjdG9yeSAuLi4K
CkltYWdlIGlzIHNhdmVkIGFzIC9ib290L2luaXRyZC00LjkuNzItbWl0eC11bi1hbHQ0LmltZwoK
0JfQsNCy0LXRgNGI0LXQvdC+Lgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>