From: Julia Lawall Date: Mon, 16 Jul 2012 15:25:56 +0000 (-0600) Subject: PCI: hotplug: ensure a consistent return value in error case X-Git-Tag: v3.6-rc1~112^2~2^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=83d057107382b74a4b15c59971631aa3542599a5;p=pandora-kernel.git PCI: hotplug: ensure a consistent return value in error case Typically, the return value desired for the failure of a function with an integer return value is a negative integer. In these cases, the return value is sometimes a negative integer and sometimes 0, due to a subsequent initialization of the return variable within the loop. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @r exists@ identifier ret; position p; constant C; expression e1,e3,e4; statement S; @@ ret = -C ... when != ret = e3 when any if@p (...) S ... when any if (\(ret != 0\|ret < 0\|ret > 0\) || ...) { ... return ...; } ... when != ret = e3 when any *if@p (...) { ... when != ret = e4 return ret; } // [bhelgaas: squashed into one patch] Signed-off-by: Julia Lawall Signed-off-by: Bjorn Helgaas --- Reading git-diff-tree failed