Re: [PATCH 1/4] swsusp: Untangle thaw_processes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

> Move the loop from thaw_processes() to a separate function and call it
> independently for kernel threads and user space processes so that the order
> of thawing tasks is clearly visible.
> 
> Drop thaw_kernel_threads() which is never used.
> 
> Signed-off-by: Rafael J. Wysocki <[email protected]>
> ---
>  include/linux/freezer.h |    6 -----
>  kernel/power/process.c  |   55 +++++++++++++++++++++++++++---------------------
>  2 files changed, 33 insertions(+), 28 deletions(-)
> 
> Index: linux-2.6.19-rc5-mm2/include/linux/freezer.h
> ===================================================================
> --- linux-2.6.19-rc5-mm2.orig/include/linux/freezer.h
> +++ linux-2.6.19-rc5-mm2/include/linux/freezer.h
> @@ -1,8 +1,5 @@
>  /* Freezer declarations */
>  
> -#define FREEZER_KERNEL_THREADS 0
> -#define FREEZER_ALL_THREADS 1
> -
>  #ifdef CONFIG_PM
>  /*
>   * Check if a process has been frozen
> @@ -60,8 +57,7 @@ static inline void frozen_process(struct
>  
>  extern void refrigerator(void);
>  extern int freeze_processes(void);
> -#define thaw_processes() do { thaw_some_processes(FREEZER_ALL_THREADS); } while(0)
> -#define thaw_kernel_threads() do { thaw_some_processes(FREEZER_KERNEL_THREADS); } while(0)
> +extern void thaw_processes(void);
>  
>  static inline int try_to_freeze(void)
>  {
> Index: linux-2.6.19-rc5-mm2/kernel/power/process.c
> ===================================================================
> --- linux-2.6.19-rc5-mm2.orig/kernel/power/process.c
> +++ linux-2.6.19-rc5-mm2/kernel/power/process.c
> @@ -20,6 +20,8 @@
>   */
>  #define TIMEOUT	(20 * HZ)
>  
> +#define FREEZER_KERNEL_THREADS 0
> +#define FREEZER_USER_SPACE 1

The variable is named "is_user_space"... so maybe the defines are not
strictly needed?

> +	do_each_thread(g, p) {
> +		if (!freezeable(p))
> +			continue;
>  
> +		if (is_user_space(p)) {
> +			if (!thaw_user_space)
> +				continue;
> +		} else {
> +			if (thaw_user_space)
> +				continue;
> +		}

if (is_user_space(p) != thaw_user_space)
	continue;

?

								Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux