Bug 533462

Summary: Double-sided printing doesn't work with number-up
Product: [Fedora] Fedora Reporter: Andrew McNabb <amcnabb>
Component: hplipAssignee: Tim Waugh <twaugh>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 11CC: jpopelka, twaugh
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: hplip-3.10.2-1.fc11 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 557515 (view as bug list) Environment:
Last Closed: 2010-04-03 04:43:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 541604    
Bug Blocks: 557515    
Attachments:
Description Flags
troubleshoot.txt
none
error_log with "cupsctl --debug-logging" none

Description Andrew McNabb 2009-11-06 19:46:56 UTC
When I select "Two-sided: Long Edge (Standard)" in the GNOME "Page Setup" tab when printing, the job should be printed double-sided.  However, the printer is only printing one page per side.

I have checked that "Duplexer Installed" is enabled in the "Set Printer Options" dialog.  I have also tried restarting CUPS.  The printer is a HP LaserJet P4015x, and duplexing works from other systems (including Fedora 11).  Please let me know if there is any other information I can provide.  Thanks.

Comment 1 Andrew McNabb 2009-11-06 22:41:48 UTC
I have discovered that double-sided printing works when "Pages per side" is 1 but does not work when "Pages per side" is 2.

Comment 2 Tim Waugh 2009-11-07 13:13:50 UTC
Please run the printing troubleshooter: System->Administration->Printing from the main menu, then Help->Troubleshoot from the menu bar.  When it asks you to print a test page, print from the application you have been seeing problems with.

It will give you the opportunity to save a 'troubleshoot.txt' file -- please attach that here.

Also very useful: what does 'rpm -q cups' say?

Comment 3 Andrew McNabb 2009-11-08 04:03:56 UTC
Created attachment 367999 [details]
troubleshoot.txt

I am attaching troubleshoot.txt.  The current version of cups is cups-1.4.1-13.fc12.x86_64.  Thanks.

Comment 4 Tim Waugh 2009-11-17 14:14:47 UTC
Thanks.  It would have been useful to see the debugging output -- the troubleshooter asks you to enable debugging right before the test page screen.  Perhaps the authentication to do that failed.  Out of interest, were you running the troubleshooter at the console, or inside a "remote" connection of some sort (ssh/VNC)?

Never mind, we'll get the debugging information "by hand".  Here is how:

1. Enable debugging, as root:

cupsctl --enable-debugging

2. Restart CUPS and clear out the error_log file, as root:

service cups restartlog

3. Now print your document exactly as before.

4. Grab the /var/log/cups/error_log file from here:

  http://localhost:631/admin/log/error_log

5. Finally, disable debugging, as root:

cupsctl --disable-debugging

Now please attach the error_log file you fetched in step 4.

Comment 5 Andrew McNabb 2009-11-17 16:43:13 UTC
I did click to enable debugging, so I'm not sure why that wouldn't have worked.  I was doing it with an Xnest tunnelled over VNC, but now I'm here in person, which makes the debugging easier.  I've now tried doing the manual approach (which I like better anyway), but I got the following error, which may explain why the debugging didn't work earlier:

root@prodigy:.# cupsctl --enable-debugging
cupsctl: Unknown option "--enable-debugging"!
Usage: cupsctl [options] [param=value ... paramN=valueN]

Perhaps it's supposed to be the "--debug-logging" option instead?  I'll attach the "error_log" given after doing "cupsctl --debug-logging".

Comment 6 Andrew McNabb 2009-11-17 16:43:50 UTC
Created attachment 369915 [details]
error_log with "cupsctl --debug-logging"

Comment 7 Tim Waugh 2009-11-17 17:47:22 UTC
Thanks, I did indeed mean that.  You can disable debugging now, like this:

cupsctl --no-debug-logging

The problem seems to be that ghostscript is not setting the correct value for Duplex in the CUPS raster header.  I see the same problem here with an HP DeskJet 990C when using the hpcups driver.

Comment 8 Tim Waugh 2009-11-18 16:19:03 UTC
The problem was that the HPLIP CUPS driver ("drv") file contained an error.  The Duplex setting is enabled using a PostScript setpagedevice operation.  This tells the pstoraster filter to set the Duplex field in the raster output.  Normally this happens in the "Setup" section of the document.

With n-up processing, multiple pages are rendered together as one page, and to do this safely the setpagedevice operator must be disabled at the end of the document Setup section.

However, the resulting HPLIP PPDs were putting the setpagedevice operation in the wrong place in the PostScript file -- the PageSetup section, which is executed after the document Setup section -- and so this was having no effect when n-up processing was being performed.

The fix is to change the drv file so that it places the setpagedevice operator in "AnySetup", not "PageSetup".

Comment 9 Tim Waugh 2009-11-18 17:52:21 UTC
Fixed in F-11 branch: hplip-3.9.8-19.fc11
Fixed in F-12 branch: hplip-3.9.8-22.fc12
Fixed in devel branch: hplip-3.9.10-2.fc13

Comment 10 Fedora Update System 2009-11-26 15:45:20 UTC
hplip-3.9.8-21.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/hplip-3.9.8-21.fc11

Comment 11 Fedora Update System 2009-11-26 15:46:26 UTC
hplip-3.9.8-24.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/hplip-3.9.8-24.fc12

Comment 12 Fedora Update System 2009-11-27 21:42:37 UTC
hplip-3.9.8-21.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update hplip'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-12227

Comment 13 Fedora Update System 2009-11-27 21:51:09 UTC
hplip-3.9.8-24.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update hplip'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F12/FEDORA-2009-12253

Comment 14 Andrew McNabb 2009-12-01 20:26:17 UTC
I upgraded hplip and "modified" the printer to use the updated driver.  The duplexing issue is fixed.  Thanks.

Comment 15 Tim Waugh 2009-12-07 12:47:38 UTC
I don't think it is completely fixed -- see bug #541604 and bug #544241.

FWIW I've added the 'Foomatic/hpijs' driver back in the foomatic-db package, and duplexing works there.

Comment 16 Tim Waugh 2009-12-10 16:24:49 UTC
I'm going to pull this change out until it can be fixed without causing regressions such as bug #541604.

Comment 17 Tim Waugh 2010-03-23 17:00:36 UTC
Fix is already upstream in 3.10.2.

Comment 18 Fedora Update System 2010-03-23 17:59:20 UTC
hplip-3.10.2-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/hplip-3.10.2-1.fc11

Comment 19 Fedora Update System 2010-03-24 23:33:32 UTC
hplip-3.10.2-1.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update hplip'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/hplip-3.10.2-1.fc11

Comment 20 Andrew McNabb 2010-03-26 21:24:32 UTC
I have tried hplip-3.10.2-2.fc12.x86_64, and this has successfully resolved the problem.  Thank you.

Comment 21 Fedora Update System 2010-04-03 04:42:56 UTC
hplip-3.10.2-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.