Bug 51553

Summary: VPP scaling defects when target size (w or h) is not aligned to 16 pixels
Product: libva Reporter: David Verbeiren <david.verbeiren>
Component: intelAssignee: Zhao Halley <halley.zhao>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: haihao.xiang
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Test code
patch part 1
patch part2

Description David Verbeiren 2012-06-29 04:21:14 UTC
Created attachment 63600 [details]
Test code

Using VA VPP scaling, when one dimension (width or height) of the output region is not a multiple of 16, the result incorrectly extends to the next complete block of 16 columns (to the right) or rows (to the bottom), filling extraneous columns or rows with a repeat of the last valid column or row.

This was observed on a SNB system, running Ubuntu 12.04. libva and intel-driver were built from sources from the staging branch.

The attached test code reproduces this problem. Press enter in the console to increase target width and height by 1 pixel each time.
Comment 1 Zhao Halley 2012-07-27 01:14:59 UTC
Created attachment 64760 [details]
patch part 1

enable horizontal and vertical mask for boundary blocks
Comment 2 Zhao Halley 2012-07-27 01:16:07 UTC
Created attachment 64761 [details]
patch part2

load block mask for the last block in a loop of asm code

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.