From: Stephen Rothwell Date: Mon, 19 Dec 2011 04:11:42 +0000 (+1100) Subject: Merge remote-tracking branch 'pm/linux-next' X-Git-Tag: next-20111219~33 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=44ba9c1b7ebaac09cff5545ced6fada3e9b18dfb;p=karo-tx-linux.git Merge remote-tracking branch 'pm/linux-next' Conflicts: fs/xfs/xfs_buf.c --- 44ba9c1b7ebaac09cff5545ced6fada3e9b18dfb diff --cc arch/arm/mach-s3c64xx/pm.c index 0868d1331912,7d3e81b9dd06..055dac90e0e2 --- a/arch/arm/mach-s3c64xx/pm.c +++ b/arch/arm/mach-s3c64xx/pm.c @@@ -181,10 -325,27 +325,29 @@@ static void s3c64xx_pm_prepare(void __raw_writel(__raw_readl(S3C64XX_WAKEUP_STAT), S3C64XX_WAKEUP_STAT); } - static int s3c64xx_pm_init(void) + int __init s3c64xx_pm_init(void) + { + int i; + + s3c_pm_init(); + + for (i = 0; i < ARRAY_SIZE(s3c64xx_always_on_pm_domains); i++) + pm_genpd_init(&s3c64xx_always_on_pm_domains[i]->pd, + &pm_domain_always_on_gov, false); + + for (i = 0; i < ARRAY_SIZE(s3c64xx_pm_domains); i++) + pm_genpd_init(&s3c64xx_pm_domains[i]->pd, NULL, false); + + if (dev_get_platdata(&s3c_device_fb.dev)) + pm_genpd_add_device(&s3c64xx_pm_f.pd, &s3c_device_fb.dev); + + return 0; + } + + static __init int s3c64xx_pm_initcall(void) { + u32 val; + pm_cpu_prep = s3c64xx_pm_prepare; pm_cpu_sleep = s3c64xx_cpu_suspend; pm_uart_udivslot = 1; diff --cc fs/xfs/xfs_buf.c index f84777e3a7f6,018829936d6d..4dff85c7d7eb --- a/fs/xfs/xfs_buf.c +++ b/fs/xfs/xfs_buf.c @@@ -1701,8 -1701,12 +1701,8 @@@ xfsbufd struct list_head tmp; struct blk_plug plug; - if (unlikely(freezing(current))) { - set_bit(XBT_FORCE_SLEEP, &target->bt_flags); + if (unlikely(freezing(current))) - refrigerator(); + try_to_freeze(); - } else { - clear_bit(XBT_FORCE_SLEEP, &target->bt_flags); - } /* sleep for a long time if there is nothing to do. */ if (list_empty(&target->bt_delwri_queue))