https://bugs.freedesktop.org/show_bug.cgi?id=88921
Bug ID: 88921
Summary: X fails to start on QEMU/KVM with cirrus KMS since
3.19-rc
Product: DRI
Version: unspecified
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: medium
Component: DRM/other
Assignee: dri-devel(a)lists.freedesktop.org
Reporter: tiwai(a)suse.de
X modesetting driver fails to start with cirrus KMS on QEMU/KVM since 3.19-rc.
The culprit is the commit 8975626ea35adcca561f8a81dedccfbc5dd8ec72
drm/cirrus: allow 32bpp framebuffers for cirrus drm
Reverting this commit makes X working again.
X modesetting driver seems to try to open 1024x768x32 graphics, where the pitch
is 4096 and greater than max_pitch (4088) defined in
cirrus_check_framebuffer().
And it doesn't fall back to 24bpp as the patch expected.
Tested with 3.19-rc7 with qemu 2.1 -vga cirrus option.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=93718
Bug ID: 93718
Summary: nouveau + moveablecore => endless havoc (possibly a
general drm problem)
Product: DRI
Version: XOrg git
Hardware: Other
OS: All
Status: NEW
Severity: normal
Priority: medium
Component: General
Assignee: dri-devel(a)lists.freedesktop.org
Reporter: rwhite(a)pobox.com
NOTE: I'm actually using the gentoo x11 overlay which seems to be an xorg
git...
So reserving movable core on the linux command line seems to cause random
failure in my nouveau dual monitor desktop system. (I suspect it's happening to
a lessor extent on my radeon laptop as well).
So anyway, I've been using "moveablecore=2G" on my kernel command line for some
time in order to accommodate hugepages (etc) for transient virtual machines.
When I started playing with SDDM and kde Plasma I started getting display
hangs.
The exact moment and error of the hang/error is hard to catch, but just
starting sddm is enough to cause my dmesg to fill with faults. They all looked
memory/state related so I started playing around.
With no kernelcore= or moveablecore= options on the kernel command line the
system seems rock steady.
Using either (they both reserve a movable memory NUMA region that anonymous
mappings via mmap() "like" and the kernel is free to relocate by juggling page
tables and copying physical images) seems to steal data will-he/nil-he out from
under nouveau.
ASIDE: I say it may be happening on my radeon laptop because Chromium gets
render-hung there for odd reasons but the diagnostics are more vague.
So the work-around is to not use these options, but I suspect there's some
missing page locking or whatever creating phantom failures... particularly in
nouveau... particularly under high render pressure.
With "moveablecore=2G kernelcore=3G" I can't even get all the way through the
sddm password entry without a messy crash.
This seems to line up with a lot of can-not-duplicate type of error reports I
found with google, so I figure'd I drop my datapoint here.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=71083
Priority: medium
Bug ID: 71083
Assignee: dri-devel(a)lists.freedesktop.org
Summary: (struct drm_encoder_helper_funcs)->mode_set not
re-called after display (and EDID) change
Severity: normal
Classification: Unclassified
OS: All
Reporter: zajec5(a)gmail.com
Hardware: Other
Status: NEW
Version: unspecified
Component: DRM/other
Product: DRI
I use my DCE5 Barts (HD69xx) with AV-receiver Onkyo TX-SR605 and one of the
following displays:
1) TV Sony Bravia KDL-52X3500
2) Projector Epson EH-TW6100
My problem is that when I change display connected to the Onkyo's output EDID
changes, but drm doesn't call mode_set as long as I use the same resolution.
To force drm to call mode_set I've to change resolution (xrandr --output HDMI-0
--mode X) and then swtich back to the mode I want.
While the display seems to be working fine without that mode_set call, the
audio engine doesn't. As part of the modesetting handler we read ELD-related
info from EDID and write it to the audio engine of the GPU. Without this
happening I can't play correctly audio (because also sees info about previous
device, not the current one).
I think mode_set should be called every time EDID changes. Is that right?
In case someone's curious:
1) EDID with Onkyo + Sony TV:
00ffffffffffff003dcb610700000000
0011010380a05a780a0dc9a057479827
12484c21080081800101010101010101
010101010101023a801871382d40582c
450040846300001e011d007251d01e20
6e28550040846300001e000000fc0054
582d53523630350a20202020000000fd
00303e0e460f000a2020202020200185
02034c705c1f03041213051420071610
15110206010f1e0b1a191d0e0a242625
2335097f070f7f071707503f06c05706
005f7e01671e00834f00006c030c0012
00b82dc000000000e3050301023a80d0
72382d40102c458040846300001e011d
00bc52d01e20b828554040846300001e
00000000000000000000000000000078
2) EDID with Onkyo + Epson projector:
00ffffffffffff004ca333d000000000
0c150104952616780aa0558d515a962a
1c505400000001010101010101010101
0101010101016a4d80a07038fc413020
36007ed710000018d49a80a07038fc41
302036007ed710000038000000fc0053
414d53554e470a2020202020000000fc
00313733485430322d4330310a200035
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=92481
Bug ID: 92481
Summary: [Patch] Mostly cosmetic changes for
drm_dp_mst_i2c_xfer in Linux 4.3-rc5
Product: DRI
Version: unspecified
Hardware: Other
OS: Linux (All)
Status: NEW
Severity: normal
Priority: medium
Component: DRM/other
Assignee: dri-devel(a)lists.freedesktop.org
Reporter: adam_richter2004(a)yahoo.com
Created attachment 118905
--> https://bugs.freedesktop.org/attachment.cgi?id=118905&action=edit
Numerous mostly cosmetic fixed to drm_dp_mst_i2c_xfer in linux
4.3-rc5/drivers/gpu/drm/drm_dp_mst_topology.c AFTER Dave Airlie's other changes
have been applied
Thanks to Dave Airlie and Daniel Vitter for the the fixes to
drm_dp_mst_i2c_xfer to avoid possibly sending unitialized data in DisplayPort
multistream tranport i2c queries and to enforce the limit on the number of i2c
transactions in a single i2c request to avoid a possible buffer overflow.
The attached patch is based on the file with Dave's aforementioned changes
applied. It is an a bunch of mostly cosmetic ("maintainability") changes,
which I will list below:
a. Move the parameter validations to before the call to
drm_dp_get_validated_mstb_ref(), so that, if they fail, they do not need to use
"goto out", thereby reducing the number of goto's and the longest distance
between a goto and its target label. I imagine it also makes these rare
failure cases a few nanoseconds faster without delaying the common case.
b. Because of the above, txmsg no longer needs to be initialized to NULL.
c. Have different error messages and error codes (E2BIG, and EINVAL) for num >
4 and the i2c transaction not ending with a read statement, for clearer
debugging if either of these errors should occur, which should help in cases
where the errors only occur sporadically or the person observing the error
cannot easily recompile and install a new kernel to get more information.
Error reproduction is precious, so it's best not to waste them with unnecessary
ambiguity. These errors previous returned EIO, but EIO connotes a complaint
from the hardware, hence the change to E2BIG and EINVAL. By the way, I am
assuming that these conditions really can be caused by user level code
accessing /dev/i2c... If not, then I would be happy to replace them with
BUG_ON() statements.
d. Delete the comment "see if last msg is a read", since (c) makes it redundant
due to the clearer diagnostic message "Final DP-MST I2C transaction was not a
read".
e. Since we're concerned about invalid i2c message parameters resulting in
invalid memory references, also guard against num <= 0. Return -EDOM in this
case, since that really would cause a problem with the mathematical domain of a
function, because the line "...num_transactions = num - 1" would result in -1
being cast into 255 for the 8 bit field num_transactions.
f. Eliminate the variable "reading", which was computed and used only once,
immediately after it was computed.
g. Be more friendly to the optimizer by using unlikely() (and likely() instead
of unlikely() in one place to reduce the number of parentheses).
h. Be more friendly to the optimizer and maybe make the code more readable by
consolidating the seven computions of "num - 1" into a new variable, "count".
I know that having two varaibles named "num" and "count" where count == num - 1
is not the greatest naming convention. Please feel free to rename. There
actually is one place toward the end of the function where "num" is used
(rather than num - 1).
h. Do the check for num - 1 > DP_REMOTE_I2C_READ_MAX_TRANSACTIONS in a manner
not susceptible to integer overflow.
I realize that this patch conflates all these different minor changes. I would
be willing to submit these changes individually or in a few smaller groups if
necessary.
By the way, the attached patch assumes is against Linux 4.3-rc5 after Dave
Airlie's patch from
http://lists.freedesktop.org/archives/dri-devel/2015-October/092465.html is
applied.
Anyhow, I hope this patch is helpful.
Adam
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=69675
Priority: medium
Bug ID: 69675
Assignee: dri-devel(a)lists.freedesktop.org
Summary: audio broken in 24Hz/24p since 3.11 (regression)
Severity: normal
Classification: Unclassified
OS: All
Reporter: pierre-bugzilla(a)ossman.eu
Hardware: Other
Status: NEW
Version: unspecified
Component: DRM/other
Product: DRI
Bug 64503 is back again, but this time it isn't a case of PEBKAC. Instead it is
commit e6e792092e816bea0797995c886fb057c91d4546 that breaks things.
With 3.10 I have just this 24p mode in Xorg:
[ 47.361] (II) RADEON(0): Modeline "1920x1080"x24.0 74.25 1920 2558 2602
2750 1080 1084 1089 1125 +hsync +vsync (27.0 kHz e)
With 3.11 I have two:
Xorg.0.log:[ 56.189] (II) RADEON(0): Modeline "1920x1080"x24.0 74.25 1920
2558 2602 2750 1080 1084 1089 1125 +hsync +vsync (27.0 kHz e)
Xorg.0.log:[ 56.189] (II) RADEON(0): Modeline "1920x1080"x24.0 74.18 1920
2558 2602 2750 1080 1084 1089 1125 +hsync +vsync (27.0 kHz e)
And although the second one gives me an image, audio is royally screwed up.
Please revert, or at least give us a knob to disable these extra modes.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=80628
Priority: medium
Bug ID: 80628
Assignee: dri-devel(a)lists.freedesktop.org
Summary: The way KMS works doesn't support HDMI/DP well
Severity: enhancement
Classification: Unclassified
OS: Linux (All)
Reporter: tom.ty89(a)gmail.com
Hardware: Other
Status: NEW
Version: XOrg CVS
Component: DRM/other
Product: DRI
If the machine has no monitor attached at all before boot, KMS couldn't probe
the monitor and make it goes into native resolution afterwards. This issue is
not very obvious when DVI/VGA are the only connectors available because of
their mechanism.
When it comes to HDMI/DP, the monitor is considered disconnected when it's
powered off. Then the issue become annoying, while we have to make sure that
one monitor is connected and switched on before boot.
Moreover, display managers have to be started manually under such situation
after you turn on your monitor. Not even all DM can start X in optimal
resolution without some "xrandr hack"
By the way, it's funny that if you got one attached, you can power on others
later without getting into the problem. Just that I am not sure if it's because
all my monitors have the same optimal resolution.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=78541
Priority: medium
Bug ID: 78541
Assignee: dri-devel(a)lists.freedesktop.org
Summary: QXL DRM Driver Freezes QEMU KVM Guest when Switching
to Text Console
Severity: major
Classification: Unclassified
OS: Linux (All)
Reporter: reimth(a)gmail.com
Hardware: x86-64 (AMD64)
Status: NEW
Version: DRI CVS
Component: DRM/other
Product: DRI
Host:
- Debian Linux with kernel 3.11-2-amd64
- QEMU emulator version 1.7.0 (Debian 1.7.0+dfsg-2)
- Spice server 0.12.4
- libvirt Virtual Machine Manager 0.9.5
Guest:
- Ubuntu Saucy with kernel 3.11.0-20-generic
Reproduce:
- Start qemu with option -global qxl-vga.revision=4, which allows drm to load
the
qxl driver
Other parameters related to graphics:
+ -device
qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,bus=pci.0,addr=0x2
+ -spice port=5900,addr=127.0.0.1,disable-ticketing,seamless-migration=on
+ -chardev spicevmc,id=charchannel0,name=vdagent
+ -device
virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0
- Check with dmesg, that QXL DRM has been correctly initialised
- Send Ctrl-Alt-Fn (n = 1, 2, ...) to VM guest
Bug:
Virtual machine manager will switch to console but freezes with strange
display. Guest cannot be contacted any more. Switching back to vc is not
possible. ssh connections will hang. No netconsole output. The guest must be
restarted using forced shutdown.
The problem occurs also for qemu 2.0. It does not occur, if only userspace
driver is used (omit option -global qxl-vga.revision=4). In this case lspci
reports:
00:02.0 VGA compatible controller: Red Hat, Inc. Device 0100 (rev 03)
and dmesg reports:
[drm] Initialized drm 1.1.0 20060810
[drm:qxl_pci_probe] *ERROR* qxl too old, doesn't support
client_monitors_config, use xf86-video.
I can provide further information, but need some guidance, what you prefer in
order to locate the root cause of the problem.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=53544
Bug #: 53544
Summary: Incorrect modeline due to incorrect EDID block for LG
SL80 TV
Classification: Unclassified
Product: DRI
Version: DRI CVS
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: medium
Component: General
AssignedTo: dri-devel(a)lists.freedesktop.org
ReportedBy: paulepanter(a)users.sourceforge.net
The LG SL80 TV exhibits the same garbled screen as reported in #26294 [1] when
connecting an ASUS Eee PC 701 4G over VGA.
This is just a separate report for this particular TV and a patch is going to
be send to the list. Log files are included in comment 26294#c20 and comment
26294#c21 of the referenced report.
[1] https://bugs.freedesktop.org/show_bug.cgi?id=26294
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=74532
Priority: medium
Bug ID: 74532
Keywords: security
Assignee: dri-devel(a)lists.freedesktop.org
Summary: Sanitize all freed GPU memory
Severity: normal
Classification: Unclassified
OS: Linux (All)
Reporter: nikoli(a)gmx.us
Hardware: All
Status: NEW
Version: unspecified
Component: General
Product: DRI
X11 applications are able to get and display in human readable form parts of
closed applications, see:
https://github.com/mpv-player/mpv/issues/521
It means applications like skype can silently send much more data, then you
expect, even when you run them as separate user.
Asked about this security problem in #gentoo-hardened, #radeon and #dri-devel,
summarizing:
0) Currently GPU memory is not sanitized by kernel, nothing enforces and
ensures its sanitizing.
1) https://grsecurity.net Linux kernel patches add ability to sanitize all
freed memory, but they do not affect GPU memory:
https://en.wikibooks.org/wiki/Grsecurity/Appendix/Grsecurity_and_PaX_Config…
2) The only secure place to clean memory is kernel, because if application or X
server crashes, memory will not be erased.
3) Some applications possibly will work slower, so better make sanitizing
configurable by adding build and run time kernel options.
4) Most likely this problem affects opencl too.
--
You are receiving this mail because:
You are the assignee for the bug.
https://bugs.freedesktop.org/show_bug.cgi?id=32821
Summary: [mach64] DRI doesn't work on SGRAM with 4096Kb
Product: DRI
Version: XOrg CVS
Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
Severity: major
Priority: medium
Component: DRM/other
AssignedTo: dri-devel(a)lists.freedesktop.org
ReportedBy: nss.zpeedzter(a)gmail.com
Created an attachment (id=41615)
--> (https://bugs.freedesktop.org/attachment.cgi?id=41615)
with default packages and default conf
I have an integrated ATI Rage Pro 2x on a Dell OptiPlex GX1.
I'm running ARCHLINUX
here's a part of the xorg log with default packages and default configuration
[ 23.698] (--) Depth 24 pixmap format is 32 bpp
[ 23.757] (WW) MACH64(0): DRI static buffer allocation failed -- need at
least 10000 kB video memory
....
....
[ 23.791] (II) MACH64(0): Direct rendering disabled
and the second situation:
I install mach64drm from AUR and added an xorg.conf and switched to 16bpp
here's a part of xorg log:
[ 25.394] (II) MACH64(0): I2C bus "Mach64" initialized.
[ 25.455] (WW) MACH64(0): DRI static buffer allocation failed -- need at
least 7593 kB video memory
....
....
[ 25.489] (II) MACH64(0): Direct rendering disabled
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.