Bug 746505

Summary: nut driver doesn't work on some systems with same usb ups
Product: [Fedora] Fedora Reporter: Bruno Wolff III <bruno>
Component: nutAssignee: Michal Hlavinka <mhlavink>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: bruno, mhlavink
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-10-18 12:54:02 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:

Description Bruno Wolff III 2011-10-16 17:13:39 UTC
Description of problem:
I have two MGE nova 1100s with usb connections and one is working on rawhide and the other is not working with F16.

[root@wolff ups]# /sbin/upsdrvctl start
Network UPS Tools - UPS driver controller 2.6.2
Network UPS Tools - Generic HID driver 0.35 (2.6.2)
USB communication driver 0.31
No matching HID UPS found
Driver failed to start (exit status=1)
[root@wolff ups]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 0463:ffff MGE UPS Systems UPS
Bus 002 Device 003: ID 046d:c05a Logitech, Inc. Optical Mouse M90
[root@wolff ups]# systemctl status nut-driver.service
nut-driver.service - Network UPS Tools - power device driver controller
	  Loaded: loaded (/lib/systemd/system/nut-driver.service; static)
	  Active: failed since Sun, 16 Oct 2011 12:06:56 -0500; 5min ago
	 Process: 5392 ExecStart=/sbin/upsdrvctl start (code=exited, status=1/FAILURE)
	  CGroup: name=systemd:/system/nut-driver.service

For comparision on the system where it works:
[root@bruno bruno]# lsusb
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0463:ffff MGE UPS Systems UPS
Bus 001 Device 003: ID 046d:0a0c Logitech, Inc. Clear Chat Comfort USB Headset

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Michal Hlavinka 2011-10-18 10:52:07 UTC
1) what version of glibc do you have? 

2) what is output of:
id nut

3) what is output of
lsusb
ll /dev/bus/usb/*


what debug messages reports ups driver? (look at /etc/ups/ups.conf for name of your ups and driver used), than start:
<upsdriver> -DDD -a <name of ups>

for
[myups]
        driver = usbhid-ups
        port = auto
        desc = "My ups"

it'd be: usbhid-ups -DDD -a myups

Comment 2 Bruno Wolff III 2011-10-18 12:46:24 UTC
glibc-2.14.90-12.i686

[root@wolff bruno]# id nut
uid=57(nut) gid=57(nut) groups=57(nut)

[root@wolff bruno]# usbhid-ups -DDD -a ups
Network UPS Tools - Generic HID driver 0.35 (2.6.2)
USB communication driver 0.31
   0.000000	debug level is '3'
   0.001675	upsdrv_initups...
   0.109677	Checking device (1D6B/0002) (001/001)
   0.109967	Failed to open device, skipping. (Permission denied)
   0.110101	Checking device (1D6B/0001) (002/001)
   0.110230	Failed to open device, skipping. (Permission denied)
   0.110363	Checking device (0463/FFFF) (002/002)
   0.110604	Failed to open device, skipping. (Permission denied)
   0.110764	Checking device (046D/C05A) (002/003)
   0.110925	Failed to open device, skipping. (Permission denied)
   0.111041	Checking device (1D6B/0001) (003/001)
   0.111173	Failed to open device, skipping. (Permission denied)
   0.111291	Checking device (1D6B/0001) (004/001)
   0.111421	Failed to open device, skipping. (Permission denied)
   0.111519	No appropriate HID device found
   0.111688	No matching HID UPS found

I tried setenforce 0 after that, but still got permission denied.
I checked id nut on the machine where nut was working and saw:
[root@bruno bruno]# id nut
uid=57(nut) gid=57(nut) groups=57(nut),18(dialout)

Does nut need to be in the dialout group?

Comment 3 Michal Hlavinka 2011-10-18 12:54:02 UTC
Thanks for providing requested information. This is a known issue, glibc is broken. It's the reason why "id nut" does not show nut is member of dialout group.

*** This bug has been marked as a duplicate of bug 745675 ***