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

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

    <bug>
          <bug_id>47061</bug_id>
          
          <creation_ts>2023-07-28 14:32:34 +0300</creation_ts>
          <short_desc>модуль ядра bbswitch не компилируется на современных ядрах 5.x</short_desc>
          <delta_ts>2023-08-01 11:51:56 +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>kernel-source-bbswitch</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=47060</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolay Strelkov">n.strelkov</reporter>
          <assigned_to name="Yuri N. Sedunov">aris</assigned_to>
          <cc>aris</cc>
    
    <cc>boyarsh</cc>
    
    <cc>glebfm</cc>
    
    <cc>kernelbot</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>rider</cc>
    
    <cc>sbolshakov</cc>
    
    <cc>shrek</cc>
    
    <cc>sin</cc>
    
    <cc>vitty</cc>
    
    <cc>vsu</cc>
    
    <cc>vt</cc>
    
    <cc>zagagyka</cc>
    
    <cc>zerg</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>230544</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolay Strelkov">n.strelkov</who>
    <bug_when>2023-07-28 14:32:34 +0300</bug_when>
    <thetext>Шаги для повторения:
1. Иметь утсановленную систему p10, полностью обновить все пакеты и ядро std-def

   apt-get update
   apt-get dist-upgrade
   update-kernel -a -f -y -t std-def

2. Установить пакеты 

   apt-get install kernel-source-bbswitch kernel-headers-modules-std-def bumblebee dkms rpm-build dpkg eepm

3. Перезагрузить компьютер
4. Извлечь архив исходного кода bbswitch и попробовать скомпилировать bbswitch

Ожидаемый результат:
* компиляция успешна, возможность использования dkms есть

Реальный результат:
* компиляция завершается ошибкой

```
$ cp /usr/src/kernel/sources/bbswitch-0.8.tar.bz2  /tmp
$ cd /tmp
$ tar -xf bbswitch-0.8.tar.bz2
$ cd bbswitch-0.8
$ make
make -C /lib/modules/5.10.186-std-def-alt1/build M=&quot;$(pwd)&quot; modules
make[1]: Entering directory &apos;/usr/src/linux-5.10.186-std-def-alt1&apos;
  CC [M]  /tmp/bbswitch-0.8/bbswitch.o
/tmp/bbswitch-0.8/bbswitch.c: In function ‘bbswitch_init’:
/tmp/bbswitch-0.8/bbswitch.c:460:18: error: implicit declaration of function ‘proc_create’ [-Werror=implicit-function-declaration]
  460 |     acpi_entry = proc_create(&quot;bbswitch&quot;, 0664, acpi_root_dir, &amp;bbswitch_fops);
      |                  ^~~~~~~~~~~
/tmp/bbswitch-0.8/bbswitch.c:460:16: warning: assignment to ‘struct proc_dir_entry *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  460 |     acpi_entry = proc_create(&quot;bbswitch&quot;, 0664, acpi_root_dir, &amp;bbswitch_fops);
      |                ^
/tmp/bbswitch-0.8/bbswitch.c: In function ‘bbswitch_exit’:
/tmp/bbswitch-0.8/bbswitch.c:490:5: error: implicit declaration of function ‘remove_proc_entry’ [-Werror=implicit-function-declaration]
  490 |     remove_proc_entry(&quot;bbswitch&quot;, acpi_root_dir);
      |     ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:286: /tmp/bbswitch-0.8/bbswitch.o] Error 1
make[1]: *** [Makefile:1832: /tmp/bbswitch-0.8] Error 2
make[1]: Leaving directory &apos;/usr/src/linux-5.10.186-std-def-alt1&apos;
make: *** [Makefile:13: default] Error 2

```

