Bug 42415 - Предлагает удалить модули ядра
Summary: Предлагает удалить модули ядра
Status: REOPENED
Alias: None
Product: Branch p10
Classification: Unclassified
Component: packagekit (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 normal
Assignee: Ivan Zakharyaschev
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-04-13 10:04 MSK by Alexander Makeenkov
Modified: 2022-10-28 16:05 MSK (History)
6 users (show)

See Also:


Attachments
скриншот (142.39 KB, image/png)
2022-04-13 10:04 MSK, Alexander Makeenkov
no flags Details
Не воспроизводится (3.86 MB, image/jpeg)
2022-04-13 10:53 MSK, Sergey V Turchin
no flags Details
Доугой косяк (3.99 MB, image/jpeg)
2022-04-13 21:15 MSK, Sergey V Turchin
no flags Details
unmet (38.33 KB, image/jpeg)
2022-04-14 09:23 MSK, Alexander Makeenkov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Makeenkov 2022-04-13 10:04:24 MSK
Created attachment 10545 [details]
скриншот

Версия пакета:
plasma5-discover-5.23.5-alt5

При попытке обновления пишет, что будут удалены модули ядра (см. скриншот).

При этом, если обновляться через apt, то ничего не удаляется:

Следующие пакеты будут ОБНОВЛЕНЫ:
  i586-libvdpau.32bit kde5-haruna libnvidia-ml libnvidia-opencl libnvidia-ptxjitcompiler libvdpau nvidia_glx_390.147 nvidia_glx_470.103.01 ocl-nvidia
Следующие пакеты будут ЗАМЕНЕНЫ:
  libnvidia-compiler (by nvidia_glx_470.103.01)
Следующие НОВЫЕ пакеты будут установлены:
  i586-libsysfs.32bit i586-nvidia_glx_390.147.32bit i586-nvidia_glx_470.103.01.32bit i586-nvidia_glx_common.32bit
9 будет обновлено, 4 новых установлено, 1 пакетов будет заменено, 0 пакетов будет удалено и 0 не будет обновлено.
Comment 1 Sergey V Turchin 2022-04-13 10:16:12 MSK
Нт вижу "удалить" и "модули".
Comment 2 Sergey V Turchin 2022-04-13 10:17:47 MSK
Ааа, вижу на картинке. Попробую выяснить.
Comment 3 Sergey V Turchin 2022-04-13 10:53:17 MSK
Created attachment 10546 [details]
Не воспроизводится
Comment 4 Sergey V Turchin 2022-04-13 10:55:02 MSK
Надо понять, как воспроизвести.
Comment 5 Sergey V Turchin 2022-04-13 14:05:58 MSK
Кстати. А они действительно удаляются?
Comment 6 Sergey V Turchin 2022-04-13 17:25:59 MSK
А если
pkcon refresh
pkcon update
, тоже проблема?
Comment 7 Alexander Makeenkov 2022-04-13 17:28:15 MSK
(Ответ для Sergey V Turchin на комментарий #6)
> А если
> pkcon refresh
> pkcon update
> , тоже проблема?

Да:

Следующие пакеты должны выйти из употребления:
 libnvidia-compiler-470.103.01-alt1:p10+295109.300.3.1@1645546672.x86_64        nvidia library
Следующие пакеты должны быть удалены:
 kernel-modules-nvidia-std-def#470.103.01-alt1.330342.1:p10+295939.2500.1.1@1645810995-470.103.01-alt1.330342.1:p10+295939.2500.1.1@1645810995.x86_64   nVidia video card drivers
 kernel-modules-nvidia-std-def#470.103.01-alt1.330348.1:p10+297045.2500.1.1@1648048441-470.103.01-alt1.330348.1:p10+297045.2500.1.1@1648048441.x86_64   nVidia video card drivers
 kernel-modules-nvidia-std-def#470.103.01-alt1.330350.1:p10+298105.2500.1.1@1649444231-470.103.01-alt1.330350.1:p10+298105.2500.1.1@1649444231.x86_64   nVidia video card drivers
 kernel-modules-nvidia-un-def#470.103.01-alt1.331545.1:p10+295937.1400.2.1@1645828412-470.103.01-alt1.331545.1:p10+295937.1400.2.1@1645828412.x86_64    nVidia video card drivers
 kernel-modules-nvidia-un-def#470.103.01-alt1.331551.1:p10+297044.1400.1.1@1648039742-470.103.01-alt1.331551.1:p10+297044.1400.1.1@1648039742.x86_64    nVidia video card drivers
 kernel-modules-nvidia-un-def#470.103.01-alt1.331552.1:p10+297582.1400.1.1@1648745964-470.103.01-alt1.331552.1:p10+297582.1400.1.1@1648745964.x86_64    nVidia video card drivers
 kernel-modules-nvidia-un-def#470.103.01-alt1.331553.1:p10+298104.1400.1.1@1649443444-470.103.01-alt1.331553.1:p10+298104.1400.1.1@1649443444.x86_64    nVidia video card drivers
 nvidia_glx_390.147-390.147-alt217:p10+292696.200.4.1@1642407264.x86_64 Драйверы NVIDIA и библиотеки OpenGL для Х-сервера XOrg
Следующие пакеты должны быть обновлены:
 i586-libvdpau.32bit-1:1.5-alt1:p10+298035.100.2.1@1649771429.i586      VDPAU library
 kde5-haruna-0.7.3-alt4:p10+298303.100.2.1@1649772236.x86_64    Video Player
 libnvidia-ml-470.103.01-alt2:p10+298077.100.2.1@1649771601.x86_64      nvidia library
 libnvidia-opencl-470.103.01-alt2:p10+298077.100.2.1@1649771601.x86_64  nvidia library
Comment 8 Sergey V Turchin 2022-04-13 21:15:20 MSK
Created attachment 10563 [details]
Доугой косяк

У меня другая проблема. Как минимум нужно "пооверить обновления" в Discover.
Comment 9 Alexander Makeenkov 2022-04-14 09:23:47 MSK
Created attachment 10564 [details]
unmet

(Ответ для Sergey V Turchin на комментарий #8)
> У меня другая проблема. Как минимум нужно "пооверить обновления" в Discover.

У нас у одного человека тоже такая ошибка вылезла
Comment 10 Sergey V Turchin 2022-04-14 13:35:50 MSK
Продублирую текстом

[root@ztation ~]# apt-get dist-upgrade
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Подсчет обновлений... Завершено
Следующие пакеты будут ОБНОВЛЕНЫ:
  fwupd i586-libnss.32bit i586-nvidia_glx_390.147.32bit i586-nvidia_glx_470.103.01.32bit libcuda libjcat libnss libnvidia-ml libnvidia-opencl
  libnvidia-ptxjitcompiler libxmlb-common libxmlb2 nvidia_glx_390.147 nvidia_glx_470.103.01 ocl-nvidia
Следующие пакеты будут ЗАМЕНЕНЫ:
  libnvidia-compiler (by nvidia_glx_470.103.01)
15 будет обновлено, 0 новых установлено, 1 пакетов будет заменено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 162MB архивов.
После распаковки потребуется дополнительно 240MB дискового пространства.
Продолжить? [Y/n] ^CПрервано.

[root@ztation ~]# pkcon update
Получение обновлений[=========================]         
Завершено            [=========================]         
Проверка изменений[=========================]         
Завершено            [=========================]         
Неисправимая ошибка: The following packages have unmet dependencies:
  i586-nvidia_glx_390.147.32bit: Depends: nvidia_glx_390.147 (= 390.147-alt218:p10+298077.300.2.1)
[root@ztation ~]# 

Возможно, в packagekit проблема с disttag-зависимостями.
Comment 11 Sergey V Turchin 2022-04-14 15:34:20 MSK
Ещё хорошо бы уметь воспроизводить эту ошибку по необходимости.
Comment 12 Ivan Zakharyaschev 2022-04-18 10:14:35 MSK
Способ воспроизведения (из redmine от Александра) такой вот, как я понял?

На чистой (не обновлённой) системе Workstaion K 10 -- это лиюо beta, либо RC3:

# apt-repo rm all && apt-repo add p10 20220412
# apt-get update && apt-get dist-upgrade -y && update-kernel -f && reboot

# apt-repo rm all && apt-repo add p10 20220413
# pkcon refresh && pkcon update

Т.е. обновляем систему до числа 12 апреля (за день до того, как прошёл таск с nvidia), затем добавляем репозиторий за 13 апреля (день, когда новая версия nvidia прошла в репозиторий) и пытаемся обновиться через packagekit.


Что наблюдаем:

либо (в случае beta):


Неисправимая ошибка: The following packages have unmet dependencies:
  i586-nvidia_glx_390.147.32bit: Depends: nvidia_glx_390.147 (= 390.147-alt218:p10+298077.300.2.1)

При этом apt ошибку не выдаёт.


либо (в случае RC3) удаляются пакеты с модулями; сообщение pkcon update:


Следующие пакеты должны быть удалены:
 kernel-modules-nvidia-un-def#470.103.01-alt1.331545.1:p10+295937.1400.2.1@1645828412-470.103.01-alt1.331545.1:p10+295937.1400.2.1@1645828412.x86_64    nVidia video card drivers
 kernel-modules-nvidia-un-def#470.103.01-alt1.331552.1:p10+297582.1400.1.1@1648745964-470.103.01-alt1.331552.1:p10+297582.1400.1.1@1648745964.x86_64    nVidia video card drivers
 nvidia_glx_390.147-390.147-alt217:p10+292696.200.4.1@1642407264.x86_64 Драйверы NVIDIA и библиотеки OpenGL для Х-сервера XOrg


И то, и другое неправильно, так как ожидается другое поведение, как при apt-get dist-upgrade.
Comment 13 Anton Farygin 2022-04-18 10:15:35 MSK
Да
Comment 14 Ivan Zakharyaschev 2022-04-19 14:43:23 MSK
Понял в целом причину этого. Это сочетание трёх вещей:

1. Неприспособленности packagekit к исполнению действия dist-upgrade в точности так, как решил apt-get dist-upgrade. (Давно в packagekit было действие update-system, делавшее примерно это, но потом ради унификации, наверное, его убрали. И сейчас он повторно просит apt установить каждый отдельный пакет, что может приводить к другим результатам.)

2. Странности apt при обработке Obsoletes (и Conflicts в чуть меньшей степени) на определённую версию, а также Obsoletes на то, что провайдится "виртуально". (rpm этого так не делает)

3. То, что два варианта пакета nvidia_glx провайдят libnvidia-compiler своей версии, и они (или один из них) обсолетят libnvidia-compiler более старой версии.

Если бы одного из этих трёх условий не было, мы бы такое поведение не наблюдали.

Наиболее консервативный фикс сейчас продумываю для начала -- в packagekit (чтобы был ближе к dist-upgrade), и диагностику в apt.

Фикс в apt тоже сделал бы, но он получится менее консервативный с т.зр. его поведения.
Comment 15 Sergey V Turchin 2022-04-19 14:56:18 MSK
(Ответ для Ivan Zakharyaschev на комментарий #14)
> 3. То, что два варианта пакета nvidia_glx провайдят libnvidia-compiler своей
> версии, и они (или один из них) обсолетят libnvidia-compiler более старой
> версии.
Я тогда пока оставлю один провайд/обсолет libnvidia-compiler.
Comment 16 Ivan Zakharyaschev 2022-04-19 16:29:55 MSK
(In reply to Sergey V Turchin from comment #15)
> (Ответ для Ivan Zakharyaschev на комментарий #14)
> > 3. То, что два варианта пакета nvidia_glx провайдят libnvidia-compiler своей
> > версии, и они (или один из них) обсолетят libnvidia-compiler более старой
> > версии.
> Я тогда пока оставлю один провайд/обсолет libnvidia-compiler.

Думаю, если Provides и Obsoletes будут только в одном пакете, то такого не будет происходить.

Тут в тот момент, когда заново packagekit готовит транзакцию и заново просит установить nvidia_glx_470.103.01 , apt удаляет nvidia_glx_390.147 , потому что он провайдит libnvidia-compiler , который обсолетится nvidia_glx_470.103.01 .
Comment 17 Sergey V Turchin 2022-04-19 16:36:05 MSK
(Ответ для Ivan Zakharyaschev на комментарий #16)
> если Provides и Obsoletes будут только в одном пакете,
> то такого не будет происходить
Я понял. Оставил одного.

> заново просит
> установить nvidia_glx_470.103.01 , apt удаляет nvidia_glx_390.147 , потому
> что он провайдит libnvidia-compiler , который обсолетится
> nvidia_glx_470.103.01 .
Ааа. А я раньше и не догадывался, что виртуальные пакеты удалять можно. Блин!
Comment 18 Sergey V Turchin 2022-05-24 13:39:42 MSK
Есть прогресс?
Comment 19 Ivan Zakharyaschev 2022-10-28 16:05:41 MSK
(In reply to Ivan Zakharyaschev from comment #14)

> 2. Странности apt при обработке Obsoletes (и Conflicts в чуть меньшей
> степени) на определённую версию, а также Obsoletes на то, что провайдится
> "виртуально". (rpm этого так не делает)

Это улучшено в задании 306076 для p10.