diff options
author | Krishna Kumar <krkumar2@in.ibm.com> | 2006-10-17 10:09:09 +0530 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2006-11-29 15:33:05 -0800 |
commit | f115db4803effd8207c3169590fb3f13336a4093 (patch) | |
tree | e485659a0593e06583a661ec83e20647d90a964e /drivers/infiniband | |
parent | e4022274cf8df1f78f9e20ba7e199a9edf655422 (diff) | |
download | blackbird-op-linux-f115db4803effd8207c3169590fb3f13336a4093.tar.gz blackbird-op-linux-f115db4803effd8207c3169590fb3f13336a4093.zip |
RDMA/addr: Use time_after_eq() instead of time_after() in queue_req()
In queue_req(), use time_after_eq() instead of time_after()
for following reasons :
- Improves insert time if multiple entries with same time are
present.
- set_timeout need not be called if entry with same time
is added to the list (and that happens to be the entry
with the smallest time), saving atomic/locking operations.
- Earlier entries with same time are deleted first (fifo).
Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Acked-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/core/addr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c index e11187ecc931..a68d7c7df4ca 100644 --- a/drivers/infiniband/core/addr.c +++ b/drivers/infiniband/core/addr.c @@ -139,7 +139,7 @@ static void queue_req(struct addr_req *req) mutex_lock(&lock); list_for_each_entry_reverse(temp_req, &req_list, list) { - if (time_after(req->timeout, temp_req->timeout)) + if (time_after_eq(req->timeout, temp_req->timeout)) break; } |