Bug 99542 - vdpau logging errors since gallium/radeon: adjust the rule for using the LINEAR_ALIGNED layout
Summary: vdpau logging errors since gallium/radeon: adjust the rule for using the LIN...
Status: CLOSED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
URL:
Whiteboard:
Keywords: bisected, regression
: 99579 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-01-25 23:32 UTC by Andy Furniss
Modified: 2017-02-15 09:26 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andy Furniss 2017-01-25 23:32:06 UTC
R9 285 since 

7b32ae4df5bc19c378598d6a950a6019fa64ece6
gallium/radeon: adjust the rule for using the LINEAR_ALIGNED layout

mpv --hwdec=vdpau or 
mpv --vo=vdpau 

outputs hundreds of 

EE r600_texture.c:1571 r600_texture_transfer_map - failed to create temporary texture to hold untiled copy

Still renders/decodes.
Comment 1 Marek Olšák 2017-01-28 16:38:04 UTC
Hi, can you describe how to reproduce this?
Comment 2 Andy Furniss 2017-01-28 17:52:51 UTC
(In reply to Marek Olšák from comment #1)
> Hi, can you describe how to reproduce this?

It seems you need current mpv either release or git.

I just tried a year old mpv and that doesn't show the issue.

Easy to produce for me just mpv --vo=vdpau somevid results in the logging to stderr.
Comment 3 Andy Furniss 2017-01-28 19:51:03 UTC
*** Bug 99579 has been marked as a duplicate of this bug. ***
Comment 4 Johannes Hirte 2017-01-28 20:35:43 UTC
Same here on Carizzo. I've tested with mpv version 0.18, 0.22 and 0.23. With all of them I get the r600_texture_transfer_map error. VLC version 2.2.4 and mplayer 1.3.0 are working fine.
Comment 5 Kai 2017-01-28 20:47:23 UTC
Just to copy over some info from bug 99579:
- VLC seems unaffected with VDPAU decoding (I used cvlc).
- mpv 0.23.0 from Debian testing triggers this with either VA-API or VDPAU (see bug 99579, comment #0 for detailed version information and the full stack used by myself).
- I can only prevent this with setting both --hwdec=no and --vo to something other than "vaapi" or "vdpau".

I can confirm, that reverting 7b32ae4df5bc19c378598d6a950a6019fa64ece6 fixes the issue for me (thus I'm marking this bug as bisected).
Comment 6 John 2017-02-09 13:17:09 UTC
Same here on a 280x with mpv 0.23 and mesa-git & llvm-svn from yesterday (it's been like this for maybe 2 weeks or 3).
Comment 7 Marek Olšák 2017-02-12 14:55:05 UTC
It's a bug in mpv. It calls vlVdpOutputSurfacePutBitsNative with a zero-area destination_rect.

I'm really glad I haven't reverted the Mesa commit. The workaround is on mesa-dev:
"vdpau: skip vlVdpOutputSurfacePutBitsNative with a zero-area rectangle"
Comment 8 Kai 2017-02-12 17:46:07 UTC
(In reply to Marek Olšák from comment #7)
> It's a bug in mpv. It calls vlVdpOutputSurfacePutBitsNative with a zero-area
> destination_rect.
> 
> I'm really glad I haven't reverted the Mesa commit. The workaround is on
> mesa-dev:
> "vdpau: skip vlVdpOutputSurfacePutBitsNative with a zero-area rectangle"

I can confirm, that the patch on the mailing list suppresses these errors as well.
Comment 9 Kai 2017-02-14 21:57:06 UTC
Fix commited to master:

commit 0561b3c75af2e4bb216b686bf62ae9d89c584dc8
Author: Marek Olšák <marek.olsak@amd.com>
Date:   Sun Feb 12 15:48:48 2017 +0100

    vdpau: skip vlVdpOutputSurfacePutBitsNative with a zero-area rectangle
    
    This prevents errors:
    "EE r600_texture.c:1571 r600_texture_transfer_map - failed to create
     temporary texture to hold untiled copy"
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99542
    
    Tested-by: Kai Wasserbäch <kai@dev.carbon-project.org>
    Reviewed-by: Kai Wasserbäch <kai@dev.carbon-project.org>
    Reviewed-by: Christian König <christian.koenig@amd.com>


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct.