Public bug reported: USB backend never ends if the printer is not connected. we have been able to identify a infinity loop in print_device function in usb- libusb.c file:
``` fprintf(stderr, "DEBUG: Printing on printer with URI: %s\n", uri); while ((g.printer = find_device(print_cb, uri)) == NULL) { _cupsLangPrintFilter(stderr, "INFO", _("Waiting for printer to become available.")); sleep(5); } ``` It's also easy to test by invoking the backend by hand: ``` # export DEVICE_URI='usb://Printer/Model?serial=?' # /usr/lib/cups/backend/usb 0 root title 1 '' data.file DEBUG: Loading USB quirks from "/usr/share/cups/usb". DEBUG: Loaded 159 quirks. DEBUG: Printing on printer with URI: usb://Brother/PJ-773?serial=? DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. DEBUG: libusb_get_device_list=6 INFO: Waiting for printer to become available. ... ``` Setting a job timeout policy or stopping the job by hand are not options for us. We can have job that take up to an hour to complete. ** Affects: cups (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1890572 Title: USB backend never ends if the printer is not connected To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/cups/+bug/1890572/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs