Libnl compatibility with kernel version - linux

Is there any dependency between libnl and kernel version? I am using kernel version 4.1. What is the stable and suitable version of recommended libnl version for this kernel?
Is the latest libnl version(3.4.0) compatible with older kernel verions 3.x or do we need to select 3.2.25 for this?
I am facing an issue that, older libnl version in latest kernel gives kernel panic when I program more than 10000 routes in kernel, whereas iproute2 is working fine. So, I want to confirm if there is any libnl and kernel version dependency here.

Related

node-webcrypto-ossl, GLIBC_2.32 not found, Manjaro OS

When I try to run an application that uses node-webcrypto-ossl node module I get the error:
Error: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found.
Obviously node-webcrypto-ossl requires an older version of glibc.
The version of glibc installed on my machine is 2.33-5. I've tried downgrading my glibc but ended up with a broken system (fixed it already).
How do I resolve the issue?
Obviously node-webcrypto-ossl requires an older version of glibc.
No. GLIBC is backwards compatible: applications built against older version continue to run fine on newer GLIBC versions.
Your problem is the opposite: you have an application linked against GLIBC_2.32 trying to run against an older version of GLIBC.
The version of glibc installed on my machine is 2.33-5
The application is not using that version; it's using some other GLIBC.
The problem was that I was trying to run my app in docker ...
That's one way running against older than expected GLIBC could happen.

Is there any workaround for glibc (2.28) compilation for very old kernel (older than 3.2.0) using --enable-kernel=VERSION?

I'm trying to cross-compile (from x86_64 linux to ARMv7a) for certain applications. The host was running Linux 4.4.0 and the target was running Linux 3.0.2
I was able to successfully build such application using cross-compile toolchain from Linaro
However, the problem occurred when I executed the binary
Fatal: kernel too old
After some researchs on the Internet, I discovered that workaround would be to also cross-compile glibc as well with --enable-kernel=VERSION option and another problem came with this option.
configure: WARNING: minimum kernel version reset to 3.2.0
Is there any workaround to set kernel version to the one older than 3.2.0?
Is there any workaround to set kernel version to the one older than 3.2.0?
No. Support for kernels below 3.2 was dropped in glibc-2.24, and you can't bring it back (short of reverting the commits that did it).
You will need to build glibc-2.23 or older.

how can i upgrade virtio driver without updating kernel?

Using linux kernel version 2.6.32 and corresponding virtio driver modules version. But need to upgrade all virtio drivers (virtio_net,virtio_blk,virtio_pci, virtio_ring,virtio) alone to latest version without upgrading kernel.
Is this possible, what is the dependency changes needed for kernel to compile ?
Thanks in advance !!!

Can i install an older version of Linux kernel into a new version

I have a college project on Adding a system call to Linux kernel
so is it necessary that the kernel source code that i am compiling and the one that is already installed have to be of same version ?
I mean can i install an older version of kernel into a new version

How is open-iscsi compiled with 3.x kernels?

open-iscsi seems to require 2.6.x kernels and doesn't even compile with the newer (3.x) kernels, specifically 3.8.0 kernel.
Is it supposed to work with newer kernels?
Please see this:
https://groups.google.com/forum/#!topic/open-iscsi/_f4e13cIyNg
The kernel code in the open-iscsi dir only is for really old kernels.
Newer kernels have proper open-iscsi kernel support and you should use
those modules that come with your kernel/distro.
Do the newer kernels already have the support added to them?
My own end goal is to do a cross-compile to MIPS to be run on a 3.x kernel.
What are the iSCSI initiator software that are available to be used with newer linux kernels ?
Yes, linux kernel has open-iscsi support built into it now. When building the latest kernel, configure support for open-iscsi and you should have the module built after a successful build of the kernel.

Resources