summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeng Tao <bergwolf@gmail.com>2013-06-07 22:07:21 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-08 22:21:01 -0700
commit5f43264c5320624f3b458c5794f37220c4fc2934 (patch)
tree1fca3fd60762269ab745915b393c329591af45c7
parent5aaf4c27f38e2a40f5b25fd3c43cb4d57b06ae59 (diff)
staging/lustre/lnet: fix build error on i386
make ARCH=i386 allyesconfig gave bellow errors: drivers/built-in.o: In function `kiblnd_create_conn': >> (.text+0x1a74425): undefined reference to `__umoddi3' Reported-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Peng Tao <tao.peng@emc.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
index 221d37311cae..29a97943e4c7 100644
--- a/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
+++ b/drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c
@@ -39,6 +39,7 @@
*/
#include "o2iblnd.h"
+#include <asm/div64.h>
lnd_t the_o2iblnd = {
.lnd_type = O2IBLND,
@@ -694,6 +695,7 @@ kiblnd_get_completion_vector(kib_conn_t *conn, int cpt)
int vectors;
int off;
int i;
+ lnet_nid_t nid = conn->ibc_peer->ibp_nid;
vectors = conn->ibc_cmid->device->num_comp_vectors;
if (vectors <= 1)
@@ -702,7 +704,7 @@ kiblnd_get_completion_vector(kib_conn_t *conn, int cpt)
mask = cfs_cpt_cpumask(lnet_cpt_table(), cpt);
/* hash NID to CPU id in this partition... */
- off = conn->ibc_peer->ibp_nid % cpus_weight(*mask);
+ off = do_div(nid, cpus_weight(*mask));
for_each_cpu_mask(i, *mask) {
if (off-- == 0)
return i % vectors;