[Mesa-dev] [PATCH 0/8] nouveau: add support for vaapi

Ilia Mirkin imirkin at alum.mit.edu
Tue Sep 1 11:14:45 PDT 2015


On Tue, Sep 1, 2015 at 4:58 AM, Julien Isorce <julien.isorce at gmail.com> wrote:
> Hi,
>
> Thx for the comments. I forgot to mention that there is nothing really new
> in these patches.
> All the low level code relative to nouveau was already there.
> The patches are almost "just" moving code in order to call nouveau_vp3_bsp
> and nvc0_decoder_bsp
> multiple times between each begin/end frame. But any refactoring is a source
> of regressions so the "just" may be not that trivial :)
>
> I made sure that vdpau was still working. Actually it was more than that,
> without vdpau I think I would not have been able to do this refactoring. I
> also compared that for one begin/end frame the nouveau_bo buffer contains
> the same data for vdpau and vaapi. I dumped them for the same stream and
> several seconds and there were all the same.

Great. Please also ensure that you test all 4 supported formats --
mpeg2, mpeg4p2 (aka divx/xvid/etc), mpeg4p10 (aka h264), and vc1. You
don't have to do thorough testing for all of them, but just making
sure that they look like they might work would be nice.

>
> Would it be ok if I squash the patches like this (4 patches instead of 8):
>
> A: Common to nvc0 and nv98:
> nouveau: extract memcpy loop from nouveau_vp3_bsp
> nouveau: remove nouveau_vp3_bsp to use begin/next/end
>
> B: Only for nvc0 but same split can be applied to nv98:
> +nvc0(-nouveau): split nvc0_decoder_bsp in begin/next/end
> +nvc0(-nouveau): remove nvc0_decoder_bsp and use begin/next/end instead
> +nvc0(-nouveau): preserve content buffer when calling nvc0_decoder_bsp_next
> nvc0: implement pipe_video_codec::begin_frame/end_frame
>
> C: Common to nvc0 and nv98:
> nouveau: fix chunk decoding by updating number of slices
>
> D: Common to nvc0 and nv98:
> build: enable st/va with nouveau driver
>
> I can still squash A and B, no pb. Let me know.

I think it's fine as you have it above. Basically I want to avoid the
previous situation of patches like

1. add some code that's not used
2. change use of old code to new code
3. remove old code

Since that is just very difficult to review. All 3 of those need to be
in the same patch since then it's easy to ensure that identical
functionality is being preserved.

> Also should I use "--in-reply-to" or should I submit a new patch set since
> some will be squashed ?

We're not too strict on those things. I think a new patchset, with
'git format-patch -v2' or something to distinguish it, would be just
fine.

  -ilia


More information about the mesa-dev mailing list