From: Matt Helsley The following config revealed a compilation problem in the suspend self test program included in 2.6.26-rc5-mm2: kernel/power/main.c: In function 'test_suspend': kernel/power/main.c:688: warning: passing argument 2 of 'class_find_device' from incompatible pointer type kernel/power/main.c:688: error: too few arguments to function 'class_find_device' make[2]: *** [kernel/power/main.o] Error 1 # # Power management options # CONFIG_PM=y CONFIG_PM_DEBUG=y CONFIG_PM_VERBOSE=y CONFIG_CAN_PM_TRACE=y CONFIG_PM_TRACE=y CONFIG_PM_TRACE_RTC=y CONFIG_PM_SLEEP=y CONFIG_SUSPEND=y CONFIG_PM_TEST_SUSPEND=y CONFIG_SUSPEND_FREEZER=y # CONFIG_HIBERNATION is not set Fix the compilation error by using NULL to tell class_find_device() that we're initiating an iteration rather than resuming a previously-initiated one. Signed-off-by: Matt Helsley Cc: David Brownell Cc: Ingo Molnar Cc: Pavel Machek Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton --- kernel/power/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN kernel/power/main.c~pm-boot-time-suspend-selftest-vs-linux-next kernel/power/main.c --- a/kernel/power/main.c~pm-boot-time-suspend-selftest-vs-linux-next +++ a/kernel/power/main.c @@ -687,7 +687,7 @@ static int __init test_suspend(void) } /* RTCs have initialized by now too ... can we use one? */ - class_find_device(rtc_class, &pony, has_wakealarm); + class_find_device(rtc_class, NULL, &pony, has_wakealarm); if (pony) rtc = rtc_class_open(pony); if (!rtc) { _