[igt-dev] [PATCH i-g-t 1/2] lib/intel_batchbuffer: add create without relocs

Zbigniew Kempczyński zbigniew.kempczynski at intel.com
Tue Mar 22 19:09:47 UTC 2022


On Thu, Feb 24, 2022 at 02:04:43PM +0100, Kamil Konieczny wrote:
> There is create function with relocations, so add its
> counterpart without it.
> 
> Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
> Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
> ---
>  lib/intel_batchbuffer.c | 9 ++++++++-
>  lib/intel_batchbuffer.h | 1 +
>  2 files changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/intel_batchbuffer.c b/lib/intel_batchbuffer.c
> index e5666cd4..159813dd 100644
> --- a/lib/intel_batchbuffer.c
> +++ b/lib/intel_batchbuffer.c
> @@ -1484,7 +1484,14 @@ struct intel_bb *intel_bb_create(int i915, uint32_t size)
>  	return __intel_bb_create(i915, 0, size,
>  				 relocs && !aux_needs_softpin(i915), 0, 0,
>  				 INTEL_ALLOCATOR_SIMPLE,
> -				 ALLOC_STRATEGY_HIGH_TO_LOW);
> +				 ALLOC_STRATEGY_LOW_TO_HIGH);

Please keep HIGH_TO_LOW strategy. Only thing you need to do is 
to use CANONICAL() + EXEC_OBJECT_SUPPORTS_48B_ADDRESS. Works fine
for me. 

> +}
> +
> +struct intel_bb *intel_bb_create_no_relocs(int i915, uint32_t size)
> +{
> +	return __intel_bb_create(i915, 0, size, false, 0, 0,
> +				 INTEL_ALLOCATOR_SIMPLE,
> +				 ALLOC_STRATEGY_LOW_TO_HIGH);
>  }

Same here.

--
Zbigniew

>  
>  /**
> diff --git a/lib/intel_batchbuffer.h b/lib/intel_batchbuffer.h
> index a488f9cf..793c16aa 100644
> --- a/lib/intel_batchbuffer.h
> +++ b/lib/intel_batchbuffer.h
> @@ -523,6 +523,7 @@ struct intel_bb *intel_bb_create(int i915, uint32_t size);
>  struct intel_bb *
>  intel_bb_create_with_context(int i915, uint32_t ctx, uint32_t size);
>  struct intel_bb *intel_bb_create_with_relocs(int i915, uint32_t size);
> +struct intel_bb *intel_bb_create_no_relocs(int i915, uint32_t size);
>  struct intel_bb *
>  intel_bb_create_with_relocs_and_context(int i915, uint32_t ctx, uint32_t size);
>  void intel_bb_destroy(struct intel_bb *ibb);
> -- 
> 2.32.0
> 


More information about the igt-dev mailing list