#ifndef __TOOLS_ASM_GENERIC_BITOPS_H #define __TOOLS_ASM_GENERIC_BITOPS_H /* * tools/ copied this from include/asm-generic/bitops.h, bit by bit as it needed * some functions. * * For the benefit of those who are trying to port Linux to another * architecture, here are some C-language equivalents. You should * recode these in the native assembly language, if at all possible. * * C language equivalents written by Theodore Ts'o, 9/26/92 */ #include #include #include #include #include #include #ifndef _TOOLS_LINUX_BITOPS_H_ #error only can be included directly #endif #include #include #endif /* __TOOLS_ASM_GENERIC_BITOPS_H */ e='hidden' name='id' value='93af5e93544328285a6f65f7d47bbea8979b28fb'/> net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2015-06-26 11:14:14 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2015-07-07 01:13:07 +0200
commit93af5e93544328285a6f65f7d47bbea8979b28fb (patch)
tree663bee85700a74fd773f2cf3a4860a0107af0160 /drivers
parentd770e558e21961ad6cfdf0ff7df0eb5d7d4f0754 (diff)
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 <geert+renesas@glider.be> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers')