* [dpdk-dev] irq_to_desc undefined when compiling igb_uio
@ 2014-08-26 20:55 Habibi, Michael
2014-08-26 21:32 ` Aaro Koskinen
0 siblings, 1 reply; 4+ messages in thread
From: Habibi, Michael @ 2014-08-26 20:55 UTC (permalink / raw)
To: dev
All,
I am building the latest DPDK version from dpdk.org (1.7.0), last commit 8777aa. I am building with essentially the target defconfig_x86_64-native-linuxapp-gcc (renamed), using a gcc 4.4.6/eglibc 2.15 toolchain and a 2.6.34 linux kernel. During compilation, compiling the igb_uio kernel module results in the following warning:
CC [M] /path/to/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: "irq_to_desc" [/path/to/build/lib/librte_eal/linuxapp/igb_uio/igb_uio.ko] undefined!
This results in an obvious error when trying to load the module,
igb_uio: Unknown symbol irq_to_desc
insmod: cannot insert '/lib/modules/2.6.34/drivers/net/igb_uio.ko': unknown symbol in module
I have verified in our kernel source, as well as the public source for 2.6.34, that irq_to_desc is not an exported function. However the documentation states that the minimum version required is only 2.6.33. Did I setup my environment or build my kernel incorrectly?
We are building our own kernel for our use, so I have no problem rebuilding the kernel to export this symbol, but I wanted to verify with the dpdk developers first to see if this a potential bug or something I've done incorrectly. Thanks!
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] irq_to_desc undefined when compiling igb_uio
2014-08-26 20:55 [dpdk-dev] irq_to_desc undefined when compiling igb_uio Habibi, Michael
@ 2014-08-26 21:32 ` Aaro Koskinen
2014-08-26 21:43 ` Habibi, Michael
0 siblings, 1 reply; 4+ messages in thread
From: Aaro Koskinen @ 2014-08-26 21:32 UTC (permalink / raw)
To: Habibi, Michael; +Cc: dev
Hi,
On Tue, Aug 26, 2014 at 08:55:29PM +0000, Habibi, Michael wrote:
> I have verified in our kernel source, as well as the public
> source for 2.6.34, that irq_to_desc is not an exported function.
> However the documentation states that the minimum version required is
> only 2.6.33. Did I setup my environment or build my kernel incorrectly?
It's probably just that nobody has ever bothered to test latest DPDK
with your kernel version before. Note that Linux 2.6.34 is EOL and you
should upgrade your kernel anyway.
A.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] irq_to_desc undefined when compiling igb_uio
2014-08-26 21:32 ` Aaro Koskinen
@ 2014-08-26 21:43 ` Habibi, Michael
2014-08-26 22:32 ` Stephen Hemminger
0 siblings, 1 reply; 4+ messages in thread
From: Habibi, Michael @ 2014-08-26 21:43 UTC (permalink / raw)
To: Aaro Koskinen; +Cc: dev
I agree the kernel is old but it's what we're stuck with at the moment. It
appears that at least some thought went into this, as the code in question
is actually compatibility code added for older kernel versions such as mine:
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37)
/* Compatability wrapper for new kernel API for IRQ */
#define irq_data irq_desc
#define irq_get_irq_data(irq) irq_to_desc(irq)
#define irq_data_get_msi(data) get_irq_desc_msi(data)
#endif
I may just export the symbol for now. Unfortunately I'm not familiar enough
with this area of the code, but if I end up tackling this I'll see if I can
submit a patch if it hasn't been fixed by then.
Thanks.
P.S. Aaro sorry for the duplicate email. I resent this without my digital signature so it would get through the mailing list.
-----Original Message-----
From: Aaro Koskinen [mailto:aaro.koskinen@iki.fi]
Sent: Tuesday, August 26, 2014 4:33 PM
To: Habibi, Michael
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] irq_to_desc undefined when compiling igb_uio
Hi,
On Tue, Aug 26, 2014 at 08:55:29PM +0000, Habibi, Michael wrote:
> I have verified in our kernel source, as well as the public source for
> 2.6.34, that irq_to_desc is not an exported function.
> However the documentation states that the minimum version required is
> only 2.6.33. Did I setup my environment or build my kernel incorrectly?
It's probably just that nobody has ever bothered to test latest DPDK with your kernel version before. Note that Linux 2.6.34 is EOL and you should upgrade your kernel anyway.
A.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] irq_to_desc undefined when compiling igb_uio
2014-08-26 21:43 ` Habibi, Michael
@ 2014-08-26 22:32 ` Stephen Hemminger
0 siblings, 0 replies; 4+ messages in thread
From: Stephen Hemminger @ 2014-08-26 22:32 UTC (permalink / raw)
To: Habibi, Michael; +Cc: dev, Aaro Koskinen
On Tue, 26 Aug 2014 21:43:15 +0000
"Habibi, Michael" <michael.f.habibi@hp.com> wrote:
> I agree the kernel is old but it's what we're stuck with at the moment. It
> appears that at least some thought went into this, as the code in question
> is actually compatibility code added for older kernel versions such as mine:
>
> #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 37)
> /* Compatability wrapper for new kernel API for IRQ */
> #define irq_data irq_desc
> #define irq_get_irq_data(irq) irq_to_desc(irq)
> #define irq_data_get_msi(data) get_irq_desc_msi(data)
> #endif
>
> I may just export the symbol for now. Unfortunately I'm not familiar enough
> with this area of the code, but if I end up tackling this I'll see if I can
> submit a patch if it hasn't been fixed by then.
>
> Thanks.
>
> P.S. Aaro sorry for the duplicate email. I resent this without my digital signature so it would get through the mailing list.
I did build test against stock 2.6.32 from upstream.
Not going to deal with all the vendor kernel issues.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-08-26 22:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-26 20:55 [dpdk-dev] irq_to_desc undefined when compiling igb_uio Habibi, Michael
2014-08-26 21:32 ` Aaro Koskinen
2014-08-26 21:43 ` Habibi, Michael
2014-08-26 22:32 ` Stephen Hemminger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).