• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] cups druckt garbage - je nach kernel!

awagner

Member
Hi Forum,

Ich weiß nicht mehr weiter: Ich habe mir ein eigenes kernel gebacken:

ausgehend von Suse-Factory Sourcen (2.6.21-8 + alle suse-patches) + ck2 patchset + acpi-release patch + cpuidle patch + suspend2; src-rpm-root/arch/x86_64/defconfig.default; make oldconfig, anschließend make menuconfig mit sehr (!) wenigen Änderungen (packet radio rausgenommen o.ä.).

lp, parport und parport_pc weiterhin als Module kompiliert.

Boote ich in den neuen kernel, mache modprobe lp und starte YaSTs Druckerkonfiguration, bringt mir eine Testseite auf hplaserjet5l/parallel nur Mist, und zwar eine Zeile und dann eine neue Seite mit einer weiteren Zeile Mist, wieder neue Seite mit 1 Zeile Mist usw.

Boote ich aber in den alten kernel (akt. SuSE 2.6.18.8-0.3/x86_64), funktioniert bei gleichem Vorgehen alles wunderbar. Die Cups-debug-Log-Ausgabe scheint mir auch (in beiden Fällen) unauffällig.

Wo soll ich suchen? (Soll ich ein diff irgendeiner kernel-konfiguration posten?)


Danke für jede Anregung,
Andreas


PS. Ich versuch' heut nachmittag oder so mal den unveränderten factory-kernel zu installieren/booten und gebe bescheid
edit: Hmpf. Mit dem factory-2.6.21-8-default kommt gar nix aus dem Drucker, lpq sagt aber alle jobs sind erledigt... :?:
 
OP
A

awagner

Member
Gimpel schrieb:
udev problem? *rat*

hm. Da in einem meiner zwischenzeitlich produzierten Kernel die autom. Erkennung von usbsticks nicht funktioniert hatte (wg. irgendwas mit scsi allerdings), hab ich im neuen Kernel gleich das Einstecken des Sticks überprüft - und da haben hald/udev gleich losgerattert. Zumindest das funktioniert also mit dem udev. Ich hab grad mal in /var/log nach allem mit "udev" drin gesucht, da tauchten nur für meine Begriffe harmlose Zeilen in boot.msg und boot.omsg auf.

Wenn's trotzdem udev wäre - wo müsste ich denn da noch suchen?

übrigens sagt der neue kernel im dmesg:
Code:
wagner@apollo:/var/log> cat dmesg-2.6.21.1-8-sd048-aw1 | grep par
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,ECP,DMA]
parport0: Printer, Hewlett-Packard HP LaserJet 5L
PCI driver parport_pc lacks driver specific resume support.
lp0: using parport0 (interrupt-driven).

(Das mit dem "lacks resume support" stammt von suspend2 und sollte zu ignorieren sein.)
 
OP
A

awagner

Member
Kann's daran liegen?:

awagner schrieb:
übrigens sagt der neue kernel im dmesg:
Code:
wagner@apollo:/var/log> cat dmesg-2.6.21.1-8-sd048-aw1 | grep par
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,ECP,DMA]
parport0: Printer, Hewlett-Packard HP LaserJet 5L
PCI driver parport_pc lacks driver specific resume support.
lp0: using parport0 (interrupt-driven).

Der alte sagt nämlich:
Code:
wagner@apollo:/var/log> cat dmesg-2.6.18.8-0.3-default | grep par
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
parport0: irq 7 detected
parport0: Printer, Hewlett-Packard HP LaserJet 5L
lp0: using parport0 (polling).
Ich mach mich mal auf die Suche nach Parametern für die parport und lp Module...

Grüße,
Andreas
 
OP
A

awagner

Member
Code:
wagner@apollo:~/Temp/kernel/build> diff .config.funzt .config.funzt.nicht
< # CONFIG_PARPORT_SERIAL is not set
< # CONFIG_PARPORT_PC_FIFO is not set
< # CONFIG_PARPORT_PC_SUPERIO is not set
< # CONFIG_PARPORT_PC_PCMCIA is not set
< # CONFIG_PARPORT_AX88796 is not set
---
> CONFIG_PARPORT_SERIAL=m
> CONFIG_PARPORT_PC_FIFO=y
> CONFIG_PARPORT_PC_SUPERIO=y
> CONFIG_PARPORT_PC_PCMCIA=m
> CONFIG_PARPORT_AX88796=m

Ich vermute mal es lag am CONFIG_PARPORT_PC_FIFO, der ist auch als experimentell markiert... Jetzt isser raus (und noch ein paar andere auch) und jetzt klappt's auch mit dem Drucker.
 
OP
A

awagner

Member
jengelh schrieb:
Und wenn du die config.funktioniert.nicht auf 2.6.18 anwendest?

...kann ich im Moment nicht überprüfen. Werd' ich aber die Tage (TM) mal nachholen.

(eben war beim aufwachen die Tastatur eingefroren, hab mit der Maus runtergefahren und bin jetzt in windows.)

Grüße,
Andreas
 
Nun, es gilt halt herauszufinden, ob es an der Kernelversion liegt, oder an den besagten Optionen. Dann kannst du dir auch was zusammenbauen, was du brauchst, wenn Vorkompiliertes nicht will.
 
OP
A

awagner

Member
jengelh schrieb:
Und wenn du die config.funktioniert.nicht auf 2.6.18 anwendest?

habe ein neues build-Verzeichnis angelegt und die nicht funktionierende config als .config dorthin kopiert. Dann ins Quellenverzeichnis des SuSE 2.6.18.8-0.3 rpms gewechselt und
Code:
make O=/home/wagner/Temp/kernel/2.6.18.8-0.3-build/ menuconfig
eingegeben. Nur CONFIG_LOCALVERSION geändert, dann wieder raus aus der menuconfig, ins build-directory gewechselt und
Code:
make all
eingegeben.

Leider kompiliert es nicht:
Code:
wagner@apollo:~/Temp/kernel/2.6.18.8-0.3-build> make all
make -C /usr/src/linux-2.6.18.8-0.3 O=/home/wagner/Temp/kernel/2.6.18.8-0.3-build
  GEN     /home/wagner/Temp/kernel/2.6.18.8-0.3-build/Makefile
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf -s arch/x86_64/Kconfig
  Using /usr/src/linux-2.6.18.8-0.3 as source for kernel
  GEN     /home/wagner/Temp/kernel/2.6.18.8-0.3-build/Makefile
[snip]
  CC      arch/x86_64/kernel/process.o
  CC      arch/x86_64/kernel/signal.o
  AS      arch/x86_64/kernel/entry.o
/usr/src/linux-2.6.18.8-0.3/arch/x86_64/kernel/entry.S:38: error: asm/asm-offsets.h: Datei oder Verzeichnis nicht gefunden
make[3]: *** [arch/x86_64/kernel/entry.o] Fehler 1
make[2]: *** [arch/x86_64/kernel] Fehler 2
make[1]: *** [_all] Fehler 2
make: *** [all] Fehler 2

Leider hab' ich in diesen Tagen doch nicht so viel Zeit wie ich dachte, daher werd' ichs jetzt mal dabei belassen. Ich hab' unterdessen im Netz ein paar Berichte über Probleme mit CONFIG_PARPORT_PC_FIFO und polling- vs.interrupt-driven mode gefunden, das bestärkt mich im Glauben daran, mit diesen Optionen das richtige geändert zu haben.
Und jetzt geht's ja auch erstmal.

Vielen Dank für die Unterstützung,
Andreas
 
Oben