Bug 496123 - gnome-display-properties does nothing to handle framebuffer being too small for requested configuration
Summary: gnome-display-properties does nothing to handle framebuffer being too small f...
Keywords:
Status: CLOSED DUPLICATE of bug 487356
Alias: None
Product: Fedora
Classification: Fedora
Component: control-center
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Control Center Maintainer
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-04-16 18:38 UTC by Adam Williamson
Modified: 2009-04-17 16:53 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2009-04-17 09:58:22 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
ubuntu's icky patch (9.62 KB, patch)
2009-04-16 20:27 UTC, Adam Williamson
no flags Details | Diff

Description Adam Williamson 2009-04-16 18:38:52 UTC
A fairly common issue with multi-head display configurations is that, when you try to arrange monitors side-by-side, it fails due to the framebuffer being too small.

This was commonly the case with the Intel driver up through Fedora 10, as the driver didn't support dynamic framebuffer re-allocation until the Fedora 11 cycle. It now does, so we'll be OK for F11 on that front, but now we have the nouveau driver as the default for NVIDIA chipsets, which does RandR 1.2 (yay) but doesn't do framebuffer reallocation (boo). So it has the exact problem Intel used to have. Try and configure a side-by-side multihead setup out of the box with an NVIDIA adapter on Fedora 11 and it'll almost certainly fail because the available framebuffer size isn't large enough. We had multiple reports of this in the nouveau Test Day, for e.g.

Currently, when hitting this problem, g-d-p either just tries and it doesn't work, or it fails with a cryptic error message. We should improve this behaviour somehow.

I mailed the upstream maintainer, Federico Mena Quintero. He pointed out that Ubuntu has something of a gimcrack solution to this: it's a patch that implements an xorg.conf parser and tries to write an appropriate Virtual line into xorg.conf (this is how you manually specify a big enough framebuffer for a multi-head setup to actually work). We might not necessarily want to have this hack (and besides it probably doesn't work at present if xorg.conf doesn't exist, which is likely to be the case on Fedora), but it's worth evaluating, I guess.

At least, g-d-p should pop up an error dialog with a better explanation of the problem, and possibly a link to a Wiki page or something which explains how to fix it manually.

I'm attaching the Ubuntu patch to be evaluated. (The screen-package.h header it includes basically just does: "gboolean ubuntu_packages_install (GtkWindow *window, const char **packages);")

Comment 1 Bastien Nocera 2009-04-16 19:58:50 UTC
1) The drivers should be fixed
2) libXRandR should give us better error feedback

We'll see whether it's possible to have a better error message, but having to touch the xorg.conf is obviously out of the question.

Comment 2 Adam Williamson 2009-04-16 20:26:39 UTC
Yes, 1 is obviously the long-term solution, but we'll have F11 in this state with NVIDIA adapters for at least a few months, so it'll probably crop up quite a bit. And I wouldn't be surprised if it happens to a few other drivers as they move to RandR 1.2 in future.

2, I think from what Federico said, the error should be distinguishable. The Ubuntu patch seems to be able to do it. So we could use a less messy version which just displayed a better error dialog. That'd be fine, I think. I agree that trying to parse xorg.conf is really not a good idea :)

Don't know why the attachment didn't get through...I'll add it again...

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 3 Adam Williamson 2009-04-16 20:27:08 UTC
Created attachment 339916 [details]
ubuntu's icky patch

Comment 4 Bastien Nocera 2009-04-16 22:28:30 UTC
All the code is already in check_required_virtual_size(), it just needs to be enabled. There's nothing usable in the Ubuntu patch, because we don't want to just be working around driver bugs.

Comment 5 Bastien Nocera 2009-04-17 09:58:22 UTC
Given that nouveau now has framebuffer resizing (bug 487356), I'm closing this. Feel free to push the bug upstream if you feel that it's still necessary.

*** This bug has been marked as a duplicate of bug 487356 ***

Comment 6 Adam Williamson 2009-04-17 16:53:40 UTC
yeah, I was about to post that. I am amazed at ben's awesomeness :)

Indeed this now becomes far less important - intel, radeon and nvidia account for way over 95% of the graphics card market, and we're covered on all three fronts now as far as this goes. So practically speaking it hardly matters any more. Won't bother about it now.

-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers


Note You need to log in before you can comment on or make changes to this bug.