[Nut-upsdev] [nut-commits] svn commit r971 - in trunk: . drivers
Arjen de Korte
nut+devel at de-korte.org
Thu Jun 21 12:53:33 UTC 2007
> Author: aquette
> Date: Thu Jun 21 07:43:46 2007
> New Revision: 971
>
> Log:
> fix communication lost status handling
>
> Modified:
> trunk/ChangeLog
> trunk/drivers/usbhid-ups.c
>
> Modified: trunk/ChangeLog
> ==============================================================================
> --- trunk/ChangeLog (original)
> +++ trunk/ChangeLog Thu Jun 21 07:43:46 2007
> @@ -1,3 +1,8 @@
> +Thu Jun 21 07:07:25 UTC 2007 / Arnaud Quette <aquette.dev at gmail.com>
> +
> + - usbhid-ups: improve the handling and reporting of the communication
> + lost status. Previously, these were not reported anymore.
Short of the problem with this patch I mentioned earlier today, I don't
see how it is going to improve the situation. You can call
dstate_datastale() as often as you like, as long as the status doesn't
change, the driver will not report this to the server. This leaves the bad
side effect that I mentioned earlier, the driver locks up until the
communication with the UPS is re-established. I fear that this will lead
to wrong conclusions, where people are looking for communication problems
between driver and server, where they are actually between UPS and driver.
As far as I can see, reconnect_ups() is called in two locations:
1) right after entering upsdrv_updateinfo() if 'hd' is found to be NULL
2) near the end of hid_ups_walk(), where 'hd' is made NULL just before
calling reconnect_ups()
Effectively, this means that as long as 'hd' stays NULL(), the
reconnect_ups() function as it was, would be called every time
upsdrv_updateinfo() runs. Typically, this will happen every two seconds,
the default interval for polling a UPS. Since 'hd' will only be assigned a
value in reconnect_ups() and upsdrv_initups(), this is the case, right? So
it would try to re-establish the connection every so often.
Best regards, Arjen
--
Eindhoven - The Netherlands
Key fingerprint - 66 4E 03 2C 9D B5 CB 9B 7A FE 7E C1 EE 88 BC 57
More information about the Nut-upsdev
mailing list