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

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

    <bug>
          <bug_id>7085</bug_id>
          
          <creation_ts>2005-06-14 16:50:46 +0400</creation_ts>
          <short_desc>[FR] platform support (device-specific hacks)</short_desc>
          <delta_ts>2012-03-16 13:57:52 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>hotplug</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>6830</dependson>
          <blocked>4910</blocked>
    
    <blocked>5211</blocked>
    
    <blocked>6804</blocked>
    
    <blocked>7079</blocked>
    
    <blocked>7371</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Shigorin">mike</reporter>
          <assigned_to name="Anton Farygin">rider</assigned_to>
          <cc>ab</cc>
    
    <cc>abulava</cc>
    
    <cc>eostapets</cc>
    
    <cc>sbolshakov</cc>
    
    <cc>sr</cc>
    
    <cc>vsu</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>25744</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 16:50:46 +0400</bug_when>
    <thetext>необходимо обеспечить возможность выполнять действия, которые зависят от железки
и дополнительных факторов (первая загрузка после установки, наличие/отсутствие
конфига, etc).  

причина -- проблемы конкретных железок/драйверов, которые требуют специальной
инициализации для нормальной работы.

пример -- #4735.

осмысленно решать вместе с #6830 IMCO.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25746</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 16:52:15 +0400</bug_when>
    <thetext>кстати о platform-detect. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25752</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 17:04:29 +0400</bug_when>
    <thetext>На какой именно стадии нужно запускать скрипты ?

возможны варианты:
1) нашли железку
2) грузим модуль
3) загрузили модуль
4) когда-то потом

и т.д.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25754</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 17:10:33 +0400</bug_when>
    <thetext>в случае #4735 -- после загрузки модулей, в округе восстановления микшера
(собсно это в одной инфраструктуре имеет смысл)

вообще -- подозреваю, что осмысленно хуки по всем точкам расставить (вспоминая
%post и компанию ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25755</commentid>
    <comment_count>4</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 17:15:06 +0400</bug_when>
    <thetext>Каким образом эти хуки определять ? предлагайте идеи.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25759</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 17:43:59 +0400</bug_when>
    <thetext>в смысле определять?  сейчас sound.dev -- то, что цепляется на такой вот хук</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25766</commentid>
    <comment_count>6</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 18:28:30 +0400</bug_when>
    <thetext>так тебе же не только по классу устройств, но и по ID&apos;шникам нужно
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25768</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 18:34:19 +0400</bug_when>
    <thetext>о чём и спич.  поскольку сдаётся, что это проблема более общая, чем snd-emu10k1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25770</commentid>
    <comment_count>8</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 18:38:01 +0400</bug_when>
    <thetext>ну так надо подумать как сделать настройку в зависимость от id устройства.
Но проблема то глубже (vsu@ поправь если я не прав): для многих звуковых плат
сдетектить что же это за зверь можно уже только после загрузки драйвера.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25771</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-14 18:38:50 +0400</bug_when>
    <thetext>ну так не противоречит.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25774</commentid>
    <comment_count>10</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2005-06-14 18:50:10 +0400</bug_when>
    <thetext>(In reply to comment #8)
&gt; Но проблема то глубже (vsu@ поправь если я не прав): для многих звуковых плат
&gt; сдетектить что же это за зверь можно уже только после загрузки драйвера.

Ну так в момент вызова sound.dev драйвер уже загружен; копание глубже, чем PCI
ID, можно засунуть уже в обработчик для этого PCI ID.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25776</commentid>
    <comment_count>11</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 18:58:33 +0400</bug_when>
    <thetext>хорошо, а давайте попробуем расширить обработчик, добавив обработку по модулю ?

Или как ?

или сделать что-то, что будет работать по pciid ?

Я могу добавить такое как и в hwdatabase, так и в файловую систему (например
/etc/devices.d/&lt;скрипт с именем, равным pciid устройства&gt;

Да, а что делать с не PCI устройствами (ISA PNP, USB и т.д.) ?

О.. и тут же еще всплывает одна интересная тема, место которой в отдельной баге:
тестирование серийных портов. 2vsu: там ничего не планируют предпринять в ядре,
что бы /dev/ttyS* стали работать аля /dev/psaux в 2.6 ?

Заморочка тут с тем, что при появлении /dev/ttyS* устройства нужно по хорошему
посмотреть что на нем висит (модем, мышь... и т.д.) и выполнить соответствующие
действия (сделать симлинк нужного вида, запустить serialattach для мышей с
опцией - нужный протокол, и т.д. и т.п.)

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25778</commentid>
    <comment_count>12</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2005-06-14 19:07:59 +0400</bug_when>
    <thetext>(In reply to comment #11)
&gt; Да, а что делать с не PCI устройствами (ISA PNP, USB и т.д.) ?

Если делать в общем виде, то это скорее переползает уже куда-то в сторону HAL...

&gt; при появлении /dev/ttyS* устройства нужно по хорошему
&gt; посмотреть что на нем висит (модем, мышь... и т.д.)

Т.е., предлагается затащить в ядро обработку Serial-PnP?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25779</commentid>
    <comment_count>13</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-14 19:14:08 +0400</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; Да, а что делать с не PCI устройствами (ISA PNP, USB и т.д.) ?
&gt; 
&gt; Если делать в общем виде, то это скорее переползает уже куда-то в сторону HAL...

А в hal ли ?

Давайте составим список действий, которые нужно предпринять при появлении нового
устройства:
1) звук: выставить уровни микшера в зависимости от предыдущего состояния и
устройства
2) модем: сделать симлинк /dev/modem на устройство
3) серийная мышь: запустить serialattach

&gt; 
&gt; &gt; при появлении /dev/ttyS* устройства нужно по хорошему
&gt; &gt; посмотреть что на нем висит (модем, мышь... и т.д.)
&gt; 
&gt; Т.е., предлагается затащить в ядро обработку Serial-PnP?

Нет, зачем ? я могу это прекрасно делать и в userspace. Останется только
сгенерить соответствующее событие для hotplug&apos;а.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25780</commentid>
    <comment_count>14</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2005-06-14 19:28:01 +0400</bug_when>
    <thetext>(In reply to comment #13)
&gt; Нет, зачем ? я могу это прекрасно делать и в userspace. Останется только
&gt; сгенерить соответствующее событие для hotplug&apos;а.

Так оно и сейчас неплохо генерируется:

Jun 14 19:21:43 center4 default.hotplug[8337]: arguments (tty) env
(PHYSDEVPATH=/devices/platform/serial8250 SUBSYSTEM=tty OLDPWD=/
DEVPATH=/class/tty/ttyS0 PATH=/bin:/sbin:/usr/sbin:/usr/bin ACTION=remove
PWD=/etc/hotplug HOME=/ SHLVL=2 PHYSDEVDRIVER=serial8250 DEBUG=yes
PHYSDEVBUS=platform SEQNUM=1424 _=/usr/bin/env)
Jun 14 19:21:44 center4 default.hotplug[8350]: arguments (tty) env
(PHYSDEVPATH=/devices/pnp0/00:07 SUBSYSTEM=tty OLDPWD=/ DEVPATH=/class/tty/ttyS0
PATH=/bin:/sbin:/usr/sbin:/usr/bin ACTION=add PWD=/etc/hotplug HOME=/ SHLVL=2
PHYSDEVDRIVER=serial DEBUG=yes PHYSDEVBUS=pnp SEQNUM=1425 _=/usr/bin/env)

Jun 14 19:21:44 center4 default.hotplug[8357]: arguments (tty) env
(PHYSDEVPATH=/devices/platform/serial8250 SUBSYSTEM=tty OLDPWD=/
DEVPATH=/class/tty/ttyS1 PATH=/bin:/sbin:/usr/sbin:/usr/bin ACTION=remove
PWD=/etc/hotplug HOME=/ SHLVL=2 PHYSDEVDRIVER=serial8250 DEBUG=yes
PHYSDEVBUS=platform SEQNUM=1426 _=/usr/bin/env)
Jun 14 19:21:43 center4 default.hotplug[8364]: arguments (tty) env
(PHYSDEVPATH=/devices/pnp0/00:08 SUBSYSTEM=tty OLDPWD=/ DEVPATH=/class/tty/ttyS1
PATH=/bin:/sbin:/usr/sbin:/usr/bin ACTION=add PWD=/etc/hotplug HOME=/ SHLVL=2
PHYSDEVDRIVER=serial DEBUG=yes PHYSDEVBUS=pnp SEQNUM=1427 _=/usr/bin/env)

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26104</commentid>
    <comment_count>15</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-20 18:29:45 +0400</bug_when>
    <thetext>Это генерится событие о появлении ttyS*, а нужно еще сгенерить событие о
появлении на этих ttyS* других устройств.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26110</commentid>
    <comment_count>16</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2005-06-20 18:34:29 +0400</bug_when>
    <thetext>(In reply to comment #15)
&gt; Это генерится событие о появлении ttyS*, а нужно еще сгенерить событие о
&gt; появлении на этих ttyS* других устройств.

Ну так вот и запускай по этому событию Serial-PnP в userspace - лучше этого там
ничего не сделаешь.  Только глюков не оберёшься от этого PnP...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26118</commentid>
    <comment_count>17</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-20 18:56:58 +0400</bug_when>
    <thetext>О, точно... хорошая идея.
Хей, ппл, кому там нужно было по устройствам чего запускать ? давайте это через
udev делать ?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26284</commentid>
    <comment_count>18</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-23 15:19:11 +0400</bug_when>
    <thetext>погодь, sr@ на той неделе вернётся, продолжим.

PS: Security group сними, чего людей пугать. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26361</commentid>
    <comment_count>19</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-06-24 10:46:45 +0400</bug_when>
    <thetext>так снята уже давно
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27409</commentid>
    <comment_count>20</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-07-19 12:36:56 +0400</bug_when>
    <thetext>новый udev предлагает прекрасные возможности для таких хаков

смотрите /usr/share/doc/udev-*/RELEASE-NOTES
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27434</commentid>
    <comment_count>21</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-07-19 15:25:57 +0400</bug_when>
    <thetext>замечательно :-)

Женя, посмотришь?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29420</commentid>
    <comment_count>22</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-08-30 02:22:33 +0400</bug_when>
    <thetext>closing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29565</commentid>
    <comment_count>23</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-08-30 02:32:34 +0400</bug_when>
    <thetext>closing</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>