linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] opal: Fix the overflow of message notifiers head array
@ 2015-02-10 17:14 Neelesh Gupta
  2015-02-10 17:15 ` [PATCH 2/2] opal: Add message notifier unregister function Neelesh Gupta
  2015-02-11  3:14 ` [PATCH 1/2] opal: Fix the overflow of message notifiers head array Michael Ellerman
  0 siblings, 2 replies; 3+ messages in thread
From: Neelesh Gupta @ 2015-02-10 17:14 UTC (permalink / raw)
  To: mpe, linuxppc-dev, benh

Signed-off-by: Neelesh Gupta <neelegup@linux.vnet.ibm.com>
Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
---
 arch/powerpc/platforms/powernv/opal.c |   12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/arch/powerpc/platforms/powernv/opal.c b/arch/powerpc/platforms/powernv/opal.c
index f10b9ec..2651e22 100644
--- a/arch/powerpc/platforms/powernv/opal.c
+++ b/arch/powerpc/platforms/powernv/opal.c
@@ -305,16 +305,12 @@ void opal_notifier_disable(void)
 int opal_message_notifier_register(enum OpalMessageType msg_type,
 					struct notifier_block *nb)
 {
-	if (!nb) {
-		pr_warning("%s: Invalid argument (%p)\n",
-			   __func__, nb);
-		return -EINVAL;
-	}
-	if (msg_type > OPAL_MSG_TYPE_MAX) {
-		pr_warning("%s: Invalid message type argument (%d)\n",
+	if (!nb || msg_type >= OPAL_MSG_TYPE_MAX) {
+		pr_warning("%s: Invalid arguments, msg_type:%d\n",
 			   __func__, msg_type);
 		return -EINVAL;
 	}
+
 	return atomic_notifier_chain_register(
 				&opal_msg_notifier_head[msg_type], nb);
 }
@@ -351,7 +347,7 @@ static void opal_handle_message(void)
 	type = be32_to_cpu(msg.msg_type);
 
 	/* Sanity check */
-	if (type > OPAL_MSG_TYPE_MAX) {
+	if (type >= OPAL_MSG_TYPE_MAX) {
 		pr_warning("%s: Unknown message type: %u\n", __func__, type);
 		return;
 	}

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] opal: Add message notifier unregister function
  2015-02-10 17:14 [PATCH 1/2] opal: Fix the overflow of message notifiers head array Neelesh Gupta
@ 2015-02-10 17:15 ` Neelesh Gupta
  2015-02-11  3:14 ` [PATCH 1/2] opal: Fix the overflow of message notifiers head array Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Neelesh Gupta @ 2015-02-10 17:15 UTC (permalink / raw)
  To: mpe, linuxppc-dev, benh

Provide an unregister interface for the opal message notifiers
to be called when not needed like during driver unload/remove.

Signed-off-by: Neelesh Gupta <neelegup@linux.vnet.ibm.com>
Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
---
 arch/powerpc/include/asm/opal.h       |    2 ++
 arch/powerpc/platforms/powernv/opal.c |    7 +++++++
 2 files changed, 9 insertions(+)

diff --git a/arch/powerpc/include/asm/opal.h b/arch/powerpc/include/asm/opal.h
index eb95b67..70eb45f 100644
--- a/arch/powerpc/include/asm/opal.h
+++ b/arch/powerpc/include/asm/opal.h
@@ -940,6 +940,8 @@ extern int opal_notifier_unregister(struct notifier_block *nb);
 
 extern int opal_message_notifier_register(enum OpalMessageType msg_type,
 						struct notifier_block *nb);
+extern int opal_message_notifier_unregister(enum OpalMessageType msg_type,
+					    struct notifier_block *nb);
 extern void opal_notifier_enable(void);
 extern void opal_notifier_disable(void);
 extern void opal_notifier_update_evt(uint64_t evt_mask, uint64_t evt_val);
diff --git a/arch/powerpc/platforms/powernv/opal.c b/arch/powerpc/platforms/powernv/opal.c
index 2651e22..6c108ce 100644
--- a/arch/powerpc/platforms/powernv/opal.c
+++ b/arch/powerpc/platforms/powernv/opal.c
@@ -315,6 +315,13 @@ int opal_message_notifier_register(enum OpalMessageType msg_type,
 				&opal_msg_notifier_head[msg_type], nb);
 }
 
+int opal_message_notifier_unregister(enum OpalMessageType msg_type,
+				     struct notifier_block *nb)
+{
+	return atomic_notifier_chain_unregister(
+			&opal_msg_notifier_head[msg_type], nb);
+}
+
 static void opal_message_do_notify(uint32_t msg_type, void *msg)
 {
 	/* notify subscribers */

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] opal: Fix the overflow of message notifiers head array
  2015-02-10 17:14 [PATCH 1/2] opal: Fix the overflow of message notifiers head array Neelesh Gupta
  2015-02-10 17:15 ` [PATCH 2/2] opal: Add message notifier unregister function Neelesh Gupta
@ 2015-02-11  3:14 ` Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Michael Ellerman @ 2015-02-11  3:14 UTC (permalink / raw)
  To: Neelesh Gupta; +Cc: linuxppc-dev

On Tue, 2015-02-10 at 22:44 +0530, Neelesh Gupta wrote:

You forgot to write the changelog.

> Signed-off-by: Neelesh Gupta <neelegup@linux.vnet.ibm.com>
> Reviewed-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
> ---
>  arch/powerpc/platforms/powernv/opal.c |   12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/powerpc/platforms/powernv/opal.c b/arch/powerpc/platforms/powernv/opal.c
> index f10b9ec..2651e22 100644
> --- a/arch/powerpc/platforms/powernv/opal.c
> +++ b/arch/powerpc/platforms/powernv/opal.c
> @@ -305,16 +305,12 @@ void opal_notifier_disable(void)
>  int opal_message_notifier_register(enum OpalMessageType msg_type,
>  					struct notifier_block *nb)
>  {
> -	if (!nb) {
> -		pr_warning("%s: Invalid argument (%p)\n",
> -			   __func__, nb);
> -		return -EINVAL;
> -	}
> -	if (msg_type > OPAL_MSG_TYPE_MAX) {
> -		pr_warning("%s: Invalid message type argument (%d)\n",
> +	if (!nb || msg_type >= OPAL_MSG_TYPE_MAX) {
> +		pr_warning("%s: Invalid arguments, msg_type:%d\n",
>  			   __func__, msg_type);
>  		return -EINVAL;
>  	}
> +
>  	return atomic_notifier_chain_register(
>  				&opal_msg_notifier_head[msg_type], nb);
>  }
> @@ -351,7 +347,7 @@ static void opal_handle_message(void)
>  	type = be32_to_cpu(msg.msg_type);
>  
>  	/* Sanity check */
> -	if (type > OPAL_MSG_TYPE_MAX) {
> +	if (type >= OPAL_MSG_TYPE_MAX) {
>  		pr_warning("%s: Unknown message type: %u\n", __func__, type);
>  		return;
>  	}
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-02-11  3:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-10 17:14 [PATCH 1/2] opal: Fix the overflow of message notifiers head array Neelesh Gupta
2015-02-10 17:15 ` [PATCH 2/2] opal: Add message notifier unregister function Neelesh Gupta
2015-02-11  3:14 ` [PATCH 1/2] opal: Fix the overflow of message notifiers head array Michael Ellerman

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).