mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: David Fries <David@Fries.net>
To: linux-kernel@vger.kernel.org
Cc: Evgeniy Polyakov <zbr@ioremap.net>
Subject: [PATCH 2/4] w1: only send_error when there is an error
Date: Sun,  2 Feb 2014 19:15:01 -0600	[thread overview]
Message-ID: <1391390104-31154-3-git-send-email-David@Fries.net> (raw)
In-Reply-To: <1391390104-31154-1-git-send-email-David@Fries.net>

Otherwise there's an extra reply being sent out for each async
message.  Some commands such as W1_CMD_LIST_SLAVES will be identical
except one message has data and the other doesn't making it difficult
for a program to know if all the slaves just vanished or what happened.

Signed-off-by: David Fries <David@Fries.net>
---
 drivers/w1/w1_netlink.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/w1/w1_netlink.c b/drivers/w1/w1_netlink.c
index a02704a..a6962f5 100644
--- a/drivers/w1/w1_netlink.c
+++ b/drivers/w1/w1_netlink.c
@@ -423,9 +423,11 @@ static void w1_process_cb(struct w1_master *dev, struct w1_async_cmd *async_cmd)
 			err = w1_process_command_master(dev, &node->block->msg,
 				node->m, cmd);
 
-		w1_netlink_send_error(&node->block->msg, node->m, cmd,
-			node->block->portid, err);
-		err = 0;
+		if (err) {
+			w1_netlink_send_error(&node->block->msg, node->m, cmd,
+				node->block->portid, err);
+			err = 0;
+		}
 
 		cmd_data += cmd->len + sizeof(struct w1_netlink_cmd);
 		mlen -= cmd->len + sizeof(struct w1_netlink_cmd);
-- 
1.7.10.4


  parent reply	other threads:[~2014-02-03  1:17 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-03  1:14 [PATCH 0/4] w1: refcnt fix, skip non-error send, docs David Fries
2014-02-03  1:15 ` [PATCH 1/4] w1: fix netlink refcnt leak on error path David Fries
2014-02-03  1:15 ` David Fries [this message]
2014-02-03  1:15 ` [PATCH 3/4] w1: document struct w1_netlink_msg and struct w1_netlink_cmd David Fries
2014-02-03  1:15 ` [PATCH 4/4] w1: update cn_netlink_send documentation David Fries
2014-02-03 23:59 ` [PATCH 0/4] w1: refcnt fix, skip non-error send, docs zbr
2014-02-04  5:51   ` David Fries
2014-02-04 23:48     ` zbr
2014-02-07  5:58       ` David Fries
2014-02-07 21:23         ` zbr
2014-02-07 22:23           ` David Fries
2014-02-07 22:35             ` zbr

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=1391390104-31154-3-git-send-email-David@Fries.net \
    --to=david@fries.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=zbr@ioremap.net \
    /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

Powered by JetHome