From: Gustavo Padovan <gustavo@padovan.org> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, dri-devel@lists.freedesktop.org, "Daniel Stone" <daniels@collabora.com>, "Arve Hjønnevåg" <arve@android.com>, "Riley Andrews" <riandrews@android.com>, "Daniel Vetter" <daniel.vetter@ffwll.ch>, "Rob Clark" <robdclark@gmail.com>, "Greg Hackmann" <ghackmann@google.com>, "John Harrison" <John.C.Harrison@Intel.com>, "Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>, "Gustavo Padovan" <gustavo.padovan@collabora.co.uk> Subject: [PATCH v2 04/11] staging/android: remove driver_data from struct fence_info Date: Tue, 2 Feb 2016 11:23:15 -0200 [thread overview] Message-ID: <1454419402-10769-5-git-send-email-gustavo@padovan.org> (raw) In-Reply-To: <1454419402-10769-1-git-send-email-gustavo@padovan.org> From: Gustavo Padovan <gustavo.padovan@collabora.co.uk> It is unclear in what situations driver_data should be used thus better do not upstream it for now. If a need arises in the future a discussion can be started to re-add it. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> --- drivers/staging/android/sw_sync.c | 14 -------------- drivers/staging/android/sync.c | 21 --------------------- drivers/staging/android/sync.h | 7 ------- drivers/staging/android/uapi/sync.h | 5 +---- 4 files changed, 1 insertion(+), 46 deletions(-) diff --git a/drivers/staging/android/sw_sync.c b/drivers/staging/android/sw_sync.c index 3bee959..af39ff5 100644 --- a/drivers/staging/android/sw_sync.c +++ b/drivers/staging/android/sw_sync.c @@ -47,19 +47,6 @@ static int sw_sync_fence_has_signaled(struct fence *fence) return (pt->value > obj->value) ? 0 : 1; } -static int sw_sync_fill_driver_data(struct fence *fence, - void *data, int size) -{ - struct sw_sync_pt *pt = (struct sw_sync_pt *)fence; - - if (size < sizeof(pt->value)) - return -ENOMEM; - - memcpy(data, &pt->value, sizeof(pt->value)); - - return sizeof(pt->value); -} - static void sw_sync_timeline_value_str(struct sync_timeline *sync_timeline, char *str, int size) { @@ -78,7 +65,6 @@ static void sw_sync_fence_value_str(struct fence *fence, char *str, int size) static struct sync_timeline_ops sw_sync_timeline_ops = { .driver_name = "sw_sync", .has_signaled = sw_sync_fence_has_signaled, - .fill_driver_data = sw_sync_fill_driver_data, .timeline_value_str = sw_sync_timeline_value_str, .fence_value_str = sw_sync_fence_value_str, }; diff --git a/drivers/staging/android/sync.c b/drivers/staging/android/sync.c index 3893656..87c9182 100644 --- a/drivers/staging/android/sync.c +++ b/drivers/staging/android/sync.c @@ -351,16 +351,6 @@ static bool android_fence_enable_signaling(struct fence *fence) return true; } -static int android_fence_fill_driver_data(struct fence *fence, - void *data, int size) -{ - struct sync_timeline *parent = fence_parent(fence); - - if (!parent->ops->fill_driver_data) - return 0; - return parent->ops->fill_driver_data(fence, data, size); -} - static void android_fence_value_str(struct fence *fence, char *str, int size) { @@ -394,7 +384,6 @@ static const struct fence_ops android_fence_ops = { .signaled = android_fence_signaled, .wait = fence_default_wait, .release = android_fence_release, - .fill_driver_data = android_fence_fill_driver_data, .fence_value_str = android_fence_value_str, .timeline_value_str = android_fence_timeline_value_str, }; @@ -493,22 +482,12 @@ err_put_fd: static int sync_fill_fence_info(struct fence *fence, void *data, int size) { struct fence_info *info = data; - int ret; if (size < sizeof(*info)) return -ENOMEM; info->len = sizeof(*info); - if (fence->ops->fill_driver_data) { - ret = fence->ops->fill_driver_data(fence, info->driver_data, - size - sizeof(*info)); - if (ret < 0) - return ret; - - info->len += ret; - } - strlcpy(info->obj_name, fence->ops->get_timeline_name(fence), sizeof(info->obj_name)); strlcpy(info->driver_name, fence->ops->get_driver_name(fence), diff --git a/drivers/staging/android/sync.h b/drivers/staging/android/sync.h index af1af99..d2a1734 100644 --- a/drivers/staging/android/sync.h +++ b/drivers/staging/android/sync.h @@ -32,10 +32,6 @@ struct sync_file; * 1 if pt has signaled * 0 if pt has not signaled * <0 on error - * @fill_driver_data: write implementation specific driver data to data. - * should return an error if there is not enough room - * as specified by size. This information is returned - * to userspace by SYNC_IOC_FENCE_INFO. * @timeline_value_str: fill str with the value of the sync_timeline's counter * @fence_value_str: fill str with the value of the fence */ @@ -46,9 +42,6 @@ struct sync_timeline_ops { int (*has_signaled)(struct fence *fence); /* optional */ - int (*fill_driver_data)(struct fence *fence, void *data, int size); - - /* optional */ void (*timeline_value_str)(struct sync_timeline *timeline, char *str, int size); diff --git a/drivers/staging/android/uapi/sync.h b/drivers/staging/android/uapi/sync.h index 70d05ad..cdc0f04 100644 --- a/drivers/staging/android/uapi/sync.h +++ b/drivers/staging/android/uapi/sync.h @@ -28,12 +28,11 @@ struct sync_merge_data { /** * struct fence_info - detailed fence information - * @len: length of fence_info including any driver_data + * @len: length of fence_info * @obj_name: name of parent sync_timeline * @driver_name: name of driver implementing the parent * @status: status of the fence 0:active 1:signaled <0:error * @timestamp_ns: timestamp of status change in nanoseconds - * @driver_data: any driver dependent data */ struct fence_info { __u32 len; @@ -41,8 +40,6 @@ struct fence_info { char driver_name[32]; __s32 status; __u64 timestamp_ns; - - __u8 driver_data[0]; }; /** -- 2.5.0
WARNING: multiple messages have this Message-ID (diff)
From: Gustavo Padovan <gustavo@padovan.org> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: devel@driverdev.osuosl.org, "Rob Clark" <robdclark@gmail.com>, "Daniel Stone" <daniels@collabora.com>, "Daniel Vetter" <daniel.vetter@ffwll.ch>, "Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>, "Riley Andrews" <riandrews@android.com>, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, "Arve Hjønnevåg" <arve@android.com>, "Greg Hackmann" <ghackmann@google.com>, "Gustavo Padovan" <gustavo.padovan@collabora.co.uk>, "John Harrison" <John.C.Harrison@Intel.com> Subject: [PATCH v2 04/11] staging/android: remove driver_data from struct fence_info Date: Tue, 2 Feb 2016 11:23:15 -0200 [thread overview] Message-ID: <1454419402-10769-5-git-send-email-gustavo@padovan.org> (raw) In-Reply-To: <1454419402-10769-1-git-send-email-gustavo@padovan.org> From: Gustavo Padovan <gustavo.padovan@collabora.co.uk> It is unclear in what situations driver_data should be used thus better do not upstream it for now. If a need arises in the future a discussion can be started to re-add it. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> --- drivers/staging/android/sw_sync.c | 14 -------------- drivers/staging/android/sync.c | 21 --------------------- drivers/staging/android/sync.h | 7 ------- drivers/staging/android/uapi/sync.h | 5 +---- 4 files changed, 1 insertion(+), 46 deletions(-) diff --git a/drivers/staging/android/sw_sync.c b/drivers/staging/android/sw_sync.c index 3bee959..af39ff5 100644 --- a/drivers/staging/android/sw_sync.c +++ b/drivers/staging/android/sw_sync.c @@ -47,19 +47,6 @@ static int sw_sync_fence_has_signaled(struct fence *fence) return (pt->value > obj->value) ? 0 : 1; } -static int sw_sync_fill_driver_data(struct fence *fence, - void *data, int size) -{ - struct sw_sync_pt *pt = (struct sw_sync_pt *)fence; - - if (size < sizeof(pt->value)) - return -ENOMEM; - - memcpy(data, &pt->value, sizeof(pt->value)); - - return sizeof(pt->value); -} - static void sw_sync_timeline_value_str(struct sync_timeline *sync_timeline, char *str, int size) { @@ -78,7 +65,6 @@ static void sw_sync_fence_value_str(struct fence *fence, char *str, int size) static struct sync_timeline_ops sw_sync_timeline_ops = { .driver_name = "sw_sync", .has_signaled = sw_sync_fence_has_signaled, - .fill_driver_data = sw_sync_fill_driver_data, .timeline_value_str = sw_sync_timeline_value_str, .fence_value_str = sw_sync_fence_value_str, }; diff --git a/drivers/staging/android/sync.c b/drivers/staging/android/sync.c index 3893656..87c9182 100644 --- a/drivers/staging/android/sync.c +++ b/drivers/staging/android/sync.c @@ -351,16 +351,6 @@ static bool android_fence_enable_signaling(struct fence *fence) return true; } -static int android_fence_fill_driver_data(struct fence *fence, - void *data, int size) -{ - struct sync_timeline *parent = fence_parent(fence); - - if (!parent->ops->fill_driver_data) - return 0; - return parent->ops->fill_driver_data(fence, data, size); -} - static void android_fence_value_str(struct fence *fence, char *str, int size) { @@ -394,7 +384,6 @@ static const struct fence_ops android_fence_ops = { .signaled = android_fence_signaled, .wait = fence_default_wait, .release = android_fence_release, - .fill_driver_data = android_fence_fill_driver_data, .fence_value_str = android_fence_value_str, .timeline_value_str = android_fence_timeline_value_str, }; @@ -493,22 +482,12 @@ err_put_fd: static int sync_fill_fence_info(struct fence *fence, void *data, int size) { struct fence_info *info = data; - int ret; if (size < sizeof(*info)) return -ENOMEM; info->len = sizeof(*info); - if (fence->ops->fill_driver_data) { - ret = fence->ops->fill_driver_data(fence, info->driver_data, - size - sizeof(*info)); - if (ret < 0) - return ret; - - info->len += ret; - } - strlcpy(info->obj_name, fence->ops->get_timeline_name(fence), sizeof(info->obj_name)); strlcpy(info->driver_name, fence->ops->get_driver_name(fence), diff --git a/drivers/staging/android/sync.h b/drivers/staging/android/sync.h index af1af99..d2a1734 100644 --- a/drivers/staging/android/sync.h +++ b/drivers/staging/android/sync.h @@ -32,10 +32,6 @@ struct sync_file; * 1 if pt has signaled * 0 if pt has not signaled * <0 on error - * @fill_driver_data: write implementation specific driver data to data. - * should return an error if there is not enough room - * as specified by size. This information is returned - * to userspace by SYNC_IOC_FENCE_INFO. * @timeline_value_str: fill str with the value of the sync_timeline's counter * @fence_value_str: fill str with the value of the fence */ @@ -46,9 +42,6 @@ struct sync_timeline_ops { int (*has_signaled)(struct fence *fence); /* optional */ - int (*fill_driver_data)(struct fence *fence, void *data, int size); - - /* optional */ void (*timeline_value_str)(struct sync_timeline *timeline, char *str, int size); diff --git a/drivers/staging/android/uapi/sync.h b/drivers/staging/android/uapi/sync.h index 70d05ad..cdc0f04 100644 --- a/drivers/staging/android/uapi/sync.h +++ b/drivers/staging/android/uapi/sync.h @@ -28,12 +28,11 @@ struct sync_merge_data { /** * struct fence_info - detailed fence information - * @len: length of fence_info including any driver_data + * @len: length of fence_info * @obj_name: name of parent sync_timeline * @driver_name: name of driver implementing the parent * @status: status of the fence 0:active 1:signaled <0:error * @timestamp_ns: timestamp of status change in nanoseconds - * @driver_data: any driver dependent data */ struct fence_info { __u32 len; @@ -41,8 +40,6 @@ struct fence_info { char driver_name[32]; __s32 status; __u64 timestamp_ns; - - __u8 driver_data[0]; }; /** -- 2.5.0
next prev parent reply other threads:[~2016-02-02 13:23 UTC|newest] Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-02-02 13:23 [PATCH v2 00/11] android sync framework: clean up IOCTLs and ABI Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 01/11] staging/android: remove SYNC_WAIT ioctl Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 02/11] staging/android: rename sync_pt_info to fence_info Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 14:19 ` Maarten Lankhorst 2016-02-02 13:23 ` [PATCH v2 03/11] staging/android: rename sync_file_info_data to sync_file_info Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan [this message] 2016-02-02 13:23 ` [PATCH v2 04/11] staging/android: remove driver_data from struct fence_info Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 05/11] staging/android: remove len field " Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 06/11] staging/android: turn fence_info into a __u64 pointer Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 14:16 ` Maarten Lankhorst 2016-02-02 14:16 ` Maarten Lankhorst 2016-02-02 20:28 ` Gustavo Padovan 2016-02-02 20:28 ` Gustavo Padovan 2016-02-03 8:32 ` Maarten Lankhorst 2016-02-03 8:32 ` Maarten Lankhorst 2016-02-02 15:28 ` Emil Velikov 2016-02-02 13:23 ` [PATCH v2 07/11] staging/android: add num_fences field to struct sync_file_info Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 08/11] staging/android: make info->len return only the size of fence_infos Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 14:18 ` Maarten Lankhorst 2016-02-02 14:18 ` Maarten Lankhorst 2016-02-02 18:46 ` Gustavo Padovan 2016-02-02 18:46 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 09/11] staging/android: rename SYNC_IOC_FENCE_INFO Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 10/11] staging/android: add flags member to sync ioctl structs Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan 2016-02-02 13:23 ` [PATCH v2 11/11] staging/android: remove redundant comments on sync_merge_data Gustavo Padovan 2016-02-02 13:23 ` Gustavo Padovan
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1454419402-10769-5-git-send-email-gustavo@padovan.org \ --to=gustavo@padovan.org \ --cc=John.C.Harrison@Intel.com \ --cc=arve@android.com \ --cc=daniel.vetter@ffwll.ch \ --cc=daniels@collabora.com \ --cc=devel@driverdev.osuosl.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=ghackmann@google.com \ --cc=gregkh@linuxfoundation.org \ --cc=gustavo.padovan@collabora.co.uk \ --cc=linux-kernel@vger.kernel.org \ --cc=maarten.lankhorst@linux.intel.com \ --cc=riandrews@android.com \ --cc=robdclark@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.