diff --git a/config-debug b/config-debug index 19ae4656f..e3c1e6e44 100644 --- a/config-debug +++ b/config-debug @@ -104,3 +104,8 @@ CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y + +CONFIG_DEBUG_KMEMLEAK=y +CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=1024 +# CONFIG_DEBUG_KMEMLEAK_TEST is not set +CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y diff --git a/kernel.spec b/kernel.spec index ceea70ed4..add1c5ac6 100644 --- a/kernel.spec +++ b/kernel.spec @@ -706,6 +706,9 @@ Patch21227: mac80211-fix-work-removal-on-deauth-request.patch #rhbz 718790 Patch21230: rds-Make-rds_sock_lock-BH-rather-than-IRQ-safe.patch +#rhbz 784345 +Patch21231: realtek_async_autopm.patch + Patch22000: rcu-reintroduce-missing-calls.patch %endif @@ -1306,6 +1309,9 @@ ApplyPatch fs-Inval-cache-for-parent-block-device-if-fsync-called-on-part.patch # Remove overlap between bcma/b43 and brcmsmac and reenable bcm4331 ApplyPatch bcma-brcmsmac-compat.patch +#rhbz 784345 +ApplyPatch realtek_async_autopm.patch + # END OF PATCH APPLICATIONS %endif @@ -1953,6 +1959,12 @@ fi # and build. %changelog +* Mon Jan 30 2012 Dave Jones +- Enable kmemleak (off by default) in kernel-debug (rhbz 782419) + +* Mon Jan 30 2012 Dave Jones +- Test fix for realtek_async_autopm oops from Stanislaw Gruszka (rhbz 784345) + * Mon Jan 30 2012 Dave Jones - Restore the Savage DRM and several others that were accidentally early-deprecated. diff --git a/realtek_async_autopm.patch b/realtek_async_autopm.patch new file mode 100644 index 000000000..3c6b45cca --- /dev/null +++ b/realtek_async_autopm.patch @@ -0,0 +1,13 @@ +diff --git a/drivers/usb/storage/realtek_cr.c b/drivers/usb/storage/realtek_cr.c +index 1f62723..d32f720 100644 +--- a/drivers/usb/storage/realtek_cr.c ++++ b/drivers/usb/storage/realtek_cr.c +@@ -789,7 +789,7 @@ static void rts51x_suspend_timer_fn(unsigned long data) + rts51x_set_stat(chip, RTS51X_STAT_SS); + /* ignore mass storage interface's children */ + pm_suspend_ignore_children(&us->pusb_intf->dev, true); +- usb_autopm_put_interface(us->pusb_intf); ++ usb_autopm_put_interface_async(us->pusb_intf); + US_DEBUGP("%s: RTS51X_STAT_SS 01," + "intf->pm_usage_cnt:%d, power.usage:%d\n", + __func__,