Whamcloud - gitweb
LU-5678 o2iblnd: connection refcount fix for kiblnd_post_rx 52/12852/3
authorLiang Zhen <liang.zhen@intel.com>
Tue, 25 Nov 2014 15:57:49 +0000 (23:57 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Sat, 10 Jan 2015 04:37:59 +0000 (04:37 +0000)
commit01eb2aefde36892d7a9576b6c6dd18da8529933f
tree118e1a527d70b094abcc97c0f23ee29c02a27964
parent33984c012883a7c714429d2c612cf6dcda191974
LU-5678 o2iblnd: connection refcount fix for kiblnd_post_rx

kiblnd_post_rx() can't refer to rx::rx_conn anymore after
ib_post_recv() because this rx can be polled out by another thread
which may drop this rx and destroy rx::rx_conn.

This patch fixes this issue by taking an extra refcount on connection
before calling ib_post_recv().

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: I100f186ea372b1e8aa46eb18a5e29b31b2cdd9a7
Reviewed-on: http://review.whamcloud.com/12852
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Isaac Huang <he.huang@intel.com>
Reviewed-by: Amir Shehata <amir.shehata@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lnet/klnds/o2iblnd/o2iblnd_cb.c