Дополнительная информация:
* баг-репорт создан из-за ветки форума https://forum.altlinux.org/index.php?topic=47736.0 , где пользователь столкнулся с проблемами использования Bumblebee в p10
* при использовании bbswitch из Debian (https://packages.debian.org/bookworm/bbswitch-dkms) ошибок компиляции нет - см. ниже

```
$ cd /tmp
$ wget http://ftp.debian.org/debian/pool/main/b/bbswitch/bbswitch-dkms_0.8-15_amd64.deb
$ dpkg -x bbswitch-dkms_0.8-15_amd64.deb bbswitch
$ cd bbswitch
$ cd usr/src/bbswitch-0.8/
$ make
make -C /lib/modules/5.10.186-std-def-alt1/build M=/tmp/bbswitch/usr/src/bbswitch-0.8 modules
make[1]: Entering directory &apos;/usr/src/linux-5.10.186-std-def-alt1&apos;
  CC [M]  /tmp/bbswitch/usr/src/bbswitch-0.8/bbswitch.o
  MODPOST /tmp/bbswitch/usr/src/bbswitch-0.8/Module.symvers
  CC [M]  /tmp/bbswitch/usr/src/bbswitch-0.8/bbswitch.mod.o
  LD [M]  /tmp/bbswitch/usr/src/bbswitch-0.8/bbswitch.ko
make[1]: Leaving directory &apos;/usr/src/linux-5.10.186-std-def-alt1&apos;
``` 

похоже, что в Debian наложены патчи для обеспечения сборки на современных версиях ядра. Примените их, пожалуйста, в ALT.

Насколько я понимаю, исправление этого бага позволит исправить баг https://bugzilla.altlinux.org/47060 и дать пользователям возможность полноценно пользоваться вариантом Nvidia Optimus старой реализации, требующей Bumblebee.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230635</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2023-07-31 16:48:02 +0300</bug_when>
    <thetext>(Ответ для Nikolay Strelkov на комментарий #0)
&gt; Насколько я понимаю, исправление этого бага позволит исправить баг
&gt; https://bugzilla.altlinux.org/47060
Нет. Там всё в порядке.

&gt; и дать пользователям возможность
&gt; полноценно пользоваться вариантом Nvidia Optimus старой реализации,
&gt; требующей Bumblebee.
Для bumblebee он не нужен. Он нужен только для полного отключения питания на 3D-контроллере, а bumblebee это умеет по завершении использования. Только для этого может быть полезен.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230639</commentid>
    <comment_count>2</comment_count>
    <who name="Sergey Ivanov">zagagyka</who>
    <bug_when>2023-07-31 17:59:36 +0300</bug_when>
    <thetext>Проверил в p10 и sisyphus, ошибка воспроизводится.

В p9 данная ошибка не воспроизводится. bbswitch успешно собирается
# uname -r 
5.4.250-std-def-alt1
# rpm -q gcc
gcc-8-alt2.x86_64</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230645</commentid>
    <comment_count>3</comment_count>
    <who name="Vitaly Chikunov">vt</who>
    <bug_when>2023-07-31 19:21:15 +0300</bug_when>
    <thetext>Отдел тестирования, пожалуйста не подтверждайте баги со сборкой чего либо из пакетов kernel-source-. Уже не в первый раз такое происходит.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230647</commentid>
    <comment_count>4</comment_count>
    <who name="Nikolay Strelkov">n.strelkov</who>
    <bug_when>2023-07-31 19:42:07 +0300</bug_when>
    <thetext>Я потратил время на анализ пакетов bbswitch у Debian и в ALT. 
Сейчас такими закрытиями багов вы отбиваете всяческую охоту помогать людям использовать ALT, который реально по инфраструктуре лучший в РФ.
Пакет с DKMS из дебиановских исходников в Альте собирается. Может быть отделу тестирования этот вариант поближе рассмотреть?

По промежуточному итогу оба сообщения об ошибках - bug 47061 и bug 47060 закрыты без полезного для конечного пользователя результата. Ну и на форуме в ветке https://forum.altlinux.org/index.php?topic=47736.0 топикстартер оказался &quot;послан&quot; использовать другие системы. Не очень дружелюбно.

А главное я не понял - Bumblebee то сможет все-таки в ALT Linux работать или нет?
Как тогда правильно оформить сообщение об ошибке по этой проблеме чтобы стал работать вариант реализации Nvidia Optimus - Legacy? 
Работающие устройства у пользователей все еще есть. Вы им реально Debian предлагаете использовать? Или может сразу closed-source астру (фактически ваших прямых конкурентов)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230649</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2023-07-31 19:48:59 +0300</bug_when>
    <thetext>Поскольку в Сизифе из этого пакета не собрано никаких модулей ядра, вешать баги о том, что они не собираются, не имеет смысла.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230688</commentid>
    <comment_count>6</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2023-08-01 11:51:56 +0300</bug_when>
    <thetext>(Ответ для Nikolay Strelkov на комментарий #4)
&gt; Я потратил время на анализ пакетов bbswitch
Только не связывайте сильно bbswitch и bumblebee. Их можно рассматривать совершенно отдельно.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>