diff options
author | Andy Grover <andy.grover@oracle.com> | 2010-01-12 17:19:32 -0500 |
---|---|---|
committer | Andy Grover <andy.grover@oracle.com> | 2010-09-08 21:11:40 -0400 |
commit | a63273d4992603979ddb181b6a8f07082839b39f (patch) | |
tree | 2132efc5d723b02df281dc308d4e892aca295be7 | |
parent | f4dd96f7b27743e568cec519eff0f951c56833c6 (diff) |
RDS: Clear up some confusing code in send_remove_from_sock
The previous code was correct, but made the assumption that
if r_notifier was non-NULL then either r_recverr or r_notify
was true. Valid, but fragile. Changed to explicitly check
r_recverr (shows up in greps for recverr now, too.)
Signed-off-by: Andy Grover <andy.grover@oracle.com>
-rw-r--r-- | net/rds/send.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/rds/send.c b/net/rds/send.c index 72dbe7fc4f54..b751a8e77c41 100644 --- a/net/rds/send.c +++ b/net/rds/send.c | |||
@@ -551,7 +551,7 @@ void rds_send_remove_from_sock(struct list_head *messages, int status) | |||
551 | rds_send_sndbuf_remove(rs, rm); | 551 | rds_send_sndbuf_remove(rs, rm); |
552 | 552 | ||
553 | if (ro->r_active && ro->r_notifier && | 553 | if (ro->r_active && ro->r_notifier && |
554 | (status || ro->r_notify)) { | 554 | (ro->r_notify || (ro->r_recverr && status))) { |
555 | notifier = ro->r_notifier; | 555 | notifier = ro->r_notifier; |
556 | list_add_tail(¬ifier->n_list, | 556 | list_add_tail(¬ifier->n_list, |
557 | &rs->rs_notify_queue); | 557 | &rs->rs_notify_queue); |