Message ID | 1405455492-1087-1-git-send-email-balbi@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, 15 Jul 2014, Felipe Balbi wrote: > ml->node and sl->node are currently initialized > by means of INIT_LIST_HEAD(). That initialiation > is followed by a list_add() call. > > Looking at what both these functions do we will have: > > ml->node.next = &ml->node; > ml->node.prev = &ml->node; > oi->master->master_ports.next.prev = &ml->node; > ml->node.next = &oi->master->master_ports.next; > ml->node.prev = &oi->master->master_ports; > oi->master->master_ports.next = &ml->node; > > from this, it's clear that both INIT_LIST_HEAD() calls > are unnecessary and can be safely removed. > > Signed-off-by: Felipe Balbi <balbi@ti.com> > --- > > found by code inspection, boot tested on am437x SK on today's > linux-next + pending patches. Thanks, queued for v3.18. - Paul
Hi, On Mon, Jul 28, 2014 at 05:24:34AM +0000, Paul Walmsley wrote: > On Tue, 15 Jul 2014, Felipe Balbi wrote: > > > ml->node and sl->node are currently initialized > > by means of INIT_LIST_HEAD(). That initialiation > > is followed by a list_add() call. > > > > Looking at what both these functions do we will have: > > > > ml->node.next = &ml->node; > > ml->node.prev = &ml->node; > > oi->master->master_ports.next.prev = &ml->node; > > ml->node.next = &oi->master->master_ports.next; > > ml->node.prev = &oi->master->master_ports; > > oi->master->master_ports.next = &ml->node; > > > > from this, it's clear that both INIT_LIST_HEAD() calls > > are unnecessary and can be safely removed. > > > > Signed-off-by: Felipe Balbi <balbi@ti.com> > > --- > > > > found by code inspection, boot tested on am437x SK on today's > > linux-next + pending patches. > > Thanks, queued for v3.18. This is not on v3.18, what happened ? $ git log --author=balbi@ti.com linus/master ^v3.17 -- arch/arm/mach-omap2/omap_hwmod.c $
On Mon, Nov 03, 2014 at 11:39:52PM -0600, Felipe Balbi wrote: > Hi, > > On Mon, Jul 28, 2014 at 05:24:34AM +0000, Paul Walmsley wrote: > > On Tue, 15 Jul 2014, Felipe Balbi wrote: > > > > > ml->node and sl->node are currently initialized > > > by means of INIT_LIST_HEAD(). That initialiation > > > is followed by a list_add() call. > > > > > > Looking at what both these functions do we will have: > > > > > > ml->node.next = &ml->node; > > > ml->node.prev = &ml->node; > > > oi->master->master_ports.next.prev = &ml->node; > > > ml->node.next = &oi->master->master_ports.next; > > > ml->node.prev = &oi->master->master_ports; > > > oi->master->master_ports.next = &ml->node; > > > > > > from this, it's clear that both INIT_LIST_HEAD() calls > > > are unnecessary and can be safely removed. > > > > > > Signed-off-by: Felipe Balbi <balbi@ti.com> > > > --- > > > > > > found by code inspection, boot tested on am437x SK on today's > > > linux-next + pending patches. > > > > Thanks, queued for v3.18. > > This is not on v3.18, what happened ? > > $ git log --author=balbi@ti.com linus/master ^v3.17 -- arch/arm/mach-omap2/omap_hwmod.c > $ ping
Hi On Thu, 6 Nov 2014, Felipe Balbi wrote: > On Mon, Nov 03, 2014 at 11:39:52PM -0600, Felipe Balbi wrote: > > Hi, > > > > On Mon, Jul 28, 2014 at 05:24:34AM +0000, Paul Walmsley wrote: > > > On Tue, 15 Jul 2014, Felipe Balbi wrote: > > > > > > > ml->node and sl->node are currently initialized > > > > by means of INIT_LIST_HEAD(). That initialiation > > > > is followed by a list_add() call. > > > > > > > > Looking at what both these functions do we will have: > > > > > > > > ml->node.next = &ml->node; > > > > ml->node.prev = &ml->node; > > > > oi->master->master_ports.next.prev = &ml->node; > > > > ml->node.next = &oi->master->master_ports.next; > > > > ml->node.prev = &oi->master->master_ports; > > > > oi->master->master_ports.next = &ml->node; > > > > > > > > from this, it's clear that both INIT_LIST_HEAD() calls > > > > are unnecessary and can be safely removed. > > > > > > > > Signed-off-by: Felipe Balbi <balbi@ti.com> > > > > --- > > > > > > > > found by code inspection, boot tested on am437x SK on today's > > > > linux-next + pending patches. > > > > > > Thanks, queued for v3.18. > > > > This is not on v3.18, what happened ? > > > > $ git log --author=balbi@ti.com linus/master ^v3.17 -- arch/arm/mach-omap2/omap_hwmod.c > > $ > > ping I wound up not sending any OMAP patches upstream for the v3.18 merge window - instead just acking them. This one has been requeued for v3.19. - Paul
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index 6c074f3..8194990 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c @@ -2828,12 +2828,10 @@ static int __init _add_link(struct omap_hwmod_ocp_if *oi) _alloc_links(&ml, &sl); ml->ocp_if = oi; - INIT_LIST_HEAD(&ml->node); list_add(&ml->node, &oi->master->master_ports); oi->master->masters_cnt++; sl->ocp_if = oi; - INIT_LIST_HEAD(&sl->node); list_add(&sl->node, &oi->slave->slave_ports); oi->slave->slaves_cnt++;
ml->node and sl->node are currently initialized by means of INIT_LIST_HEAD(). That initialiation is followed by a list_add() call. Looking at what both these functions do we will have: ml->node.next = &ml->node; ml->node.prev = &ml->node; oi->master->master_ports.next.prev = &ml->node; ml->node.next = &oi->master->master_ports.next; ml->node.prev = &oi->master->master_ports; oi->master->master_ports.next = &ml->node; from this, it's clear that both INIT_LIST_HEAD() calls are unnecessary and can be safely removed. Signed-off-by: Felipe Balbi <balbi@ti.com> --- found by code inspection, boot tested on am437x SK on today's linux-next + pending patches. arch/arm/mach-omap2/omap_hwmod.c | 2 -- 1 file changed, 2 deletions(-)