Mailinglist Archive: opensuse-bugs (15063 mails)

< Previous Next >
[Bug 309766] New: kernel: cannot identify usb printer via ioctl()
  • From: bugzilla_noreply@xxxxxxxxxx
  • Date: Wed, 12 Sep 2007 02:36:25 -0600 (MDT)
  • Message-id: <bug-309766-21960@xxxxxxxxxxxxxxxxxxxxxxxxx/>
https://bugzilla.novell.com/show_bug.cgi?id=309766

           Summary: kernel: cannot identify usb printer via ioctl()
           Product: openSUSE 10.3
           Version: Beta 2
          Platform: 32bit
        OS/Version: openSUSE 10.3
            Status: NEW
          Severity: Major
          Priority: P5 - None
         Component: Kernel
        AssignedTo: kernel-maintainers@xxxxxxxxxxxxxxxxxxxxxx
        ReportedBy: kssingvo@xxxxxxxxxx
         QAContact: qa@xxxxxxx
          Found By: Development


After a reboot it happens now, that cups is unable to print to USB printers.
The reason is that the ioctl() to identify related printer (grab the vendor,
model, and serial number from the device) is returning a EIO.

As USB are hotplugable and the device nodes (/dev/usb/lp0, /dev/usb/lp1) might
change after replug or reboot, it is mandatory to identify the correct printer
before a printout can happen, and therefore the ioctl() must return valid
values any time the system is up. An EIO is not acceptable.

The related source is doing this:
for (every device in /dev/usb/*) {
    test if device can be opened

    ioctl(fd, _IOC(_IOC_READ, 'P', IOCNR_GET_DEVICE_ID, device_id_size),
device_id))
}

To summarize: currently it's not possible to print to USB printers.


-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >