On Mon, 2021-06-07 at 15:32 -0500, Gustavo A. R. Silva wrote:
> In preparation to enable -Wimplicit-fallthrough for Clang, fix a
> warning by explicitly adding a fallthrough; statement.
[]
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c 
> b/drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
[]
> @@ -62,6 +62,7 @@ static void try_to_writeback(struct drm_i915_gem_object 
> *obj,
>       switch (obj->mm.madv) {
>       case I915_MADV_DONTNEED:
>               i915_gem_object_truncate(obj);
> +             fallthrough;
>       case __I915_MADV_PURGED:
>               return;
>       }

I think fallthrough to return is not particularly nice to follow.

This is the current function:

static void try_to_writeback(struct drm_i915_gem_object *obj,
                             unsigned int flags)
{
        switch (obj->mm.madv) {
        case I915_MADV_DONTNEED:
                i915_gem_object_truncate(obj);
        case __I915_MADV_PURGED:
                return;
        }

        if (flags & I915_SHRINK_WRITEBACK)
                i915_gem_object_writeback(obj);
}

One of these might be more typical:

static void try_to_writeback(struct drm_i915_gem_object *obj,
                             unsigned int flags)
{
        switch (obj->mm.madv) {
        case I915_MADV_DONTNEED:
                i915_gem_object_truncate(obj);
                break;
        case __I915_MADV_PURGED:
                break;
        default:
                if (flags & I915_SHRINK_WRITEBACK)
                        i915_gem_object_writeback(obj);
                break;
        }
}

or maybe:

static void try_to_writeback(struct drm_i915_gem_object *obj,
                             unsigned int flags)
{
        switch (obj->mm.madv) {
        case I915_MADV_DONTNEED:
                i915_gem_object_truncate(obj);
                return;
        case __I915_MADV_PURGED:
                return;
        }

        if (flags & I915_SHRINK_WRITEBACK)
                i915_gem_object_writeback(obj);
}


_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to