linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Zhang Rui <rui.zhang@intel.com>
To: Eduardo Valentin <eduardo.valentin@ti.com>
Cc: durgadoss.r@intel.com, linux-pm@lists.linux-foundation.org,
	linux-pm@vger.kernel.org
Subject: Re: [PATCH RESEND 1/4] thermal: Use thermal zone device id in netlink messages
Date: Wed, 16 Jan 2013 10:43:31 +0800	[thread overview]
Message-ID: <1358304211.2252.23.camel@rzhang1-mobl4> (raw)
In-Reply-To: <1357140582-8151-2-git-send-email-eduardo.valentin@ti.com>

On Wed, 2013-01-02 at 17:29 +0200, Eduardo Valentin wrote:
> This patch changes the function thermal_generate_netlink_event
> to receive a thermal zone device instead of a originator id.
> 
> This way, the messages will always be bound to a thermal zone.
> 
> Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com>

applied to thermal -next.

thanks,
rui
> ---
>  Documentation/thermal/sysfs-api.txt |    5 +++--
>  drivers/thermal/thermal_sys.c       |    8 ++++++--
>  include/linux/thermal.h             |    6 ++++--
>  3 files changed, 13 insertions(+), 6 deletions(-)
> 
> diff --git a/Documentation/thermal/sysfs-api.txt b/Documentation/thermal/sysfs-api.txt
> index 88c0233..526d4b9 100644
> --- a/Documentation/thermal/sysfs-api.txt
> +++ b/Documentation/thermal/sysfs-api.txt
> @@ -329,8 +329,9 @@ The framework includes a simple notification mechanism, in the form of a
>  netlink event. Netlink socket initialization is done during the _init_
>  of the framework. Drivers which intend to use the notification mechanism
>  just need to call thermal_generate_netlink_event() with two arguments viz
> -(originator, event). Typically the originator will be an integer assigned
> -to a thermal_zone_device when it registers itself with the framework. The
> +(originator, event). The originator is a pointer to struct thermal_zone_device
> +from where the event has been originated. An integer which represents the
> +thermal zone device will be used in the message to identify the zone. The
>  event will be one of:{THERMAL_AUX0, THERMAL_AUX1, THERMAL_CRITICAL,
>  THERMAL_DEV_FAULT}. Notification can be sent when the current temperature
>  crosses any of the configured thresholds.
> diff --git a/drivers/thermal/thermal_sys.c b/drivers/thermal/thermal_sys.c
> index 8c8ce80..d85f51f 100644
> --- a/drivers/thermal/thermal_sys.c
> +++ b/drivers/thermal/thermal_sys.c
> @@ -1711,7 +1711,8 @@ static struct genl_multicast_group thermal_event_mcgrp = {
>  	.name = THERMAL_GENL_MCAST_GROUP_NAME,
>  };
>  
> -int thermal_generate_netlink_event(u32 orig, enum events event)
> +int thermal_generate_netlink_event(struct thermal_zone_device *tz,
> +					enum events event)
>  {
>  	struct sk_buff *skb;
>  	struct nlattr *attr;
> @@ -1721,6 +1722,9 @@ int thermal_generate_netlink_event(u32 orig, enum events event)
>  	int result;
>  	static unsigned int thermal_event_seqnum;
>  
> +	if (!tz)
> +		return -EINVAL;
> +
>  	/* allocate memory */
>  	size = nla_total_size(sizeof(struct thermal_genl_event)) +
>  	       nla_total_size(0);
> @@ -1755,7 +1759,7 @@ int thermal_generate_netlink_event(u32 orig, enum events event)
>  
>  	memset(thermal_event, 0, sizeof(struct thermal_genl_event));
>  
> -	thermal_event->orig = orig;
> +	thermal_event->orig = tz->id;
>  	thermal_event->event = event;
>  
>  	/* send multicast genetlink message */
> diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> index fe82022..e85ac70 100644
> --- a/include/linux/thermal.h
> +++ b/include/linux/thermal.h
> @@ -244,9 +244,11 @@ int thermal_register_governor(struct thermal_governor *);
>  void thermal_unregister_governor(struct thermal_governor *);
>  
>  #ifdef CONFIG_NET
> -extern int thermal_generate_netlink_event(u32 orig, enum events event);
> +extern int thermal_generate_netlink_event(struct thermal_zone_device *tz,
> +						enum events event);
>  #else
> -static inline int thermal_generate_netlink_event(u32 orig, enum events event)
> +static int thermal_generate_netlink_event(struct thermal_zone_device *tz,
> +						enum events event)
>  {
>  	return 0;
>  }



  parent reply	other threads:[~2013-01-16  2:43 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-02 15:29 [PATCH RESEND 0/4] thermal sys: couple of fixes and cleanups Eduardo Valentin
2013-01-02 15:29 ` [PATCH RESEND 1/4] thermal: Use thermal zone device id in netlink messages Eduardo Valentin
2013-01-02 15:48   ` R, Durgadoss
2013-01-02 15:55     ` Eduardo Valentin
2013-01-16  2:43   ` Zhang Rui [this message]
2013-01-02 15:29 ` [PATCH RESEND 2/4] thermal: remove unnecessary include Eduardo Valentin
2013-01-02 15:48   ` R, Durgadoss
2013-01-16  2:43   ` Zhang Rui
2013-01-02 15:29 ` [PATCH RESEND 3/4] thermal: cleanup: use dev_* helper functions Eduardo Valentin
2013-01-02 15:51   ` R, Durgadoss
2013-01-16  2:44   ` Zhang Rui
2013-01-02 15:29 ` [PATCH RESEND 4/4] thermal: check for invalid trip setup when registering thermal device Eduardo Valentin
2013-01-02 15:53   ` R, Durgadoss
2013-01-16  2:45   ` Zhang Rui
2013-01-16 14:22     ` Eduardo Valentin
2013-01-17  7:10       ` Zhang Rui

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1358304211.2252.23.camel@rzhang1-mobl4 \
    --to=rui.zhang@intel.com \
    --cc=durgadoss.r@intel.com \
    --cc=eduardo.valentin@ti.com \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=linux-pm@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).