Re: [Nut-upsuser] Restarting NUT twice in the same time creates 2 instances of usbhid-ups driver

2011-06-23 Thread Raphaël

Le 23/06/2011 11:44, Raphaël a écrit :

Hello I'm new on this list, nice to meet you

My configuration :

OS : Ubuntu server 10.04.1 LTS
NUT : nut 2.4.3-1ubuntu3.1 from Ubuntu package
UPS : APC Back-UPS ES 530

My problem :
When restarting twice nut in the same time. I can see 2 instance of 
/lib/nut/usbhid-ups driver when using : ps aux | grep usbhid-ups


I know that's not normal to restart nut twice at the same moment but 
it can occurs on my system.


When reading /etc/init.d/nut, i see that when restarting nut, script 
stop nut and start it again.
When starting again the driver is one more time started without any 
verification that its already launched.


I think there is a problem in code there. have you a solution to 
bypass this problem without rewriting /etc/init.d/nut


Thanks
--
Raphaël


Excuse me, maybe im on the wrong list. I will try to post on dev list.


--
Raphaël

___
Nut-upsuser mailing list
Nut-upsuser@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser

Re: [Nut-upsuser] Restarting NUT twice in the same time creates 2 instances of usbhid-ups driver

2011-06-23 Thread Arjen de Korte

Citeren Raphaël raphael.brou...@ve-hotech.com:

When reading /etc/init.d/nut, i see that when restarting nut, script  
stop nut and start it again.
When starting again the driver is one more time started without any  
verification that its already launched.


Stopping a driver is an asynchronous process. So you either have to  
check if the PID file is removed before assuming the driver has  
actually stopped or you need to wait a couple of seconds before  
(re)starting the drivers.



I think there is a problem in code there.


This is an inherent effect of the method that is used to signal  
drivers to stop. On systems with multiple driver instances, you don't  
want to hang around waiting for a driver to actually stop before going  
to the next one.



have you a solution to bypass this problem without rewriting /etc/init.d/nut


The easiest fix is to add a delay between

   stop nut
   sleep 2
   start nut

Best regards, Arjen
--
Please keep list traffic on the list (off-list replies will be rejected)



___
Nut-upsuser mailing list
Nut-upsuser@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser