mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
drm/i915: Tidy slab cache allocations
We can use the preferred KMEM_CACHE helper for brevity. Also simplifiy error unwind by only setting the ENOMEM error code once. v2: Add forgotten changes. (Joonas Lahtinen) Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> (v1) Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1478099699-28652-1-git-send-email-tvrtko.ursulin@linux.intel.com
This commit is contained in:
parent
dfc5148fb3
commit
a933568eb6
|
|
@ -4714,39 +4714,22 @@ int
|
|||
i915_gem_load_init(struct drm_device *dev)
|
||||
{
|
||||
struct drm_i915_private *dev_priv = to_i915(dev);
|
||||
int err;
|
||||
int err = -ENOMEM;
|
||||
|
||||
dev_priv->objects =
|
||||
kmem_cache_create("i915_gem_object",
|
||||
sizeof(struct drm_i915_gem_object), 0,
|
||||
SLAB_HWCACHE_ALIGN,
|
||||
NULL);
|
||||
if (!dev_priv->objects) {
|
||||
err = -ENOMEM;
|
||||
dev_priv->objects = KMEM_CACHE(drm_i915_gem_object, SLAB_HWCACHE_ALIGN);
|
||||
if (!dev_priv->objects)
|
||||
goto err_out;
|
||||
}
|
||||
|
||||
dev_priv->vmas =
|
||||
kmem_cache_create("i915_gem_vma",
|
||||
sizeof(struct i915_vma), 0,
|
||||
SLAB_HWCACHE_ALIGN,
|
||||
NULL);
|
||||
if (!dev_priv->vmas) {
|
||||
err = -ENOMEM;
|
||||
dev_priv->vmas = KMEM_CACHE(i915_vma, SLAB_HWCACHE_ALIGN);
|
||||
if (!dev_priv->vmas)
|
||||
goto err_objects;
|
||||
}
|
||||
|
||||
dev_priv->requests =
|
||||
kmem_cache_create("i915_gem_request",
|
||||
sizeof(struct drm_i915_gem_request), 0,
|
||||
SLAB_HWCACHE_ALIGN |
|
||||
SLAB_RECLAIM_ACCOUNT |
|
||||
SLAB_DESTROY_BY_RCU,
|
||||
NULL);
|
||||
if (!dev_priv->requests) {
|
||||
err = -ENOMEM;
|
||||
dev_priv->requests = KMEM_CACHE(drm_i915_gem_request,
|
||||
SLAB_HWCACHE_ALIGN |
|
||||
SLAB_RECLAIM_ACCOUNT |
|
||||
SLAB_DESTROY_BY_RCU);
|
||||
if (!dev_priv->requests)
|
||||
goto err_vmas;
|
||||
}
|
||||
|
||||
mutex_lock(&dev_priv->drm.struct_mutex);
|
||||
INIT_LIST_HEAD(&dev_priv->gt.timelines);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user