[Intel-gfx] [PATCH v2 33/38] drm/i915: Test creation of partial VMA
Joonas Lahtinen
joonas.lahtinen at linux.intel.com
Tue Jan 31 12:03:00 UTC 2017
On to, 2017-01-19 at 11:41 +0000, Chris Wilson wrote:
> Mock testing to ensure we can create and lookup partial VMA.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
<SNIP>
> +static bool assert_partial(struct drm_i915_gem_object *obj,
> + struct i915_vma *vma,
> + unsigned long offset,
> + unsigned long size)
> +{
> + struct sgt_iter sgt;
Confusing name, could rather be "sgti" or just "i", or "iter".
> +static int igt_vma_partial(void *arg)
> +{
> + struct drm_i915_private *i915 = arg;
> + const unsigned int npages = 1021; /* prime! */
#define THE_MAGIC_PRIME 1021
> + for (loop = 0; loop <= 1; loop++) { /* exercise both create/lookup */
I'd like the phase array/variable more. "loop" variable is kinda
confusing easily.
> + unsigned int count, nvma;
> +
Make a comment here that a whole VMA is also created at the end and it
needs to be accounted. This is why the phase array might be more
readable.
> + nvma = loop;
> + for_each_prime_number_from(sz, 1, npages) {
> + for_each_prime_number_from(offset, 0, npages - sz) {
> + struct i915_address_space *vm =
> + &i915->ggtt.base;
Could be out of the loop, too.
<SNIP>
> +
> + /* Create a mapping for the entire object, just for extra fun */
> + vma = i915_vma_instance(obj, &i915->ggtt.base, NULL);
No helper for this block?
With the variable renamed;
Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Regards, Joonas
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
More information about the Intel-gfx
mailing list