[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <57346C0D.8020706@huawei.com>
Date: Thu, 12 May 2016 19:42:05 +0800
From: Xie XiuQi <xiexiuqi@...wei.com>
To: Thomas Gleixner <tglx@...utronix.de>, <hch@...radead.org>
CC: <linux-kernel@...r.kernel.org>, <huawei.libin@...wei.com>,
<wangyijing@...wei.com>
Subject: Re: [PATCH] genirq: export __irq_set_affinity symbol
On 2016/5/12 15:43, Thomas Gleixner wrote:
> On Thu, 12 May 2016, Xie XiuQi wrote:
>
>> __irq_set_affinity is declared in include/linux/interrupt.h, but not
>> been exported.
>>
>> We export it now, so we could use __irq_set_affinity, irq_set_affinity
>> and irq_force_affinity in kernel modules.
>
> Please show the code using the exports first. We don't export symbols w/o
> knowing the usecase.
The default affinity of the interrupts for all devices is always CPU0,
this may cause the latency on CPU0 is very high when some interrupt
occurs very frequently.
I want to migrate an interrupt to another cpu when the driver loading.
My code like this:
/* I want to bind irq_vector to cpu 3 */
...
cpumask_var_t mask;
cpumask_set_cpu(3, mask);
irq_set_affinity(irq_vector, mask);
...
build wanring:
WARNING: "__irq_set_affinity" [/root/drivers/dr.ko] undefined!
insmod error:
dr: Unknown symbol __irq_set_affinity (err 0)
Thanks,
Xie XiuQi
>
> Thanks,
>
> tglx
>
>
Powered by blists - more mailing lists