All of lore.kernel.org
 help / color / mirror / Atom feed
* pci_alloc_irq_vectors problem further investigation
@ 2022-12-12 10:35 Danilo Cezar Zanella
  2022-12-19 13:30 ` Daniel Wagner
  0 siblings, 1 reply; 2+ messages in thread
From: Danilo Cezar Zanella @ 2022-12-12 10:35 UTC (permalink / raw)
  To: linux-rt-users

Hi,

There is a driver developed by EmbeddedTS (the board is Marvell
armada-385, dual core processor) that tries to allocate 32 MSI
interrupts, using pci_alloc_irq_vectors(..,32,32,...). When I ran the
Kernel (4.14 NON RT) provided by them, it worked fine, but when I
recompiled the kernel (4.19.249 using the RT_FULL options), it didn't,
returning -ENOSPC.
In RT_FULL Kernel:
- First fact, when I ran pci_msi_vec_count, it returned 32.
- Second, if I changed to 16, calling
pci_alloc_irq_vectors(..,16,16,...), it  worked.
I traced this kernel and I found that:
pci_alloc_irq_vectors_affinity
  __pci_enable_msi_range
    msi_capability_init
      pci_msi_setup_msi_irqs
        msi_domain_alloc_irqs
          __irq_domain_alloc_irqs
            irq_domain_alloc_descs
              Then I stopped here...

I searched on the Internet, but I couldn't find anything.
Has someone had a similar problem?
Is there something that I missed? Some configuration??

Thanks

-- 
Danilo C. Zanella
Radio Astronomy Group  / IAG
University of Sao Paulo
Rua do Matão, 1226 - Cidade Universitária São Paulo - SP - Brasil - 05508-090
Tel.: +55 11 3091-2743

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

* Re: pci_alloc_irq_vectors problem further investigation
  2022-12-12 10:35 pci_alloc_irq_vectors problem further investigation Danilo Cezar Zanella
@ 2022-12-19 13:30 ` Daniel Wagner
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Wagner @ 2022-12-19 13:30 UTC (permalink / raw)
  To: Danilo Cezar Zanella; +Cc: linux-rt-users

On Mon, Dec 12, 2022 at 07:35:14AM -0300, Danilo Cezar Zanella wrote:
> There is a driver developed by EmbeddedTS (the board is Marvell
> armada-385, dual core processor) that tries to allocate 32 MSI
> interrupts, using pci_alloc_irq_vectors(..,32,32,...). When I ran the
> Kernel (4.14 NON RT) provided by them, it worked fine, but when I
> recompiled the kernel (4.19.249 using the RT_FULL options), it didn't,
> returning -ENOSPC.

Does the kernel 'provided by them' carry additional patches for your
board?

> In RT_FULL Kernel:
> - First fact, when I ran pci_msi_vec_count, it returned 32.
> - Second, if I changed to 16, calling
> pci_alloc_irq_vectors(..,16,16,...), it  worked.
> I traced this kernel and I found that:
> pci_alloc_irq_vectors_affinity
>   __pci_enable_msi_range
>     msi_capability_init
>       pci_msi_setup_msi_irqs
>         msi_domain_alloc_irqs
>           __irq_domain_alloc_irqs
>             irq_domain_alloc_descs
>               Then I stopped here...
> 
> I searched on the Internet, but I couldn't find anything.
> Has someone had a similar problem?
> Is there something that I missed? Some configuration??

Vendor kernels usually ship changes which are not ported to upstream and
hence upstream kernels might not work or work differently.

Daniel

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

end of thread, other threads:[~2022-12-19 13:30 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-12 10:35 pci_alloc_irq_vectors problem further investigation Danilo Cezar Zanella
2022-12-19 13:30 ` Daniel Wagner

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.