2010-01-26 17:10:52

by Richard Kennedy

[permalink] [raw]
Subject: [PATCH] drm/ttm: remove padding from ttm_ref_object on 64bit builds

Re-order structure ttm_ref_object to remove 8 bytes of alignment padding
on 64 bit builds, so shrinking its size from 72 to 64 bytes allowing it
to fit into a smaller slab.

Signed-off-by: Richard Kennedy <[email protected]>
----
patch against 2.6.33-rc5
compiled & tested on x86_64 AMDX2 and nouveau
regards
Richard


diff --git a/drivers/gpu/drm/ttm/ttm_object.c b/drivers/gpu/drm/ttm/ttm_object.c
index 1099aba..75e9d6f 100644
--- a/drivers/gpu/drm/ttm/ttm_object.c
+++ b/drivers/gpu/drm/ttm/ttm_object.c
@@ -109,8 +109,8 @@ struct ttm_ref_object {
struct drm_hash_item hash;
struct list_head head;
struct kref kref;
- struct ttm_base_object *obj;
enum ttm_ref_type ref_type;
+ struct ttm_base_object *obj;
struct ttm_object_file *tfile;
};



2010-01-30 15:26:26

by Thomas Hellstrom

[permalink] [raw]
Subject: Re: [PATCH] drm/ttm: remove padding from ttm_ref_object on 64bit builds

Richard Kennedy wrote:
> Re-order structure ttm_ref_object to remove 8 bytes of alignment padding
> on 64 bit builds, so shrinking its size from 72 to 64 bytes allowing it
> to fit into a smaller slab.
>
> Signed-off-by: Richard Kennedy <[email protected]>
> ----
> patch against 2.6.33-rc5
> compiled & tested on x86_64 AMDX2 and nouveau
> regards
> Richard
>
>
> diff --git a/drivers/gpu/drm/ttm/ttm_object.c b/drivers/gpu/drm/ttm/ttm_object.c
> index 1099aba..75e9d6f 100644
> --- a/drivers/gpu/drm/ttm/ttm_object.c
> +++ b/drivers/gpu/drm/ttm/ttm_object.c
> @@ -109,8 +109,8 @@ struct ttm_ref_object {
> struct drm_hash_item hash;
> struct list_head head;
> struct kref kref;
> - struct ttm_base_object *obj;
> enum ttm_ref_type ref_type;
> + struct ttm_base_object *obj;
> struct ttm_object_file *tfile;
> };
>
>
>
>
Acked-by: Thomas Hellstrom <[email protected]>