My Lexmark Optra E312 printer works fine with gentoo-sources-2.6.13-r3. With any of the stable gentoo 2.6.14 kernels, including 2.6.14-r5, I always get an invalid argument error when attempting to print. For example: # cat print.ps > /dev/lp0 cat: write error: Invalid argument A similar error appears in the cups 1.1.23-r7 web interface when trying to print from an application or trying to print a test page from the web interface. cups 1.1.23-r4 also produced the same error. I confirmed that lp0 is being created when I plug the printer in, so it appears to be the correct device. USB printing is enabled in the kernel. dmesg shows: Jan 13 10:40:43 [kernel] usb 1-5.4: new full speed USB device using ehci_hcd and address 6 Jan 13 10:40:43 [kernel] drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 6 if 0 alt 0 proto 2 vid 0x043D pid 0x000C Steps to consistently reproduce: 1. install 2.6.14 series kernel 2. attempt to print Result: invalid argument error message Expected result: printing Steps to temporarily fix: 1. reinstall 2.6.13 series kernel emerge info Portage 2.0.53 (default-linux/x86/2005.0, gcc-3.3.6, glibc-2.3.5-r2, 2.6.14-gentoo-r5 i686) ================================================================= System uname: 2.6.14-gentoo-r5 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.6.13 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] dev-lang/python: 2.2.3-r5, 2.3.5-r2, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O3 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://mirror.datapipe.net/gentoo http://mirrors.acm.cs.rpi.edu/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.cites.uiuc.edu/pub/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="x86 X Xaw3d acl adns alsa apache2 apm arts audiofile avi bash-completion berkdb bitmap-fonts bonobo bzip2 cdr cjk crypt cscope cups curl dbus eds emacs emboss encode esd evo exif expat f77 fam font-server foomaticdb fortran gd gdbm gif gimpprint glut gnome gpm gstreamer gtk gtk2 gtkhtml guile howl idn imagemagick imlib innodb ipv6 java jpeg junit kde kdeenablefinal lcms libg++ libwww mad mhash mikmod mmx mmx2 mng motif mp3 mpeg mysql nas ncurses nls nntp nptl nvidia ogg oggvorbis openal opengl oss pam pcre pda pdflib perl png postgres python qt quicktime readline recode samba sdl slang spell sse sse2 ssl subversion svga tcltk tcpd tetex threads tiff truetype truetype-fonts type1-fonts udev unicode vorbis wmf xml xml2 xmms xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Adding kernel herd because it is kernel related. Can you please try with 2.6.15? Maybe there is already a patch for this issue.
Yes, please test 2.6.15. Also, please test the following patch against your 2.6.14 tree (and 2.6.15 if that doesn't fix it). You can apply in the following manner: # cd /usr/src/linux # patch -p1 < /path/to/usblp-ioctl-compat.patch Then rebuild/reinstall the kernel/modules.
Created attachment 77118 [details, diff] usblp-ioctl-compat.patch
*** Bug 112473 has been marked as a duplicate of this bug. ***
(In reply to comment #2) > Yes, please test 2.6.15. Also, please test the following patch against your > 2.6.14 tree (and 2.6.15 if that doesn't fix it). You can apply in the following > manner: > > # cd /usr/src/linux > # patch -p1 < /path/to/usblp-ioctl-compat.patch > > Then rebuild/reinstall the kernel/modules. > I tried both the patch and gentoo-sources-2.6.15. Neither fixed the problem. One other thing that I noticed: /dev/lp0 has device number 180,0 in 2.6.13, but 189,3 in 2.6.14 and 2.6.15. I'm using the latest stable udev, 070-r1.
Attaching another patch which brings the driver in 2.6.14 into parity with 2.6.15-git11 (you'll need to revert the previous patch). Does this help? Also, for the purposes of testing please also make sure your udev rules are consistent with the package defaults. Back up /etc/udev if necessary then: # rm -rf /etc/udev # emerge --ask --oneshot udev # /sbin/udevstart That same procedure applies when switching udev versions too.
Created attachment 77231 [details, diff] 2.6.14-usblp-git-backport.patch
udev-079 was marked stable a few days ago. upgrading to this seems to have fixed printing with gentoo-sources-2.6.14-r5 without any patches.
good, marking this closed.