All of lore.kernel.org
 help / color / mirror / Atom feed
* How to distribute IRQs to all cores
@ 2011-08-25 11:08 J.Hwan Kim
  2011-08-25 18:19 ` Akash
  0 siblings, 1 reply; 3+ messages in thread
From: J.Hwan Kim @ 2011-08-25 11:08 UTC (permalink / raw)
  To: kernelnewbies

Hi, everyone

The interrupts of my ixgbevf driver occurs only Core 0
although the user space "irqbalance" serivce is working.

How can I distribute the interrupt of RX in ixgbevf to all cores?
Is there any kernel compile option for it ?


cat /proc/interrupts | grep "isv"
   97:          8          0          0          0          0          
0          0          0   PCI-MSI-edge      isv0-rx-0
   99:          7          0          0          0          0          
0          0          0   PCI-MSI-edge      isv0:lsc
  103:       2059      0          0          0          0          
0          0          0   PCI-MSI-edge      isv2-rx-0
  104:         14        0          0          0          0          
0          0          0   PCI-MSI-edge      isv2-tx-0
  105:          1         0          0          0          0          
0          0          0   PCI-MSI-edge      isv2:mbx

"isv" is netdevice name of my ixgbevf.



Thanks in advance.

Best Regards,

J.Hwan Kim

^ permalink raw reply	[flat|nested] 3+ messages in thread

* How to distribute IRQs to all cores
  2011-08-25 11:08 How to distribute IRQs to all cores J.Hwan Kim
@ 2011-08-25 18:19 ` Akash
  2011-08-26  2:13   ` J.Hwan Kim
  0 siblings, 1 reply; 3+ messages in thread
From: Akash @ 2011-08-25 18:19 UTC (permalink / raw)
  To: kernelnewbies

Try programming the CPU-irq affinity by writing to

/proc/irq/<irq-number>/smp_affinity

For example masks for irqs could be :
irq 97 - 0x1
99     - 0x2
103   - 0x4
104   - 0x8

That way, you are hardcoding on which cpu the particular irqs should land.

HTH
Akash

On Thu, Aug 25, 2011 at 4:08 AM, J.Hwan Kim <frog1120@gmail.com> wrote:

> Hi, everyone
>
> The interrupts of my ixgbevf driver occurs only Core 0
> although the user space "irqbalance" serivce is working.
>
> How can I distribute the interrupt of RX in ixgbevf to all cores?
> Is there any kernel compile option for it ?
>
>
> cat /proc/interrupts | grep "isv"
>   97:          8          0          0          0          0
> 0          0          0   PCI-MSI-edge      isv0-rx-0
>   99:          7          0          0          0          0
> 0          0          0   PCI-MSI-edge      isv0:lsc
>  103:       2059      0          0          0          0
> 0          0          0   PCI-MSI-edge      isv2-rx-0
>  104:         14        0          0          0          0
> 0          0          0   PCI-MSI-edge      isv2-tx-0
>  105:          1         0          0          0          0
> 0          0          0   PCI-MSI-edge      isv2:mbx
>
> "isv" is netdevice name of my ixgbevf.
>
>
>
> Thanks in advance.
>
> Best Regards,
>
> J.Hwan Kim
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110825/3ba4edb9/attachment.html 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* How to distribute IRQs to all cores
  2011-08-25 18:19 ` Akash
@ 2011-08-26  2:13   ` J.Hwan Kim
  0 siblings, 0 replies; 3+ messages in thread
From: J.Hwan Kim @ 2011-08-26  2:13 UTC (permalink / raw)
  To: kernelnewbies

On 2011? 08? 26? 03:19, Akash wrote:
> Try programming the CPU-irq affinity by writing to
>
> /proc/irq/<irq-number>/smp_affinity
>
> For example masks for irqs could be :
> irq 97 - 0x1
> 99     - 0x2
> 103   - 0x4
> 104   - 0x8
>
> That way, you are hardcoding on which cpu the particular irqs should land.
>
> HTH
> Akash
>
> On Thu, Aug 25, 2011 at 4:08 AM, J.Hwan Kim <frog1120@gmail.com 
> <mailto:frog1120@gmail.com>> wrote:
>
>     Hi, everyone
>
>     The interrupts of my ixgbevf driver occurs only Core 0
>     although the user space "irqbalance" serivce is working.
>
>     How can I distribute the interrupt of RX in ixgbevf to all cores?
>     Is there any kernel compile option for it ?
>
>
>     cat /proc/interrupts | grep "isv"
>       97:          8          0          0          0          0
>     0          0          0   PCI-MSI-edge      isv0-rx-0
>       99:          7          0          0          0          0
>     0          0          0   PCI-MSI-edge      isv0:lsc
>      103:       2059      0          0          0          0
>     0          0          0   PCI-MSI-edge      isv2-rx-0
>      104:         14        0          0          0          0
>     0          0          0   PCI-MSI-edge      isv2-tx-0
>      105:          1         0          0          0          0
>     0          0          0   PCI-MSI-edge      isv2:mbx
>
>     "isv" is netdevice name of my ixgbevf.
>

Thank you for reply.
I want to distribute, for example, IRQ 103 to all cores as follows :
103 : 111 2344 1334 3233 2233 1111 2233 362262  isv2-rx-0
That cannot be achieved by setting /proc/irq/irq-num/smp_affinity.





-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110826/325ee98d/attachment.html 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-08-26  2:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-08-25 11:08 How to distribute IRQs to all cores J.Hwan Kim
2011-08-25 18:19 ` Akash
2011-08-26  2:13   ` J.Hwan Kim

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.