[dpdk-dev] Incorrect install_dir for Linux kernel modules
Bruce Richardson
bruce.richardson at intel.com
Fri Jun 7 11:29:01 CEST 2019
On Thu, Jun 06, 2019 at 09:33:09PM +0300, Igor Ryzhov wrote:
> Hi everyone,
>
> I faced an issue today with install directory for rte_kni and igb_uio.
> Modules are installed to '/usr/src/...' instead of '/lib/modules/...'.
>
> Right now install_dir for both modules is set to:
>
> install_dir: kernel_dir + '/../extra/dpdk'
>
> where 'kernel_dir' is set manually or automatically to:
>
> kernel_version = run_command('uname', '-r').stdout().strip()
> kernel_dir = '/lib/modules/' + kernel_version + '/build'
>
>
> I believe the intention of using '/../extra/dpdk' was to come back to
> '/lib/modules/kernel_version/' and install the modules there, but as
> '/lib/modules/kernel_version/build' is a symlink, we actually get into
> the '/usr/src/linux-headers-kernel-version' and install modules there.
>
> I see two possible solutions here:
> 1. Add new 'kernel_install_dir' option. If it is not set, set it
> automatically:
>
> kernel_version = run_command('uname', '-r').stdout().strip()
> kernel_install_dir = '/lib/modules/' + kernel_version
>
> and set install_dir to:
> install_dir: kernel_install_dir + '/extra/dpdk'
>
> 2. Replace 'kernel_dir' option with new option 'kernel_version', and do the
> following:
>
> if kernel_version == ''
>
> kernel_version = run_command('uname', '-r').stdout().strip()
>
>
> then set 'kernel_dir' and 'kernel_install_dir' accordingly:
>
> kernel_dir = '/lib/modules/' + kernel_version + '/build'
>
> kernel_install_dir = 'lib/modules/' + kernel_version
>
> and use it for building and installation:
> custom_target('rte_kni',
>
> ...
>
> command: ['make', '-j4', '-C', kernel_dir,
>
> ...
>
> install_dir: kernel_install_dir + '/extra/dpdk',
>
> ...
>
>
> I prefer the second one and already have a patch.
> Can send the patch if maintainers are good with the solution.
>
Thanks for highlighting this, and I agree with option 2 as a good solution.
Please send out the patch.
/Bruce
More information about the dev
mailing list