From e950328b2e7f5c8d0931e0219da0c8bca0aca2aa Mon Sep 17 00:00:00 2001 From: Motohiro KOSAKI Date: Thu, 19 May 2011 01:07:05 +0000 Subject: [PATCH] --- yaml --- r: 256660 b: refs/heads/master c: 0cd85e6738976b753fb156d833c94083418b3ae4 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/infiniband/hw/qib/qib_file_ops.c | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 99b5e7d6a4f8..79385d76f131 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 52a09a040dc258ca9eb4fa6530e52ccdbc72e353 +refs/heads/master: 0cd85e6738976b753fb156d833c94083418b3ae4 diff --git a/trunk/drivers/infiniband/hw/qib/qib_file_ops.c b/trunk/drivers/infiniband/hw/qib/qib_file_ops.c index 406fca50d036..a94a46001745 100644 --- a/trunk/drivers/infiniband/hw/qib/qib_file_ops.c +++ b/trunk/drivers/infiniband/hw/qib/qib_file_ops.c @@ -1527,6 +1527,7 @@ static int qib_assign_ctxt(struct file *fp, const struct qib_user_info *uinfo) struct qib_filedata *fd = fp->private_data; const struct qib_ctxtdata *rcd = fd->rcd; const struct qib_devdata *dd = rcd->dd; + unsigned int weight; if (dd->flags & QIB_HAS_SEND_DMA) { fd->pq = qib_user_sdma_queue_create(&dd->pcidev->dev, @@ -1545,8 +1546,8 @@ static int qib_assign_ctxt(struct file *fp, const struct qib_user_info *uinfo) * it just means that sooner or later we don't recommend * a cpu, and let the scheduler do it's best. */ - if (!ret && cpus_weight(current->cpus_allowed) >= - qib_cpulist_count) { + weight = cpumask_weight(tsk_cpus_allowed(current)); + if (!ret && weight >= qib_cpulist_count) { int cpu; cpu = find_first_zero_bit(qib_cpulist, qib_cpulist_count); @@ -1554,13 +1555,13 @@ static int qib_assign_ctxt(struct file *fp, const struct qib_user_info *uinfo) __set_bit(cpu, qib_cpulist); fd->rec_cpu_num = cpu; } - } else if (cpus_weight(current->cpus_allowed) == 1 && - test_bit(first_cpu(current->cpus_allowed), + } else if (weight == 1 && + test_bit(cpumask_first(tsk_cpus_allowed(current)), qib_cpulist)) qib_devinfo(dd->pcidev, "%s PID %u affinity " "set to cpu %d; already allocated\n", current->comm, current->pid, - first_cpu(current->cpus_allowed)); + cpumask_first(tsk_cpus_allowed(current))); } mutex_unlock(&qib_mutex);