Ack, phhfft. Ignore this. Literally right after I hit "Send", one of the sane developers told me that the device is sufficiently different from other HP models that it won't work with the HP driver.

/me goes back to the drawing board.

On 5/26/24 4:47 PM, Ian Darwin wrote:
Scanimage (and xsane) give generic failure message instead of actionable perror output.

This is on amd64, and has failed on 7.4, 7.5 and -current. Sane config files are stock except adding the USB id for this scanner and commenting out all the unused devices in /etc/sane.d/dll.conf.

$ scanimage -L
device `hpaio:/usb/DeskJet_4100_series?serial=CN23JFG31P' is a Hewlett-Packard DeskJet_4100_series all-in-one
$ scanimage > /tmp/id.pnm
Output format is not set, using pnm as a default.
scanimage: open of device hpaio:/usb/DeskJet_4100_series?serial=CN23JFG31P failed: Error during device I/O
$ ktrace scanimage > /tmp/id.pnm
Output format is not set, using pnm as a default.
scanimage: open of device hpaio:/usb/DeskJet_4100_series?serial=CN23JFG31P failed: Error during device I/O
$ kdump > /tmp/id.ktrace

Relevant bit from ktrace follows. Some time after it has successfully opened and read from /usr/local/lib/libhmud.so.2.0, it blows with this, seemingly looking in /usr/lib:

 81078 scanimage CALL  sendsyslog(0x7c360a32b4c0,87,0<>)
 81078 scanimage GIO   fd -1 wrote 87 bytes
       "<11>scanimage: common/utils.c 246: unable to load library libhpmud.so.0: File not found"
 81078 scanimage RET   sendsyslog 0

By "relevant" I mean" right after this message, it starts unloading and closing and giving the ever-helpful "failed: Error during device I/O" cop-out.

All the syslog output from one run:

2636:May 26 16:32:46 dalai scanimage: scan/sane/escl.c 434: escl_open() session=0x0 2637:May 26 16:32:46 dalai scanimage: io/hpmud/musb.c 428: Found interface conf=0, iface=1, altset=0, index=1 2638:May 26 16:32:46 dalai scanimage: io/hpmud/musb.c 390: Active kernel driver on interface=1 ret=-12 2639:May 26 16:32:46 dalai scanimage: io/hpmud/musb.c 536: claimed 7/1/2 interface 2640:May 26 16:32:46 dalai scanimage: io/hpmud/musb.c 781: read actual device_id successfully fd=1 len=299 2641:May 26 16:32:46 dalai scanimage: io/hpmud/musb.c 562: released 7/1/2 interface 2642:May 26 16:32:46 dalai scanimage: common/utils.c 246: unable to load library libhpmud.so.0: File not found 2643:May 26 16:32:46 dalai scanimage: common/utils.c 246: unable to load library libhpmud.so.0: File not found 2644:May 26 16:32:46 dalai scanimage: scan/sane/escl.c 89: Calling escl bb_unload:

Full 6MB ktrace at https://darwinsys.com/tmp/scanimage-kdump.txt

$ cd /usr/lib
$ ls -lL libhpmud*
-rw-r--r--  1 root  bin  226380 May 11 22:25 libhpmud.a
-rw-r--r--  1 root  bin    1121 May 11 22:25 libhpmud.la
-rw-r--r--  1 root  bin  140272 May 11 22:25 libhpmud.so.2.0

All these packages are up-to-date:

cups-2.4.8 foomatic-db-4.0.20210611            hplip-3.23.12p0
cups-browsed-2.0.0 foomatic-db-engine-4.0.13p4 hplip-common-3.23.12p0
cups-filters-2.0.0p0 hpaio-3.23.12p0 sane-backends-1.3.1
cups-libs-2.4.8                     hpcups-3.23.12p0

This worked a year or so ago when I last used it, though I'm not 100% sure if it was this scanner or its predecessor, which isn't much to go on, but any thoughts?

The recent commit to sane-backends is not the cause as it was failing before that.


Reply via email to