* [PATCH 1/5] drm/i915: use hlist_for_each_entry @ 2016-01-13 14:48 Geliang Tang 2016-01-13 14:48 ` [PATCH 2/5] drm/i915: use kobj_to_dev() Geliang Tang 2016-01-13 15:12 ` [Intel-gfx] [PATCH 1/5] drm/i915: use hlist_for_each_entry Chris Wilson 0 siblings, 2 replies; 6+ messages in thread From: Geliang Tang @ 2016-01-13 14:48 UTC (permalink / raw) To: Daniel Vetter, Jani Nikula, David Airlie Cc: Geliang Tang, intel-gfx, linux-kernel, dri-devel Use hlist_for_each_entry() instead of hlist_for_each() to simplify the code. Signed-off-by: Geliang Tang <geliangtang@163.com> --- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c index 5d01ea6..8f194be 100644 --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c @@ -192,14 +192,10 @@ static struct i915_vma *eb_get_vma(struct eb_vmas *eb, unsigned long handle) return NULL; return eb->lut[handle]; } else { - struct hlist_head *head; - struct hlist_node *node; - - head = &eb->buckets[handle & eb->and]; - hlist_for_each(node, head) { - struct i915_vma *vma; + struct i915_vma *vma; - vma = hlist_entry(node, struct i915_vma, exec_node); + hlist_for_each_entry(vma, &eb->buckets[handle & eb->and], + exec_node) { if (vma->exec_handle == handle) return vma; } -- 2.5.0 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/5] drm/i915: use kobj_to_dev() 2016-01-13 14:48 [PATCH 1/5] drm/i915: use hlist_for_each_entry Geliang Tang @ 2016-01-13 14:48 ` Geliang Tang 2016-01-13 15:42 ` Daniel Vetter 2016-01-13 15:12 ` [Intel-gfx] [PATCH 1/5] drm/i915: use hlist_for_each_entry Chris Wilson 1 sibling, 1 reply; 6+ messages in thread From: Geliang Tang @ 2016-01-13 14:48 UTC (permalink / raw) To: Daniel Vetter, Jani Nikula, David Airlie Cc: Geliang Tang, intel-gfx, dri-devel, linux-kernel Use kobj_to_dev() instead of open-coding it. Signed-off-by: Geliang Tang <geliangtang@163.com> --- drivers/gpu/drm/i915/i915_sysfs.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c index 37e3f0d..c6188dd 100644 --- a/drivers/gpu/drm/i915/i915_sysfs.c +++ b/drivers/gpu/drm/i915/i915_sysfs.c @@ -164,7 +164,7 @@ i915_l3_read(struct file *filp, struct kobject *kobj, struct bin_attribute *attr, char *buf, loff_t offset, size_t count) { - struct device *dev = container_of(kobj, struct device, kobj); + struct device *dev = kobj_to_dev(kobj); struct drm_minor *dminor = dev_to_drm_minor(dev); struct drm_device *drm_dev = dminor->dev; struct drm_i915_private *dev_priv = drm_dev->dev_private; @@ -200,7 +200,7 @@ i915_l3_write(struct file *filp, struct kobject *kobj, struct bin_attribute *attr, char *buf, loff_t offset, size_t count) { - struct device *dev = container_of(kobj, struct device, kobj); + struct device *dev = kobj_to_dev(kobj); struct drm_minor *dminor = dev_to_drm_minor(dev); struct drm_device *drm_dev = dminor->dev; struct drm_i915_private *dev_priv = drm_dev->dev_private; @@ -521,7 +521,7 @@ static ssize_t error_state_read(struct file *filp, struct kobject *kobj, loff_t off, size_t count) { - struct device *kdev = container_of(kobj, struct device, kobj); + struct device *kdev = kobj_to_dev(kobj); struct drm_minor *minor = dev_to_drm_minor(kdev); struct drm_device *dev = minor->dev; struct i915_error_state_file_priv error_priv; @@ -556,7 +556,7 @@ static ssize_t error_state_write(struct file *file, struct kobject *kobj, struct bin_attribute *attr, char *buf, loff_t off, size_t count) { - struct device *kdev = container_of(kobj, struct device, kobj); + struct device *kdev = kobj_to_dev(kobj); struct drm_minor *minor = dev_to_drm_minor(kdev); struct drm_device *dev = minor->dev; int ret; -- 2.5.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 2/5] drm/i915: use kobj_to_dev() 2016-01-13 14:48 ` [PATCH 2/5] drm/i915: use kobj_to_dev() Geliang Tang @ 2016-01-13 15:42 ` Daniel Vetter 0 siblings, 0 replies; 6+ messages in thread From: Daniel Vetter @ 2016-01-13 15:42 UTC (permalink / raw) To: Geliang Tang Cc: David Airlie, intel-gfx, linux-kernel, dri-devel, Daniel Vetter On Wed, Jan 13, 2016 at 10:48:40PM +0800, Geliang Tang wrote: > Use kobj_to_dev() instead of open-coding it. > > Signed-off-by: Geliang Tang <geliangtang@163.com> Queued for -next, thanks for the patch. -Daniel > --- > drivers/gpu/drm/i915/i915_sysfs.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c > index 37e3f0d..c6188dd 100644 > --- a/drivers/gpu/drm/i915/i915_sysfs.c > +++ b/drivers/gpu/drm/i915/i915_sysfs.c > @@ -164,7 +164,7 @@ i915_l3_read(struct file *filp, struct kobject *kobj, > struct bin_attribute *attr, char *buf, > loff_t offset, size_t count) > { > - struct device *dev = container_of(kobj, struct device, kobj); > + struct device *dev = kobj_to_dev(kobj); > struct drm_minor *dminor = dev_to_drm_minor(dev); > struct drm_device *drm_dev = dminor->dev; > struct drm_i915_private *dev_priv = drm_dev->dev_private; > @@ -200,7 +200,7 @@ i915_l3_write(struct file *filp, struct kobject *kobj, > struct bin_attribute *attr, char *buf, > loff_t offset, size_t count) > { > - struct device *dev = container_of(kobj, struct device, kobj); > + struct device *dev = kobj_to_dev(kobj); > struct drm_minor *dminor = dev_to_drm_minor(dev); > struct drm_device *drm_dev = dminor->dev; > struct drm_i915_private *dev_priv = drm_dev->dev_private; > @@ -521,7 +521,7 @@ static ssize_t error_state_read(struct file *filp, struct kobject *kobj, > loff_t off, size_t count) > { > > - struct device *kdev = container_of(kobj, struct device, kobj); > + struct device *kdev = kobj_to_dev(kobj); > struct drm_minor *minor = dev_to_drm_minor(kdev); > struct drm_device *dev = minor->dev; > struct i915_error_state_file_priv error_priv; > @@ -556,7 +556,7 @@ static ssize_t error_state_write(struct file *file, struct kobject *kobj, > struct bin_attribute *attr, char *buf, > loff_t off, size_t count) > { > - struct device *kdev = container_of(kobj, struct device, kobj); > + struct device *kdev = kobj_to_dev(kobj); > struct drm_minor *minor = dev_to_drm_minor(kdev); > struct drm_device *dev = minor->dev; > int ret; > -- > 2.5.0 > > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [PATCH 1/5] drm/i915: use hlist_for_each_entry 2016-01-13 14:48 [PATCH 1/5] drm/i915: use hlist_for_each_entry Geliang Tang 2016-01-13 14:48 ` [PATCH 2/5] drm/i915: use kobj_to_dev() Geliang Tang @ 2016-01-13 15:12 ` Chris Wilson 2016-01-18 15:54 ` [PATCH 1/5 v2] " Geliang Tang 1 sibling, 1 reply; 6+ messages in thread From: Chris Wilson @ 2016-01-13 15:12 UTC (permalink / raw) To: Geliang Tang; +Cc: intel-gfx, linux-kernel, dri-devel, Daniel Vetter On Wed, Jan 13, 2016 at 10:48:39PM +0800, Geliang Tang wrote: > Use hlist_for_each_entry() instead of hlist_for_each() to simplify > the code. > > Signed-off-by: Geliang Tang <geliangtang@163.com> > --- > drivers/gpu/drm/i915/i915_gem_execbuffer.c | 10 +++------- > 1 file changed, 3 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c > index 5d01ea6..8f194be 100644 > --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c > +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c > @@ -192,14 +192,10 @@ static struct i915_vma *eb_get_vma(struct eb_vmas *eb, unsigned long handle) > return NULL; > return eb->lut[handle]; > } else { > - struct hlist_head *head; > - struct hlist_node *node; > - > - head = &eb->buckets[handle & eb->and]; > - hlist_for_each(node, head) { > - struct i915_vma *vma; > + struct i915_vma *vma; > > - vma = hlist_entry(node, struct i915_vma, exec_node); > + hlist_for_each_entry(vma, &eb->buckets[handle & eb->and], > + exec_node) { Keep the head = &eb->buckets[handle & eb->and]; local assignment as it makes the line splitting neater (and iirc something like gcc -Os doesn't use the temporary assignment - but then who would use CONFIG_OPTIMIZE_FOR_SIZE!). -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/5 v2] drm/i915: use hlist_for_each_entry 2016-01-13 15:12 ` [Intel-gfx] [PATCH 1/5] drm/i915: use hlist_for_each_entry Chris Wilson @ 2016-01-18 15:54 ` Geliang Tang 2016-01-18 16:49 ` Daniel Vetter 0 siblings, 1 reply; 6+ messages in thread From: Geliang Tang @ 2016-01-18 15:54 UTC (permalink / raw) To: Daniel Vetter, Jani Nikula, David Airlie Cc: Geliang Tang, intel-gfx, dri-devel, linux-kernel Use hlist_for_each_entry() instead of hlist_for_each() to simplify the code. Signed-off-by: Geliang Tang <geliangtang@163.com> --- Changes in v2: - Keep head = &eb->buckets[handle & eb->and] --- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c index dccb517..7dc95a7 100644 --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c @@ -193,13 +193,10 @@ static struct i915_vma *eb_get_vma(struct eb_vmas *eb, unsigned long handle) return eb->lut[handle]; } else { struct hlist_head *head; - struct hlist_node *node; + struct i915_vma *vma; head = &eb->buckets[handle & eb->and]; - hlist_for_each(node, head) { - struct i915_vma *vma; - - vma = hlist_entry(node, struct i915_vma, exec_node); + hlist_for_each_entry(vma, head, exec_node) { if (vma->exec_handle == handle) return vma; } -- 2.5.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/5 v2] drm/i915: use hlist_for_each_entry 2016-01-18 15:54 ` [PATCH 1/5 v2] " Geliang Tang @ 2016-01-18 16:49 ` Daniel Vetter 0 siblings, 0 replies; 6+ messages in thread From: Daniel Vetter @ 2016-01-18 16:49 UTC (permalink / raw) To: Geliang Tang Cc: David Airlie, intel-gfx, linux-kernel, dri-devel, Daniel Vetter On Mon, Jan 18, 2016 at 11:54:20PM +0800, Geliang Tang wrote: > Use hlist_for_each_entry() instead of hlist_for_each() to simplify > the code. > > Signed-off-by: Geliang Tang <geliangtang@163.com> > --- > Changes in v2: > - Keep head = &eb->buckets[handle & eb->and] Queued for -next, thanks for the patch. -Daniel > --- > drivers/gpu/drm/i915/i915_gem_execbuffer.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c > index dccb517..7dc95a7 100644 > --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c > +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c > @@ -193,13 +193,10 @@ static struct i915_vma *eb_get_vma(struct eb_vmas *eb, unsigned long handle) > return eb->lut[handle]; > } else { > struct hlist_head *head; > - struct hlist_node *node; > + struct i915_vma *vma; > > head = &eb->buckets[handle & eb->and]; > - hlist_for_each(node, head) { > - struct i915_vma *vma; > - > - vma = hlist_entry(node, struct i915_vma, exec_node); > + hlist_for_each_entry(vma, head, exec_node) { > if (vma->exec_handle == handle) > return vma; > } > -- > 2.5.0 > > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-01-18 16:49 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-01-13 14:48 [PATCH 1/5] drm/i915: use hlist_for_each_entry Geliang Tang 2016-01-13 14:48 ` [PATCH 2/5] drm/i915: use kobj_to_dev() Geliang Tang 2016-01-13 15:42 ` Daniel Vetter 2016-01-13 15:12 ` [Intel-gfx] [PATCH 1/5] drm/i915: use hlist_for_each_entry Chris Wilson 2016-01-18 15:54 ` [PATCH 1/5 v2] " Geliang Tang 2016-01-18 16:49 ` Daniel Vetter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox