Re: [PATCH resend for CI 2/2] drm/i915: Use shorter route to dev_private where possible

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 17/03/16 13:17, Chris Wilson wrote:
On Thu, Mar 17, 2016 at 01:04:10PM +0000, Tvrtko Ursulin wrote:
From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>

Where we have a request we can use req->i915 directly instead
of going through the engine and device. Coccinelle script:

@@
function f;
identifier r;
@@
f(..., struct drm_i915_gem_request *r, ...)
{
...
- engine->dev->dev_private
+ r->i915
...
}
@@
struct drm_i915_gem_request *req;
@@
(
   req->
- engine->dev->dev_private
+ i915
)

struct intel_engine_cs *e;
- e->dev->dev_private
+ e->i915

Pretty please?

There is no e->i915 yet as far as I can see.

INTEL_INFO(engine->dev) (IS_GEN, HAS_ etc)
if r: INTEL_INFO(r->i915)
if e: INTEL_INFO(e->i915)
?

I have a patch to do:

- dev->dev_private
+ to_i915(dev)

But that is huge and to little gain.

Maybe we should have:

to_i915(req)
to_i915(engine)
to_i915(dev)

And a smart macro which does the right thing at compile time?

That way churn would be one time only and the magic happens in the macro definition, as shortcuts are added or (re)moved.

Regards,

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




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux