瀏覽代碼

drm: reorder struct drm_ioctl_desc to save space on 64 bit builds

shrinks drm_ioctl_desc from 24 bytes to 16 bytes by reordering members
to remove padding.

updates DRM_IOCTL_DEF macro to initialise structure members by name to
handle the structure reorder.

The applied patch reduces data used in drm.ko from 10440 to 9032

Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Richard Kennedy 16 年之前
父節點
當前提交
c972d750e4
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      include/drm/drmP.h

+ 3 - 3
include/drm/drmP.h

@@ -281,16 +281,16 @@ typedef int drm_ioctl_compat_t(struct file *filp, unsigned int cmd,
 
 struct drm_ioctl_desc {
 	unsigned int cmd;
-	drm_ioctl_t *func;
 	int flags;
+	drm_ioctl_t *func;
 };
 
 /**
  * Creates a driver or general drm_ioctl_desc array entry for the given
  * ioctl, for use by drm_ioctl().
  */
-#define DRM_IOCTL_DEF(ioctl, func, flags) \
-	[DRM_IOCTL_NR(ioctl)] = {ioctl, func, flags}
+#define DRM_IOCTL_DEF(ioctl, _func, _flags) \
+	[DRM_IOCTL_NR(ioctl)] = {.cmd = ioctl, .func = _func, .flags = _flags}
 
 struct drm_magic_entry {
 	struct list_head head;