[PATCH 2/2] EXA: Allow optimized migration to be enabled with mixed pixmaps.

Maarten Maathuis madman2003 at gmail.com
Mon Dec 28 04:21:33 PST 2009


It still seems like the condition is only true for classic exa.

2009/12/28 Michel Dänzer <michel at daenzer.net>:
> From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <daenzer at vmware.com>
>
> This was always the intention, I only recently realized it wasn't the case
> yet...
>
> Signed-off-by: Michel Dänzer <daenzer at vmware.com>
> ---
>  hw/xfree86/exa/examodule.c |   37 +++++++++++++++++++------------------
>  1 files changed, 19 insertions(+), 18 deletions(-)
>
> diff --git a/hw/xfree86/exa/examodule.c b/hw/xfree86/exa/examodule.c
> index 601288c..bcb6a40 100644
> --- a/hw/xfree86/exa/examodule.c
> +++ b/hw/xfree86/exa/examodule.c
> @@ -122,24 +122,25 @@ exaDDXDriverInit(ScreenPtr pScreen)
>     memcpy(pScreenPriv->options, EXAOptions, sizeof(EXAOptions));
>     xf86ProcessOptions (pScrn->scrnIndex, pScrn->options, pScreenPriv->options);
>
> -    if ((pExaScr->info->flags & EXA_OFFSCREEN_PIXMAPS) &&
> -       pExaScr->info->offScreenBase < pExaScr->info->memorySize)
> -    {
> -       char *heuristicName;
> -
> -       heuristicName = xf86GetOptValString (pScreenPriv->options,
> -                                            EXAOPT_MIGRATION_HEURISTIC);
> -       if (heuristicName != NULL) {
> -           if (strcmp(heuristicName, "greedy") == 0)
> -               pExaScr->migration = ExaMigrationGreedy;
> -           else if (strcmp(heuristicName, "always") == 0)
> -               pExaScr->migration = ExaMigrationAlways;
> -           else if (strcmp(heuristicName, "smart") == 0)
> -               pExaScr->migration = ExaMigrationSmart;
> -           else {
> -               xf86DrvMsg (pScreen->myNum, X_WARNING,
> -                           "EXA: unknown migration heuristic %s\n",
> -                           heuristicName);
> +    if (pExaScr->info->flags & EXA_OFFSCREEN_PIXMAPS) {
> +       if (!(pExaScr->info->flags & EXA_HANDLES_PIXMAPS) &&
> +           pExaScr->info->offScreenBase < pExaScr->info->memorySize) {
> +           char *heuristicName;
> +
> +           heuristicName = xf86GetOptValString (pScreenPriv->options,
> +                                                EXAOPT_MIGRATION_HEURISTIC);
> +           if (heuristicName != NULL) {
> +               if (strcmp(heuristicName, "greedy") == 0)
> +                   pExaScr->migration = ExaMigrationGreedy;
> +               else if (strcmp(heuristicName, "always") == 0)
> +                   pExaScr->migration = ExaMigrationAlways;
> +               else if (strcmp(heuristicName, "smart") == 0)
> +                   pExaScr->migration = ExaMigrationSmart;
> +               else {
> +                   xf86DrvMsg (pScreen->myNum, X_WARNING,
> +                               "EXA: unknown migration heuristic %s\n",
> +                               heuristicName);
> +               }
>            }
>        }
>
> --
> 1.6.5.7
>
> _______________________________________________
> xorg-devel mailing list
> xorg-devel at lists.x.org
> http://lists.x.org/mailman/listinfo/xorg-devel
>


More information about the xorg-devel mailing list