Bug 461374
Summary: | Rawhide version of nut does not work with MGE Nova 1100 | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Bruno Wolff III <bruno> | ||||
Component: | nut | Assignee: | Tomas Smetana <tsmetana> | ||||
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | rawhide | CC: | mhlavink, poelstra, russ+bugzilla-redhat | ||||
Target Milestone: | --- | Keywords: | Reopened | ||||
Target Release: | --- | ||||||
Hardware: | All | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2008-09-16 13:02:47 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 438943 | ||||||
Attachments: |
|
Description
Bruno Wolff III
2008-09-06 22:59:34 UTC
Sounds like a regression... adding to F10Blocker. I'm really sorry but I can debug this only "remotely". I use a different driver and it looks to work OK. Moreover I have no UPS at hand right now (bussiness trip). There were some conflicts with HAL drivers and the "ordinary" nut drivers. Could you try to move /usr/libexec/hald-addon-hid-ups away (backup it) restart the machine and try again. If that won't help, restore the file and we'll try other possibility. Thank you. That didn't seem to make any difference. This is my home system and I don't have rempte access during the day, so back and forth tests are going to go slowly. My configuration with upshid-ups driver seems to work. What exactly is in your ups.conf? Does "upsc ups" (assuming "ups" is the name of section in your ups.conf) output anything useful? Could you also verify no other instance of usbhid-ups is running? I thought I had attached ups.conf in the original bug report, but i don't see it now. Unfortunately I am not home right now and can't attach it. I'll update this tonight. Created attachment 316377 [details]
ups.conf
No other usbhid-ups processes were running:
[root@bruno bruno]# ps auxww|grep -i ups
root 2834 0.0 0.1 10640 2724 ? Ss 18:50 0:00 cupsd
root 4035 0.0 0.0 4184 768 pts/1 S+ 18:59 0:00 grep -i ups
[root@bruno bruno]# service ups start
Starting UPS driver controller: [FAILED]
Starting upsd: [ OK ]
Starting UPS monitor (master): [ OK ]
I forgot to test upsc: [root@bruno bruno]# upsc ups Error: Driver not connected Could you please attach also output of "usbhis-ups -DDD -a ups"? Thank you. I don't get home until pretty late tonight, but most likely I'll get that for you tonight. [root@bruno data1]# usbhid-ups -DDD -a ups Network UPS Tools: 0.29 USB communication driver - core 0.33 (2.2.2) debug level is '3' upsdrv_initups... Checking device (0463/FFFF) (001/002) - VendorID: 0463 - ProductID: ffff - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 001 Trying to match device Device matches failed to claim USB device, trying 2 more time(s)... detaching kernel driver from USB device... failed to detach kernel driver from USB device... trying again to claim USB device... failed to claim USB device, trying 1 more time(s)... detaching kernel driver from USB device... failed to detach kernel driver from USB device... trying again to claim USB device... failed to claim USB device, trying 0 more time(s)... detaching kernel driver from USB device... failed to detach kernel driver from USB device... trying again to claim USB device... Unable to get HID descriptor (error sending control message: Operation not permitted) HID descriptor, method 2: (9 bytes) => 09 21 00 01 21 01 22 66 01 HID descriptor length 358 Unable to get Report descriptor: Operation not permitted Checking device (1D6B/0001) (001/001) - VendorID: 1d6b - ProductID: 0001 - Manufacturer: unknown - Product: unknown - Serial Number: unknown - Bus: 001 Trying to match device Device does not match - skipping No appropriate HID device found No matching HID UPS found [root@bruno data1]# So even the driver itself can't find the UPS. Can you try different drivers: mge-shut or newmge-shut? They should have some support for the USB models as well. I tried mge-shut and newmge-shut and they didn't work. They complained about parameters. Probably they are looking for a serial port specification. This isn't surprising given. The documentation indicates that the USB version of the Nova 1100 is supposed to use the usbhid-ups driver. This works with nut-2.2.2-1.fc9.i386 which I still have running on another server. The broken version is nut-2.2.2-2.fc10.i386. Here is some output from the F9 server: usbhid-ups -DDD -a ups Network UPS Tools: 0.29 USB communication driver - core 0.33 (2.2.2) debug level is '3' upsdrv_initups... Checking device (0463/FFFF) (002/002) - VendorID: 0463 - ProductID: ffff - Manufacturer: MGE UPS SYSTEMS - Product: NOVA AVR - Serial Number: unknown - Bus: 002 Trying to match device Device matches HID descriptor, method 1: (9 bytes) => 09 21 00 01 21 01 22 66 01 HID descriptor, method 2: (9 bytes) => 09 21 00 01 21 01 22 66 01 HID descriptor length 358 Report Descriptor size = 358 Report Descriptor: (358 bytes) => 05 84 09 04 a1 00 09 16 a1 00 09 17 85 0b 75 08 95 01 15 00 26 ff 00 65 00 b1 03 09 1c a1 00 09 1d b1 03 09 30 85 0e 67 21 d1 f0 00 55 07 b1 83 c0 c0 09 1e a1 84 09 43 85 0d 75 10 26 ff 7f 66 21 d1 55 07 b1 83 c0 09 24 a1 00 09 25 09 1f 85 0b 75 08 95 02 26 ff 00 65 00 55 00 b1 03 05 85 09 2c 85 0c 75 08 95 01 b1 03 09 29 09 8d 95 02 25 64 b1 03 09 89 26 ff 00 85 10 95 01 b1 03 05 84 09 fd 09 fe 09 ff 95 03 b1 03 09 35 85 0e 95 01 65 00 55 00 b1 83 05 85 09 83 09 67 85 0c 95 02 75 08 25 64 b1 03 09 66 85 16 95 01 b1 83 09 66 81 83 09 68 66 01 10 75 10 26 10 0e b1 83 09 68 81 83 05 84 09 02 a1 02 09 73 85 01 95 01 75 01 65 00 25 01 45 00 81 83 09 73 b1 83 09 00 75 07 81 03 09 00 b1 03 05 85 09 d0 09 44 09 45 09 42 09 4b 0b 61 00 84 00 0b 69 00 84 00 0b 65 00 84 00 0b 62 00 84 00 85 02 75 01 95 09 25 01 81 83 09 00 75 07 95 01 81 03 09 d0 09 44 09 45 09 42 09 4b 0b 61 00 84 00 0b 69 00 84 00 0b 65 00 84 00 0b 62 00 84 00 95 09 75 01 b1 83 09 00 95 01 75 07 b1 03 c0 05 84 09 57 85 0f 75 18 95 01 66 01 10 15 ff 27 fe ff 00 00 b1 82 09 56 85 11 55 01 b1 82 c0 c0 Using subdriver: MGE HID 1.10 Report[get]: (5 bytes) => 0b 01 01 01 04 Path: UPS.PowerConverter.PowerConverterID, Type: Feature, ReportID: 0x0b, Offset: 0, Size: 8, Value: 1.000000 Report[buf]: (5 bytes) => 0b 01 01 01 04 Path: UPS.PowerConverter.Output.OutputID, Type: Feature, ReportID: 0x0b, Offset: 8, Size: 8, Value: 1.000000 Report[get]: (3 bytes) => 0e 78 20 Path: UPS.PowerConverter.Output.Voltage, Type: Feature, ReportID: 0x0e, Offset: 0, Size: 8, Value: 120.000000 Report[get]: (3 bytes) => 0d 4c 04 Path: UPS.Flow.[4].ConfigApparentPower, Type: Feature, ReportID: 0x0d, Offset: 0, Size: 16, Value: 1100.000000 Report[buf]: (5 bytes) => 0b 01 01 01 04 Path: UPS.PowerSummary.PowerSummaryID, Type: Feature, ReportID: 0x0b, Offset: 16, Size: 8, Value: 1.000000 Report[buf]: (5 bytes) => 0b 01 01 01 04 Path: UPS.PowerSummary.FlowID, Type: Feature, ReportID: 0x0b, Offset: 24, Size: 8, Value: 4.000000 Report[get]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.CapacityMode, Type: Feature, ReportID: 0x0c, Offset: 0, Size: 8, Value: 2.000000 Report[buf]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.RemainingCapacityLimit, Type: Feature, ReportID: 0x0c, Offset: 8, Size: 8, Value: 30.000000 Report[buf]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.CapacityGranularity1, Type: Feature, ReportID: 0x0c, Offset: 16, Size: 8, Value: 1.000000 Report[get]: (5 bytes) => 10 05 01 02 00 Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 5.000000 Report[buf]: (5 bytes) => 10 05 01 02 00 Path: UPS.PowerSummary.iManufacturer, Type: Feature, ReportID: 0x10, Offset: 8, Size: 8, Value: 1.000000 Report[buf]: (5 bytes) => 10 05 01 02 00 Path: UPS.PowerSummary.iProduct, Type: Feature, ReportID: 0x10, Offset: 16, Size: 8, Value: 2.000000 Report[buf]: (5 bytes) => 10 05 01 02 00 Path: UPS.PowerSummary.iSerialNumber, Type: Feature, ReportID: 0x10, Offset: 24, Size: 8, Value: 0.000000 Report[buf]: (3 bytes) => 0e 78 20 Path: UPS.PowerSummary.PercentLoad, Type: Feature, ReportID: 0x0e, Offset: 8, Size: 8, Value: 32.000000 Report[buf]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.DesignCapacity, Type: Feature, ReportID: 0x0c, Offset: 24, Size: 8, Value: 100.000000 Report[buf]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.FullChargeCapacity, Type: Feature, ReportID: 0x0c, Offset: 32, Size: 8, Value: 100.000000 Report[get]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, ReportID: 0x16, Offset: 0, Size: 8, Value: 100.000000 Report[buf]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RemainingCapacity, Type: Input, ReportID: 0x16, Offset: 0, Size: 8, Value: 100.000000 Report[buf]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, ReportID: 0x16, Offset: 8, Size: 16, Value: 1260.000000 Report[buf]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Input, ReportID: 0x16, Offset: 8, Size: 16, Value: 1260.000000 Report[get]: (2 bytes) => 01 00 Path: UPS.PowerSummary.PresentStatus.CommunicationLost, Type: Input, ReportID: 0x01, Offset: 0, Size: 1, Value: 0.000000 Report[buf]: (2 bytes) => 01 00 Path: UPS.PowerSummary.PresentStatus.CommunicationLost, Type: Feature, ReportID: 0x01, Offset: 0, Size: 1, Value: 0.000000 Report[buf]: (2 bytes) => 01 00 Path: UPS.PowerSummary.PresentStatus.Undefined, Type: Input, ReportID: 0x01, Offset: 1, Size: 7, Value: 0.000000 Report[buf]: (2 bytes) => 01 00 Path: UPS.PowerSummary.PresentStatus.Undefined, Type: Feature, ReportID: 0x01, Offset: 1, Size: 7, Value: 0.000000 Report[get]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Input, ReportID: 0x02, Offset: 0, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Charging, Type: Input, ReportID: 0x02, Offset: 1, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Input, ReportID: 0x02, Offset: 2, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Input, ReportID: 0x02, Offset: 3, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Input, ReportID: 0x02, Offset: 4, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Good, Type: Input, ReportID: 0x02, Offset: 5, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Input, ReportID: 0x02, Offset: 6, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Overload, Type: Input, ReportID: 0x02, Offset: 7, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.InternalFailure, Type: Input, ReportID: 0x02, Offset: 8, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Undefined, Type: Input, ReportID: 0x02, Offset: 9, Size: 7, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x02, Offset: 0, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Charging, Type: Feature, ReportID: 0x02, Offset: 1, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Feature, ReportID: 0x02, Offset: 2, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Feature, ReportID: 0x02, Offset: 3, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Feature, ReportID: 0x02, Offset: 4, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Good, Type: Feature, ReportID: 0x02, Offset: 5, Size: 1, Value: 1.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Feature, ReportID: 0x02, Offset: 6, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Overload, Type: Feature, ReportID: 0x02, Offset: 7, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.InternalFailure, Type: Feature, ReportID: 0x02, Offset: 8, Size: 1, Value: 0.000000 Report[buf]: (3 bytes) => 02 23 00 Path: UPS.PowerSummary.PresentStatus.Undefined, Type: Feature, ReportID: 0x02, Offset: 9, Size: 7, Value: 0.000000 Report[get]: (4 bytes) => 0f ff ff ff Path: UPS.PowerSummary.DelayBeforeShutdown, Type: Feature, ReportID: 0x0f, Offset: 0, Size: 24, Value: -1.000000 Report[get]: (4 bytes) => 11 ff ff ff Path: UPS.PowerSummary.DelayBeforeStartup, Type: Feature, ReportID: 0x11, Offset: 0, Size: 24, Value: -10.000000 Report[buf]: (3 bytes) => 0d 4c 04 get_model_name(NOVA AVR, 1100) comparing with: ellipse 300 comparing with: ellipse 500 comparing with: ellipse 650 comparing with: ellipse 800 comparing with: ellipse 1200 comparing with: ellipse premium 500 comparing with: ellipse premium 650 comparing with: ellipse premium 800 comparing with: ellipse premium 1200 comparing with: Ellipse 600 comparing with: Ellipse 750 comparing with: Ellipse 1000 comparing with: Ellipse 1500 comparing with: Ellipse MAX 600 comparing with: Ellipse MAX 850 comparing with: Ellipse MAX 1100 comparing with: Ellipse MAX 1500 comparing with: Protection Center 420 comparing with: Protection Center 500 comparing with: Protection Center 675 comparing with: Pulsar Evolution 500 comparing with: Pulsar Evolution 800 comparing with: Pulsar Evolution 1100 comparing with: Pulsar Evolution 1500 comparing with: Pulsar Evolution 2200 comparing with: Pulsar Evolution 3000 comparing with: Pulsar Evolution 3000 XL comparing with: Evolution 650 comparing with: Evolution 850 comparing with: Evolution 1150 comparing with: Evolution S 1250 comparing with: Evolution 1550 comparing with: Evolution S 1750 comparing with: Evolution 2000 comparing with: Evolution S 2500 comparing with: Evolution S 3000 comparing with: Pulsar M 2200 comparing with: Pulsar M 3000 comparing with: Pulsar M 3000 XL comparing with: Pulsar 700 comparing with: Pulsar 1000 comparing with: Pulsar 1500 comparing with: Pulsar 1000 RT2U comparing with: Pulsar 1500 RT2U comparing with: Pulsar MX 4000 RT comparing with: Pulsar MX 5000 RT comparing with: NOVA 600 AVR comparing with: NOVA 1100 AVR Found NOVA 1100 AVR Report descriptor retrieved (Reportlen = 358) Found HID device Detected a UPS: MGE UPS SYSTEMS/NOVA 1100 AVR Report[buf]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, ReportID: 0x16, Offset: 0, Size: 8, Value: 100.000000 Report[buf]: (6 bytes) => 0c 02 1e 01 64 64 Path: UPS.PowerSummary.RemainingCapacityLimit, Type: Feature, ReportID: 0x0c, Offset: 8, Size: 8, Value: 30.000000 Report[buf]: (4 bytes) => 16 64 ec 04 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, ReportID: 0x16, Offset: 8, Size: 16, Value: 1260.000000 Report[buf]: (5 bytes) => 10 05 01 02 00 Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 5.000000 Report[buf]: (3 bytes) => 0e 78 20 Path: UPS.PowerSummary.PercentLoad, Type: Feature, ReportID: 0x0e, Offset: 8, Size: 8, Value: 32.000000 Report[buf]: (4 bytes) => 11 ff ff ff Path: UPS.PowerSummary.DelayBeforeStartup, Type: Feature, ReportID: 0x11, Offset: 0, Size: 24, Value: -10.000000 Report[buf]: (4 bytes) => 0f ff ff ff Seeing that it was almost the same version of nut on both machines, I tried testing some other things and I now think that the ups on the home machine got into a weird state that happened to coincide with the update. I thought I had already tested for that, but if I did it didn't work. I tried forcing the f9 version on f10. That didn't immediately work, so I tried unplugging and replugging the ups. That worked. Then I upgraded back to the f10 version and things still worked. Having to unplug and replug the ups is something that happens from time to time (usually on the order of a couple of months) and is usually the first thing I check. Sometimes I have to do it a couple of times to take effect. On rare occasions I have to shutdown the ups (or at least a few replugs didn't fix things) to reset the device. I am sorry about wasting your time with this. It turns out this is a real problem and that the f10 and f9 versions of nut have different affects on what is happening. While rebooting to test some other issues with rawhide I saw the ups repeatedly getting into the above state. That isn't normal. I seem to be able to consistantly clear the problem by installing the f9 version and momemtarily unplugging the ups' usb connector. Once it is working with the f9 version of nut I can reinstall with the f10 version and things will work. However rebooting seems to bolicks them back up again (at least in several tries). I did test rebooting with the f9 version of nut installed and things came up normally. I also tried reinstalling the f10 version (with yum instead of rpm which also might do things differently) to see if just reinstalling clears things up, but that didn't make things better. Versions I have been using: kernel-2.6.27-0.323.rc6.fc10.i686 udev-127-1.fc10.i386 nut-2.2.2-1.fc9.i386 nut-client-2.2.2-1.fc9.i386 nut-2.2.2-2.fc10.i386 nut-client-2.2.2-2.fc10.i386 I've builtd testing packgages of nut-2.2.2-2 for F-9 and you may wish to try them in your F-9. If they would work OK, then I would start looking at other component that could cause the problem. Usual suspicious is the kernel... The packages are at: http://tsmetana.fedorapeople.org/nut-test/ Note that nut-hal confilcts with nut, so do not install nut-hal. nut-2.2.2-2.fc9 behaves the same as nut-2.2.2-2.fc10 when installed on my rawhide system. It will work once nut-2.2.2-1.fc9 has been used to talk to the ups up until the next reboot. Then it will be broken until I reinstall nut-2.2.2-1.fc9 and replug the usb cable. I tried this on my f9 remote server and nut-2.2.2-2.fc9 broke things there. I don't have physical access to that machine very often and can't test replugging the usb cable right now. Reinstalling with nut-2.2.2-1.fc9 and rebooting the f9 machine did seem to fix things there. Though when trying service ups restart I did get failures a couple of times and then it seemed to be normal again with restarts regularly succeeding. So there does seem to be some difference in nut-2.2.2-2 that is triggering problems with the MGE Nova 1100 USB. I bet I know... It's the missing udev rules. I have replaced the packages in http://tsmetana.fedorapeople.org/nut-test/ with the new version for rawhide. Could you please test them? I'm at the office now, so I can't right now. I'll test the new version out tonight. I tried nut-2.2.2-3.fc10.i386 and a few reboots and no longer saw the problem, so I think you figured it out. Thanks. Since this version isn't in rawhide yet, I didn't close the ticket. But feel free to whenever you are ready. I haven't seen nut-2.2.2-3.fc10 show up in Koji yet. I am OK, but wanted to double check that you hadn't forgotten to officially put out a new version. That's strange... Thanks for pointing it out. I'll find out what's happened. Looks like it is Koji now. Thanks! FYI, I've just opened bug 488368 which looks very similar to this. |