Module: Mesa Branch: master Commit: 90abdc15414f44862a82fe2e53e5419f8182b9ac URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=90abdc15414f44862a82fe2e53e5419f8182b9ac
Author: Roland Scheidegger <[email protected]> Date: Tue Jul 1 17:06:48 2014 +0200 llvmpipe: allocate regular texture memory upfront The deferred allocation doesn't really make much sense anymore, since we no longer allocate swizzled/linear memory in chunks and not per level / slice neither. This means we could fail resource creation a bit more (could already fail in theory anyway) but should not fail maps later (right now, callers can't deal with neither really). Reviewed-by: Brian Paul <[email protected]> --- src/gallium/drivers/llvmpipe/lp_texture.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c index a156449..f95b2a2 100644 --- a/src/gallium/drivers/llvmpipe/lp_texture.c +++ b/src/gallium/drivers/llvmpipe/lp_texture.c @@ -59,6 +59,8 @@ static struct llvmpipe_resource resource_list; #endif static unsigned id_counter = 0; +static void +alloc_image_data(struct llvmpipe_resource *lpr); /** * Conventional allocation path for non-display textures: @@ -247,6 +249,11 @@ llvmpipe_resource_create(struct pipe_screen *_screen, /* texture map */ if (!llvmpipe_texture_layout(screen, lpr)) goto fail; + + alloc_image_data(lpr); + if (!lpr->tex_data) { + goto fail; + } } } else { _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
