diff options
author | Andy Grover <andy.grover@oracle.com> | 2010-01-12 14:19:32 -0800 |
---|---|---|
committer | Andy Grover <andy.grover@oracle.com> | 2010-09-08 18:11:40 -0700 |
commit | a63273d4992603979ddb181b6a8f07082839b39f (patch) | |
tree | 2132efc5d723b02df281dc308d4e892aca295be7 /net/rds/send.c | |
parent | f4dd96f7b27743e568cec519eff0f951c56833c6 (diff) | |
download | linux-stable-a63273d4992603979ddb181b6a8f07082839b39f.tar.gz linux-stable-a63273d4992603979ddb181b6a8f07082839b39f.tar.bz2 linux-stable-a63273d4992603979ddb181b6a8f07082839b39f.zip |
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>
Diffstat (limited to 'net/rds/send.c')
-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) rds_send_sndbuf_remove(rs, rm); if (ro->r_active && ro->r_notifier && - (status || ro->r_notify)) { + (ro->r_notify || (ro->r_recverr && status))) { notifier = ro->r_notifier; list_add_tail(¬ifier->n_list, &rs->rs_notify_queue); |