From: Geert Uytterhoeven Date: Fri, 26 Jun 2015 09:14:14 +0000 (+0200) Subject: PM / Domains: Avoid infinite loops in attach/detach code X-Git-Tag: omap-for-v4.2/fixes-rc2-v2~30^2~1^4 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=93af5e93544328285a6f65f7d47bbea8979b28fb;p=pandora-kernel.git PM / Domains: Avoid infinite loops in attach/detach code If pm_genpd_{add,remove}_device() keeps on failing with -EAGAIN, we end up with an infinite loop in genpd_dev_pm_{at,de}tach(). This may happen due to a genpd.prepared_count imbalance. This is a bug elsewhere, but it will result in a system lock up, possibly during reboot of an otherwise functioning system. To avoid this, put a limit on the maximum number of loop iterations, using an exponential back-off mechanism. If the limit is reached, the operation will just fail. An error message is already printed. Signed-off-by: Geert Uytterhoeven Signed-off-by: Rafael J. Wysocki --- Reading git-diff-tree failed