From: <jb...@ke...> - 2007-11-16 21:58:50
|
linux-core/drm_crtc.c | 9 ++++----- linux-core/drm_crtc.h | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) New commits: commit e0ab2034c3d87b9a1bbd86bfccd806793ce7c5b4 Author: Jesse Barnes <jes...@in...> Date: Fri Nov 16 13:58:43 2007 -0800 Fix connection status ABI Userspace expects a 1 based enum for connection status so fix up the kernel definition. diff --git a/linux-core/drm_crtc.h b/linux-core/drm_crtc.h index 0ddefc8..0645dd6 100644 --- a/linux-core/drm_crtc.h +++ b/linux-core/drm_crtc.h @@ -148,9 +148,9 @@ struct drm_display_mode { #define DPMSModeOff 3 enum drm_output_status { - output_status_connected, - output_status_disconnected, - output_status_unknown, + output_status_connected = 1, + output_status_disconnected = 2, + output_status_unknown = 3, }; enum subpixel_order { commit 96e136c4794f9f57e18c1f984a27bbad4b5e1500 Author: Jesse Barnes <jes...@in...> Date: Fri Nov 16 13:57:42 2007 -0800 Fix typo in copy_to_user calls We want to copy to card_res->modes + copied, not &card_res->modes + copied. diff --git a/linux-core/drm_crtc.c b/linux-core/drm_crtc.c index db062c1..df93484 100644 --- a/linux-core/drm_crtc.c +++ b/linux-core/drm_crtc.c @@ -1209,8 +1209,7 @@ int drm_mode_getresources(struct drm_device *dev, list_for_each_entry(output, &dev->mode_config.output_list, head) { DRM_DEBUG("OUTPUT ID is %d\n", output->id); - if (put_user(output->id, - card_res->output_id + copied)) + if (put_user(output->id, card_res->output_id + copied)) return -EFAULT; copied++; } @@ -1224,7 +1223,7 @@ int drm_mode_getresources(struct drm_device *dev, head) { list_for_each_entry(mode, &output->modes, head) { drm_crtc_convert_to_umode(&u_mode, mode); - if (copy_to_user(&card_res->modes + copied, + if (copy_to_user(card_res->modes + copied, &u_mode, sizeof(u_mode))) return -EFAULT; copied++; @@ -1233,9 +1232,9 @@ int drm_mode_getresources(struct drm_device *dev, /* add in user modes */ list_for_each_entry(mode, &dev->mode_config.usermode_list, head) { drm_crtc_convert_to_umode(&u_mode, mode); - if (copy_to_user(&card_res->modes + copied, &u_mode, + if (copy_to_user(card_res->modes + copied, &u_mode, sizeof(u_mode))) - return -EFAULT; + return -EFAULT; copied++; } } |