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

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

    <bug>
          <bug_id>5211</bug_id>
          
          <creation_ts>2004-09-14 11:21:45 +0400</creation_ts>
          <short_desc>сбой запуска сервиса upsdrv для UPS с интерфейсом USB</short_desc>
          <delta_ts>2012-05-05 23:12:01 +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>nut-driver</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WORKSFORME</resolution>
          
          
          <bug_file_loc>http://lists.alioth.debian.org/pipermail/nut-upsdev/2006-March/000772.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>7085</dependson>
          <blocked>14491</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrei Bulava">abulava</reporter>
          <assigned_to name="yuk@altlinux.org">yuk</assigned_to>
          <cc>alexsid</cc>
    
    <cc>amike</cc>
    
    <cc>eostapets</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>migor</cc>
    
    <cc>mike</cc>
    
    <cc>rider</cc>
    
    <cc>serpiph</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>18800</commentid>
    <comment_count>0</comment_count>
    <who name="Andrei Bulava">abulava</who>
    <bug_when>2004-09-14 11:21:45 +0400</bug_when>
    <thetext>Сервис upsdrv стартует раньше hotplug, из-за этого UPS с USB-интерфейсом не
виден на момент старта upsdrv и драйвер не загружается. Как следствие - 1) если
upsd настроен на единственный UPS (типично для десктопа), то следом за сбоем
сервиса upsdrv следует сбой сервиса upsd; 2) если upsmon работает на этом же
хосте (типично для десктопа), то в лог падает сообщение &quot;UPS [ups@localhost]:
connect failed: Connection failure: Connection refused&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18801</commentid>
    <comment_count>1</comment_count>
      <attachid>592</attachid>
    <who name="Andrei Bulava">abulava</who>
    <bug_when>2004-09-14 11:24:36 +0400</bug_when>
    <thetext>Created attachment 592
Исправление последовательности запуска сервисов

Прилагаемый патч решает вопрос последовательности _запуска_ сервисов hotplug,
upsdrv, upsd, upsmon. Что до последовательности _останова_ - при поверхностном
взгляде практической проблемы с остановом hotplug до upsmon, upsd, upsdrv я не
заметил. Но логичнее, наверное, довести начатое до конца, т.е. останавливать
сервисы в последовательности, противоположной запуску: upsmon, upsd, upsdrv,
hotplug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18807</commentid>
    <comment_count>2</comment_count>
    <who name="Andrei Bulava">abulava</who>
    <bug_when>2004-09-15 10:03:15 +0400</bug_when>
    <thetext>Мои исправления не выдержали проверки reboot&apos;ом :-(

С моими исправлениями upsdrv стартует непосредственно после hotplug, но
/dev/usb/hiddev0 не успевает появиться к моменту старта сервиса upsdrv.

Пока даже не предполагаю, каким способом можно _правильно_ исправить ситуацию.
Для моего конкретного случая сойдёт первый попавшийся костыль, но и тут ничего
кроме банального sleep пока в голову не приходит.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18978</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2004-09-30 20:39:19 +0400</bug_when>
    <thetext>*** Bug 5162 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18979</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2004-09-30 20:43:02 +0400</bug_when>
    <thetext>Я склоняюсь к тому, что надо что-то делать с hotplug.
Может, запускать его раньше, может, ещё что-то делать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>19412</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2004-10-25 17:08:31 +0400</bug_when>
    <thetext>А бесполезно с ним что-то делать - время, через которое появится USB-устройство,
в общем случае не ограничено (например, при наличии нескольких USB-устройств
распознавание их производится процессом khubd последовательно). Разве что
запускать upsdrv из hotplug.

Привязка к конкретным /dev/usb/* тоже никуда не годится - номера устройств
плавают (в частности, даже при наличии только одного устройства при отключении и
быстром подключении устройства для него может быть выделен новый номер, если
программа недостаточно быстро закроет старый файл устройства). В 2.6 эту
проблему может решить udev; в 2.4 с этим хуже.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26317</commentid>
    <comment_count>6</comment_count>
    <who name="Andrei Bulava">abulava</who>
    <bug_when>2005-06-23 19:01:34 +0400</bug_when>
    <thetext>*** Bug 7186 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26400</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2005-06-24 18:52:07 +0400</bug_when>
    <thetext>так... следующий блок бесперебойного пищания надо покупать с USB.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27410</commentid>
    <comment_count>8</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-07-19 12:41:33 +0400</bug_when>
    <thetext>reassign to nut-driver

Необходимо переделать алгоритм запуска сервиса upsdrv для ядра 2.6

В ядре 2.6 такой сервис должен запускаться из 
/etc/dev.d/DEVNAME/, где DEVNAME - соответствующее устройство, создаваемое при
загрузке модуля для UPS.

Там же он должен и останавливаться. 

К сожалению у меня нет UPS, соответственно патчи сделать не могу ;-(
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27736</commentid>
    <comment_count>9</comment_count>
    <who name="Slava Dubrovskiy">dubrsl</who>
    <bug_when>2005-07-26 14:02:16 +0400</bug_when>
    <thetext>Могу только добавить, что данная проблема присутствует не только с USB, но и с
/dev/ttyS0 при использовании udev_static-addon-0.1-alt1 и udev-0.63-alt2

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30189</commentid>
    <comment_count>10</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-09-06 23:18:18 +0400</bug_when>
    <thetext>Предлагаю хотя бы перенести запуск upsd на несколько шагов позже hotplug, 
может хоть с /dev/ttyS? начнёт работать. Всё лучше, чем ничего. </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30190</commentid>
    <comment_count>11</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-09-07 00:42:28 +0400</bug_when>
    <thetext>Согласно комментарию #5, не начнёт.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30193</commentid>
    <comment_count>12</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-09-07 01:01:34 +0400</bug_when>
    <thetext>Ну там речь о USB, а я о /dev/ttyS? </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30194</commentid>
    <comment_count>13</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-09-07 01:08:43 +0400</bug_when>
    <thetext>А откуда проблемы с /dev/ttyS?
Если из-за недонастроенного udev&apos;а, то это не здесь надо править.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30226</commentid>
    <comment_count>14</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-09-07 15:24:51 +0400</bug_when>
    <thetext>udev тут не при чем.

модуль 8250 для серийного порта грузится hotplug&apos;ом.

В приниципе скорее всего он загрузится, если попытаться открыть устройство в
простом /dev/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30232</commentid>
    <comment_count>15</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-09-07 17:13:45 +0400</bug_when>
    <thetext>Короче говоря, файл устройства и драйвер для него могут появится когда угодно
или не появится вообще, и демон (в данном случае nut&apos;овские драйвера) тут ничего
сделать не может кроме как надеятся что файл устройства работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30233</commentid>
    <comment_count>16</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2005-09-07 17:16:44 +0400</bug_when>
    <thetext>Да.

Но здесь есть возможность запускать nut тогда, когда собственно появляется само
устройство.

Т.е. - убрать из сервисов и переместить запуск в udev

udev дает возможность запускать любые приложения при появлении/удалении устройств
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30239</commentid>
    <comment_count>17</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-09-07 18:26:55 +0400</bug_when>
    <thetext>(In reply to comment #15)  
&gt; Короче говоря, файл устройства и драйвер для него могут появится когда  
Я предлагаю передвинуть upsdrv/upsd и поставить после postfix (а то он ещё и  
письма слать не может при ошибке инициализации).  
Хуюе от этого вряд ли будет, а автору баги и мне, например, полегче. 
  </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30245</commentid>
    <comment_count>18</comment_count>
    <who name="Andrei Bulava">abulava</who>
    <bug_when>2005-09-07 18:46:53 +0400</bug_when>
    <thetext>(In reply to comment #17)
&gt; Я предлагаю передвинуть upsdrv/upsd и поставить после postfix (а то он ещё и  
&gt; письма слать не может при ошибке инициализации).  
&gt; Хуже от этого вряд ли будет, а автору баги и мне, например, полегче. 

Всегда найдётся человек, у которого upsdrv стартует быстрее, чем будет распознан
USB UPS :-(

BTW, в силу нетерпимости upsd к отсутствию upsdrv (иными словами, upsd сразу же
вылетает с ошибкой, если на момент старта upsd не найдёт запущенного upsdrv), из
udev придётся запускать сначала upsdrv, а затем upsd. Так что сервисом останется
только upsmon :-|

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31651</commentid>
    <comment_count>19</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-10-10 21:07:08 +0400</bug_when>
    <thetext>* Mon Oct 10 2005 Dmitry V. Levin &lt;ldv@altlinux&gt; 2.0.2-alt1
- Updated to 2.0.2 release.
- In startup scripts, changed chkconfig priorities
  to start later and stop earler (see #5211).
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31653</commentid>
    <comment_count>20</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-10-10 21:08:07 +0400</bug_when>
    <thetext>*** Bug 6329 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>36893</commentid>
    <comment_count>21</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2006-03-20 19:50:21 +0300</bug_when>
    <thetext>ссылка весьма интересна. На мой взгляд стоит подождать, пока это пропихнут в
upstream.

Но на серверах такую схему я бы поостерёгся использовать.. или нам нужно думать,
как разделить права на запуск утилиты управления питанием (например powersaved)
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57953</commentid>
    <comment_count>22</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2007-11-10 21:10:47 +0300</bug_when>
    <thetext>(In reply to comment #9)
&gt; Могу только добавить, что данная проблема присутствует не только с USB, но и с
&gt; /dev/ttyS0 при использовании udev_static-addon-0.1-alt1 и udev-0.63-alt2
А вот если /dev/ttyS0 положить в &quot;железный&quot; /dev, прям на rootfs -- тогда
работаем.  Кажется, я про это отдельный баг вешал.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65280</commentid>
    <comment_count>23</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2008-03-07 20:41:46 +0300</bug_when>
    <thetext>Кстати, для такого &quot;положить&quot; давно собирался сделать dev-minimal (тж. #12020).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>99337</commentid>
    <comment_count>24</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2009-09-18 01:11:22 +0400</bug_when>
    <thetext>Пакет nut ищет мейнтейнера.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>116759</commentid>
    <comment_count>25</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2010-12-29 13:17:51 +0300</bug_when>
    <thetext>Пакет сборки amike@ залил в сизиф всё-таки я.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>131049</commentid>
    <comment_count>26</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2012-05-05 23:12:01 +0400</bug_when>
    <thetext>Просьба проверить на 2.6.x, если ещё представляется возможным; УМВР.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>592</attachid>
            <date>2004-09-14 11:24:36 +0400</date>
            <delta_ts>2004-09-14 11:24:36 +0400</delta_ts>
            <desc>Исправление последовательности запуска сервисов</desc>
            <filename>nut-startup-seq.patch</filename>
            <type>text/plain</type>
            <size>788</size>
            <attacher name="Andrei Bulava">abulava</attacher>
            
              <data encoding="base64">LS0tIGluaXQuZC91cHNkLm51dC1zdGFydHVwLXNlcQkyMDA0LTAzLTE1IDE4OjQ0OjU4ICswMjAw
CisrKyBpbml0LmQvdXBzZAkyMDA0LTA5LTE0IDA5OjQwOjEyICswMzAwCkBAIC0xLDYgKzEsNiBA
QAogIyEvYmluL3NoCiAjCi0jIGNoa2NvbmZpZzogMjM0NSAzMSA4OAorIyBjaGtjb25maWc6IDIz
NDUgMzQgODgKICMgZGVzY3JpcHRpb246IFRoZSBVUFMgaW5mb3JtYXRpb24gc2VydmVyCiAjIHBy
b2Nlc3NuYW1lOiB1cHNkCiAjIGNvbmZpZzogL2V0Yy91cHMvCi0tLSBpbml0LmQvdXBzZHJ2Lm51
dC1zdGFydHVwLXNlcQkyMDA0LTA5LTE0IDA5OjM4OjAyICswMzAwCisrKyBpbml0LmQvdXBzZHJ2
CTIwMDQtMDktMTQgMDk6Mzc6MzAgKzAzMDAKQEAgLTEsNiArMSw2IEBACiAjIS9iaW4vc2gKICMK
LSMgY2hrY29uZmlnOiAyMzQ1IDMwIDg5CisjIGNoa2NvbmZpZzogMjM0NSAzMyA4OQogIyBkZXNj
cmlwdGlvbjogVGhlIFVQUyBkcml2ZXJzCiAjIGNvbmZpZzogL2V0Yy91cHMvCiAKLS0tIGluaXQu
ZC91cHNtb24ubnV0LXN0YXJ0dXAtc2VxCTIwMDQtMDMtMTUgMTg6NDQ6NDYgKzAyMDAKKysrIGlu
aXQuZC91cHNtb24JMjAwNC0wOS0xNCAwOTo0MDozNyArMDMwMApAQCAtMSw2ICsxLDYgQEAKICMh
L2Jpbi9zaAogIwotIyBjaGtjb25maWc6IDIzNDUgMzIgODcKKyMgY2hrY29uZmlnOiAyMzQ1IDM1
IDg3CiAjIGRlc2NyaXB0aW9uOiBUaGUgVVBTIG1vbml0b3IgYW5kIHNodXRkb3duIGNvbnRyb2xs
ZXIKICMgcHJvY2Vzc25hbWU6IHVwc21vbgogIyBjb25maWc6IC9ldGMvdXBzLwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>