From: Marek Olšák Date: Mon, 22 Apr 2019 21:05:18 +0000 (-0400) Subject: st/dri: simplify throttling code X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a20800f49d1d665c4d93dcca87face1320423476;p=mesa.git st/dri: simplify throttling code Reviewed-by: Kenneth Graunke --- diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c index efb43c0d797..7edef415505 100644 --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c @@ -1933,10 +1933,8 @@ dri2_init_screen(__DRIscreen * sPriv) throttle_ret = pipe_loader_configuration(screen->dev, DRM_CONF_THROTTLE); dmabuf_ret = pipe_loader_configuration(screen->dev, DRM_CONF_SHARE_FD); - if (throttle_ret && throttle_ret->val.val_int != -1) { - screen->throttling_enabled = TRUE; + if (throttle_ret && throttle_ret->val.val_int > 0) screen->default_throttle_frames = throttle_ret->val.val_int; - } if (pscreen->resource_create_with_modifiers) dri2ImageExtension.createImageWithModifiers = diff --git a/src/gallium/state_trackers/dri/dri_drawable.c b/src/gallium/state_trackers/dri/dri_drawable.c index 92047584224..26bfdbecc53 100644 --- a/src/gallium/state_trackers/dri/dri_drawable.c +++ b/src/gallium/state_trackers/dri/dri_drawable.c @@ -547,7 +547,7 @@ dri_flush(__DRIcontext *cPriv, flush_flags |= ST_FLUSH_END_OF_FRAME; /* Flush the context and throttle if needed. */ - if (dri_screen(ctx->sPriv)->throttling_enabled && + if (dri_screen(ctx->sPriv)->default_throttle_frames && drawable && (reason == __DRI2_THROTTLE_SWAPBUFFER || reason == __DRI2_THROTTLE_FLUSHFRONT)) { diff --git a/src/gallium/state_trackers/dri/dri_screen.h b/src/gallium/state_trackers/dri/dri_screen.h index 30bde45ce42..85372cb97c8 100644 --- a/src/gallium/state_trackers/dri/dri_screen.h +++ b/src/gallium/state_trackers/dri/dri_screen.h @@ -57,8 +57,7 @@ struct dri_screen /* dri */ __DRIscreen *sPriv; - boolean throttling_enabled; - int default_throttle_frames; + unsigned default_throttle_frames; struct st_config_options options;