From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> x86-64: pahole before: /* size: 1328, cachelines: 21, members: 52 */ /* sum members: 1290, holes: 9, sum holes: 38 */ /* paddings: 3, sum paddings: 11 */ /* last cacheline: 48 bytes */ pahole after: /* size: 1296, cachelines: 21, members: 52 */ /* sum members: 1290, holes: 1, sum holes: 2 */ /* padding: 4 */ /* paddings: 3, sum paddings: 11 */ /* last cacheline: 16 bytes */ x86: pahole before: /* size: 772, cachelines: 13, members: 52 */ /* sum members: 762, holes: 4, sum holes: 10 */ /* paddings: 3, sum paddings: 7 */ /* last cacheline: 4 bytes */ pahole after: /* size: 764, cachelines: 12, members: 52 */ /* sum members: 762, holes: 1, sum holes: 2 */ /* paddings: 3, sum paddings: 7 */ /* last cacheline: 60 bytes */ Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> --- include/drm/drmP.h | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/include/drm/drmP.h b/include/drm/drmP.h index c72e548..dc84fc0 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -1121,6 +1121,8 @@ struct drm_device { atomic_t buf_alloc; /**< Buffer allocation in progress */ /*@} */ + unsigned int num_crtcs; /**< Number of CRTCs on this device */ + struct list_head filelist; /** \name Memory management */ @@ -1146,11 +1148,12 @@ struct drm_device { /** \name Context support */ /*@{ */ - bool irq_enabled; /**< True if irq handler is enabled */ __volatile__ long context_flag; /**< Context swapping flag */ int last_context; /**< Last current context */ /*@} */ + bool irq_enabled; /**< True if irq handler is enabled */ + /** \name VBLANK IRQ support */ /*@{ */ @@ -1162,20 +1165,19 @@ struct drm_device { */ bool vblank_disable_allowed; + /** + * List of events + */ + spinlock_t event_lock; + struct list_head vblank_event_list; + /* array of size num_crtcs */ struct drm_vblank_crtc *vblank; spinlock_t vblank_time_lock; /**< Protects vblank count and time updates during vblank enable/disable */ spinlock_t vbl_lock; - struct timer_list vblank_disable_timer; - u32 max_vblank_count; /**< size of vblank counter register */ - - /** - * List of events - */ - struct list_head vblank_event_list; - spinlock_t event_lock; + struct timer_list vblank_disable_timer; /*@} */ @@ -1191,7 +1193,6 @@ struct drm_device { struct usb_device *usbdev; struct drm_sg_mem *sg; /**< Scatter gather memory */ - unsigned int num_crtcs; /**< Number of CRTCs on this device */ void *dev_private; /**< device private data */ void *mm_private; struct address_space *dev_mapping; @@ -1199,8 +1200,6 @@ struct drm_device { sigset_t sigmask; struct drm_driver *driver; - struct drm_local_map *agp_buffer_map; - unsigned int agp_buffer_token; struct drm_minor *control; /**< Control node for card */ struct drm_minor *primary; /**< render type primary screen head */ struct drm_minor *render; /**< render node for card */ @@ -1215,6 +1214,9 @@ struct drm_device { int switch_power_state; atomic_t unplugged; /* device has been unplugged or gone away */ + + struct drm_local_map *agp_buffer_map; + unsigned int agp_buffer_token; }; #define DRM_SWITCH_POWER_ON 0 -- 1.8.1.5 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel