ACK: [PATCH 5/7] fwts_pm_method.h: move _cleanup_free_ here and share it with s3 and s4

Alex Hung alex.hung at canonical.com
Mon Aug 4 10:03:32 UTC 2014


On 08/01/2014 06:20 PM, Alberto Milone wrote:
> Signed-off-by: Alberto Milone <alberto.milone at canonical.com>
> ---
>   src/acpi/s3/s3.c                 | 9 ---------
>   src/acpi/s4/s4.c                 | 9 ---------
>   src/lib/include/fwts_pm_method.h | 7 +++++++
>   3 files changed, 7 insertions(+), 18 deletions(-)
>
> diff --git a/src/acpi/s3/s3.c b/src/acpi/s3/s3.c
> index 4bd7651..70ebaae 100644
> --- a/src/acpi/s3/s3.c
> +++ b/src/acpi/s3/s3.c
> @@ -29,10 +29,6 @@
>   #include <sys/stat.h>
>   #include <unistd.h>
>
> -static inline void freep(void *);
> -
> -#define _cleanup_free_ __attribute__((cleanup(freep)))
> -
>   #define PM_SUSPEND_PMUTILS		"pm-suspend"
>   #define PM_SUSPEND_HYBRID_PMUTILS	"pm-suspend-hybrid"
>
> @@ -49,11 +45,6 @@ static float s3_suspend_time = 15.0;	/* Maximum allowed suspend time */
>   static float s3_resume_time = 15.0;	/* Maximum allowed resume time */
>   static bool s3_hybrid = false;
>
> -static inline void freep(void *p)
> -{
> -	free(*(void**) p);
> -}
> -
>   static int s3_init(fwts_framework *fw)
>   {
>   	/* Pre-init - make sure wakealarm works so that we can wake up after suspend */
> diff --git a/src/acpi/s4/s4.c b/src/acpi/s4/s4.c
> index 2ce8b3d..8400538 100644
> --- a/src/acpi/s4/s4.c
> +++ b/src/acpi/s4/s4.c
> @@ -27,10 +27,6 @@
>   #include <sys/stat.h>
>   #include <unistd.h>
>
> -static inline void freep(void *);
> -
> -#define _cleanup_free_ __attribute__((cleanup(freep)))
> -
>   #define PM_HIBERNATE	"pm-hibernate"
>
>   #define FWTS_TRACING_BUFFER_SIZE	"/sys/kernel/debug/tracing/buffer_size_kb"
> @@ -45,11 +41,6 @@ static char *s4_quirks = NULL;		/* Quirks to be passed to pm-hibernate */
>   static int  s4_device_check_delay = 15;	/* Time to sleep after waking up and then running device check */
>   static bool s4_min_max_delay = false;
>
> -static inline void freep(void *p)
> -{
> -	free(*(void**) p);
> -}
> -
>   static int s4_init(fwts_framework *fw)
>   {
>   	fwts_list* swap_devs;
> diff --git a/src/lib/include/fwts_pm_method.h b/src/lib/include/fwts_pm_method.h
> index f2dade5..75c9c84 100644
> --- a/src/lib/include/fwts_pm_method.h
> +++ b/src/lib/include/fwts_pm_method.h
> @@ -40,8 +40,10 @@ typedef struct
>   } fwts_pm_method_vars;
>
>   static inline void free_pm_method_vars(void *);
> +static inline void freep(void *);
>
>   #define _cleanup_free_pm_vars_ __attribute__((cleanup(free_pm_method_vars)))
> +#define _cleanup_free_ __attribute__((cleanup(freep)))
>
>   #define PM_SUSPEND_LOGIND		"Suspend"
>   #define PM_SUSPEND_HYBRID_LOGIND	"HybridSleep"
> @@ -78,6 +80,11 @@ static inline void free_pm_method_vars(void *vars)
>   	var = NULL;
>   }
>
> +static inline void freep(void *p)
> +{
> +	free(*(void**) p);
> +}
> +
>   int fwts_logind_init_proxy(fwts_pm_method_vars *fwts_settings);
>   int fwts_logind_wait_for_resume_from_action(fwts_pm_method_vars *fwts_settings,	const char *action,	int minimum_delay);
>   bool fwts_logind_can_suspend(fwts_pm_method_vars *fwts_settings);
>


Acked-by: Alex Hung <alex.hung at canonical.com>



More information about the fwts-devel mailing list