[Galaxy S II General] aydc:
I used CatLog to provide some logs for -unlock with home button brings up recent apps- bug. To replicate: set security to No Lock. Open an app and press power to lock screen. Now unlock with home button. If autobrightness is active, you get the recent apps screen instead of your open app.

Here are logs for no auto brightness and auto brightness:

Without Auto Brightness (it works as it should):

04-15 17:56:42.615 I/power (1996): *** set_screen_state 0
04-15 17:56:42.625 D/SurfaceFlinger(1862): About to give-up screen, flinger = 0x117d918
04-15 17:56:42.775 I/AudioHardwareYamaha(1865): AudioHardware::setParameters(keyValuePairs="screen_state=off")
04-15 17:57:10.680 I/power (1996): *** set_screen_state 1
04-15 17:57:10.680 I/InputDispatcher(1996): Dropped event because input dispatch is disabled.
04-15 17:57:10.685 I/WindowManager(1996): No lock screen!
04-15 17:57:10.745 I/PI.Alarms(9824): Update Alarms start
04-15 17:57:10.755 I/PI.Alarms(9824): Task Notifications: Already displaying the same alarms, no update
04-15 17:57:10.755 I/PI.Alarms(9824): Event Notifications: Already displaying the same alarms, no update
04-15 17:57:10.845 I/AudioHardwareYamaha(1865): AudioHardware::setParameters(keyValuePairs="screen_state=on")
04-15 17:57:10.960 D/SurfaceFlinger(1862): Screen about to return, flinger = 0x117d918
04-15 17:57:11.025 D/dalvikvm(10196): GC_CONCURRENT freed 404K, 36% free 9555K/14855K, paused 1ms+2ms
04-15 17:57:14.720 D/dalvikvm(10196): GC_CONCURRENT freed 173K, 34% free 9892K/14855K, paused 3ms+5ms
04-15 17:57:15.855 W/ThrottleService(1996): unable to find stats for iface pdp0

With Auto Brightness (the bug):

04-15 17:55:34.070 I/power (1996): *** set_screen_state 0
04-15 17:55:34.075 D/SurfaceFlinger(1862): About to give-up screen, flinger = 0x117d918
04-15 17:55:34.190 I/AudioHardwareYamaha(1865): AudioHardware::setParameters(keyValuePairs="screen_state=off")
04-15 17:55:51.680 I/power (1996): *** set_screen_state 1
04-15 17:55:51.720 I/WindowManager(1996): No lock screen!
04-15 17:55:51.725 I/InputDispatcher(1996): Dropped event because input dispatch is disabled.
04-15 17:55:51.725 I/InputDispatcher(1996): Dropped event because input dispatch is disabled.
04-15 17:55:51.785 I/AudioHardwareYamaha(1865): AudioHardware::setParameters(keyValuePairs="screen_state=on")
04-15 17:55:51.965 D/dalvikvm(2104): GC_CONCURRENT freed 518K, 30% free 10088K/14343K, paused 2ms+4ms
04-15 17:55:52.025 D/SurfaceFlinger(1862): Screen about to return, flinger = 0x117d918
04-15 17:55:52.330 D/dalvikvm(2104): GC_CONCURRENT freed 90K, 28% free 10388K/14343K, paused 2ms+23ms
04-15 17:55:52.475 D/dalvikvm(2104): GC_CONCURRENT freed 22K, 26% free 10752K/14343K, paused 1ms+9ms
04-15 17:55:52.595 D/dalvikvm(2104): GC_CONCURRENT freed 3K, 22% free 11262K/14343K, paused 1ms+2ms
04-15 17:55:54.180 D/OpenGLRenderer(2104): Flushing caches (mode 0)
04-15 17:55:54.275 V/PhoneStatusBar(2104): setLightsOn(true)
04-15 17:55:54.325 W/InputManagerService(1996): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@417972f8
04-15 17:55:57.040 D/dalvikvm(10196): GC_CONCURRENT freed 4586K, 33% free 10077K/14855K, paused 3ms+9ms

I hope this helps pinpoint the issue.