There is UPS APC RS-500 and ibusb(newhidups) library is used. Linux 2.6.10 kernel.
The 'usb_claim_interface' function returns -EBUSY when 'newhidups' is executed,
it's ok because this interface already claimed by usbhid.
At that time function 'usb_detach_kernel_driver_np' is executed,
to detach driver from this interface, then retry claiming and
code work fine.
It's also ok, but /sys/class/usb/hiddev0 and /dev/usb/hiddev0 will be removed.
How to make so that HID device isn't being removed from the system?