Hello Kienan, Thanks to your advice, I managed to load some modules. However, I encountered errors like these when running `dmesg | grep lttng`:
``` [ 218.043672] module lttng_kretprobes: .gnu.linkonce.this_module section size must match the kernel's built struct module size at run time [ 650.560883] lttng_kretprobes: module verification failed: signature and/or required key missing - tainting kernel [ 1468.329988] module lttng_ring_buffer_client_discard: .gnu.linkonce.this_module section size must match the kernel's built struct module size at run time ``` I'm unsure of their meaning. After loading my module, how can I be certain that my tracepoints are active? I read online that people use `sudo lttng list -k` for this purpose, but when I tried it, I got the error: "Error: Unable to list kernel events: Kernel tracer not available". Is there another way? Thank you for your assistance. Le mer. 17 juill. 2024, à 12 h 08, Kienan Stewart <kstew...@efficios.com> a écrit : > Hi François, > > On 7/17/24 11:47 AM, François Belias wrote: > > Hello, Kienan > > > > > > *Right. Which kernel are you actually running at this time? You can check > > using: `uname -a`* > > Linux philippe 6.5.0-41-generic #41~22.04.2-Ubuntu SMP PREEMPT_DYNAMIC > > Mon Jun 3 11:32:55 UTC 2 x86_64 x86_64 x86_64 GNU/Linux > > > > *Since you've got a few different images and headers installed, it is > > possible to check that same info the linux-source package: `dpkg -l | > > grep linux-source`.* > > ii linux-source 5.15.0.116.116 > > all Linux kernel source with > > Ubuntu patches > > ii linux-source-5.15.0 5.15.0-116.126 > > all Linux kernel source for version > > 5.15.0 with Ubuntu patches > > ii linux-source-6.5.0 6.5.0-44.44~22.04.1 > > all Linux kernel source for version > > Your currently running `6.5.0-41-generic #41~22.04.2-Ubuntu` > > You have source installed for `6.5.0-44.44~22.04.1`. From your previous > e-mail, there is also a linux image installed: > > ``` > linux-image-6.5.0-44-generic 6.5.0-44.44~22.04.1 > ``` > > Assuming you are using grub, could you verify that one of the options > for booting in `/boot/grub/grub.cfg` is linux 6.5.0-44.44. Look for the > lines similar to the following inside a menu entry block: > > (Note my example is 5.15.0-116, but you will be lookng for 6.5.0-44 or > 6.5.0-44.44) > > ``` > linux /boot/vmlinuz-5.15.0-116-generic root=.... > initrd /boot/initrd.img-5.15.0-116-generic > ``` > > If you have a grub entry for linux 6.5.0-44.44, could you reboot to run > on the linux 6.5.0-44.44. > > After rebooting verify with `uname -a` that your kernel version is > 6.5.0-44.44. > > Make sure you have unpacked the linux sources: > > ``` > # Approximating the version numbers, since I don't have 6.5.0 installed > cd /usr/src/linux-source-6.5.0 > bunzip2 linux-source-6.5.0.tar.bz2 > tar -xf linux-source-6.5.0.tar > ``` > > Then retry the build with > `KERNELDIR=/usr/src/linux-source-6.5.0/linux-source-6.5.0/` > > I haven't personally tried the full steps on an Ubuntu installation so > you may still need to tweak a couple of things, but I think this should > get you on the right path. > > Really the important thing is to make sure that the kernel source code > matches the kernel you are running. > > > 6.5.0 with Ubuntu patches > > *Could you run either `apt-cache policy` or `apt policy` and `apt-mark > > showhold` in order to know which sources you have configured.* > > For this part, /*apt-mark showhold*/ gave me nothing I don't know what > > is means. > > `apt-mark showhold` will show any packages that are on hold - it is a > way of marking packages that shouldn't be updated. > > As you have the linux-source for 6.5.0-44.44~22.04.1, I don't think it > will be necessary to have the output of `apt-cache policy`. > > thanks, > kienan > > > > > I am looking at the links, but nothing seems to match my kernel version. > > > > Thanks for your assistance. > > > > Le mer. 17 juill. 2024, à 11 h 46, François Belias > > <beliasos...@gmail.com <mailto:beliasos...@gmail.com>> a écrit : > > > > Hello, Kienan > > > > > > *Right. Which kernel are you actually running at this time? You can > > check > > using: `uname -a`* > > Linux philippe 6.5.0-41-generic #41~22.04.2-Ubuntu SMP > > PREEMPT_DYNAMIC Mon Jun 3 11:32:55 UTC 2 x86_64 x86_64 x86_64 > GNU/Linux > > > > *Since you've got a few different images and headers installed, it is > > possible to check that same info the linux-source package: `dpkg -l | > > grep linux-source`.* > > ii linux-source 5.15.0.116.116 > > all Linux kernel source > > with Ubuntu patches > > ii linux-source-5.15.0 5.15.0-116.126 > > all Linux kernel source for > > version 5.15.0 with Ubuntu patches > > ii linux-source-6.5.0 6.5.0-44.44~22.04.1 > > all Linux kernel source for > > version 6.5.0 with Ubuntu patches > > *Could you run either `apt-cache policy` or `apt policy` and > `apt-mark > > showhold` in order to know which sources you have configured.* > > For this part, /*apt-mark showhold*/ gave me nothing I don't know > > what is means. > > > > I am looking at the links, but nothing seems to match my kernel > > version. > > > > Thanks for your assistance. > > > > Le mer. 17 juill. 2024, à 10 h 55, Kienan Stewart > > <kstew...@efficios.com <mailto:kstew...@efficios.com>> a écrit : > > > > Hi François, > > > > On 7/16/24 4:34 PM, François Belias wrote: > > > Hello Kienan, > > > > > > When I proceed with the following steps: > > > > > > ``` > > > # Warning: this removes all untracked content from the > > lttng-modules > > > directory > > > cd /path/to/lttng-modules-source > > > git clean -dxf > > > > > > make > > > sudo make modules_install > > > sudo depmod -a > > > ``` > > > > > > I encounter a warning in > > > `/home/philippe/lttng-modules/src/probes/Kbuild:79` stating > > "File > > > ./arch/x86/kvm/lapic.h not found. Probe 'kvm' x86-specific is > > disabled. > > > Use full kernel source tree to enable it." Although > > everything compiles > > > fine and I'm able to load modules, when I execute `sudo lttng > > list -k`, > > > I don't see the tracepoints `kvm_entry` and `kvm_exit`, which > > I believe > > > should be available. Could this be due to not using my full > > kernel tree > > > during compilation? > > > > > > Exactly. Those probes depend on having the full kernel source as > > they > > require private headers which aren't shipped as part of the > > `linux-headers` package. > > > > > > > > Here are the answers to your questions: > > > > > > - *Where did `/usr/src/linux-source-6.5.0` come from?* > > > I initially attempted `sudo apt-get update && sudo apt-get > > install > > > linux-source`, but it gave me this answer */linux-source is > > already the > > > newest version (5.15.0.116.116)/*`, which doesn't match my > > current > > > kernel version. So, I downloaded it directly from kernel.org > > <http://kernel.org> > > > <http://kernel.org <http://kernel.org>> using this command: > > `wget > > > > > https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz` > <https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz> > > <https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz> > > > > > <https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz` > <https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz> > > <https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.tar.xz > >>. > > > > > > > Right. Which kernel are you actually running at this time? You > > can check > > using: `uname -a` > > > > In any case, Linux upstream 6.5 is not the same as Ubuntus's 6.5. > > > > > - *Which Linux distribution and version are you using?* > > > Running `lsb_release -a` gives me: > > > ``` > > > No LSB modules are available. > > > Distributor ID: Ubuntu > > > Description: Ubuntu 22.04.4 LTS > > > Release: 22.04 > > > Codename: jammy > > > ``` > > > > > > - *Assuming your distribution has kernel packages, which do > > you have > > > installed, and do you have the corresponding kernel headers > > package > > > installed?* > > > > > > Running `dpkg -l | grep linux-image` shows these installed > > packages: > > > ``` > > > ii linux-image-5.15.0-116-generic 5.15.0-116.126 > > > amd64 Signed kernel image generic > > > ii linux-image-6.5.0-28-generic > > 6.5.0-28.29~22.04.1 > > > amd64 Signed kernel image generic > > > ii linux-image-6.5.0-41-generic > > 6.5.0-41.41~22.04.2 > > > amd64 Signed kernel image generic > > > ii linux-image-6.5.0-44-generic > > 6.5.0-44.44~22.04.1 > > > amd64 Signed kernel image generic > > > ii linux-image-generic 5.15.0.116.116 > > > amd64 Generic Linux kernel image > > > ii linux-image-generic-hwe-22.04 > > 6.5.0.44.44~22.04.1 > > > amd64 Generic Linux kernel image > > > ``` > > > > > > And `dpkg -l | grep linux-headers` shows these installed > > header packages: > > > ``` > > > ii linux-headers-5.15.0-116 > > 5.15.0-116.126 all > > > Header files related to Linux kernel version 5.15.0 > > > ii linux-headers-5.15.0-116-generic 5.15.0-116.126 > > > amd64 Linux kernel headers for version 5.15.0 on 64 bit > > x86 SMP > > > ii linux-headers-6.5.0-28-generic > > 6.5.0-28.29~22.04.1 > > > amd64 Linux kernel headers for version 6.5.0 on 64 bit > > x86 SMP > > > ii linux-headers-6.5.0-41-generic > > 6.5.0-41.41~22.04.2 > > > amd64 Linux kernel headers for version 6.5.0 on 64 bit > > x86 SMP > > > ii linux-headers-6.5.0-44-generic > > 6.5.0-44.44~22.04.1 > > > amd64 Linux kernel headers for version 6.5.0 on 64 bit > > x86 SMP > > > ii linux-headers-generic 5.15.0.116.116 > > > amd64 Generic Linux kernel headers > > > ii linux-headers-generic-hwe-22.04 > > 6.5.0.44.44~22.04.1 > > > amd64 Generic Linux kernel headers > > > ``` > > > > > > > Since you've got a few different images and headers installed, > > it is > > possible to check that same info the linux-source package: `dpkg > > -l | > > grep linux-source`. > > > > Maybe one thing tripping this process up is that you don't have > > an apt > > source that provides linux-source that matches the kernel you > > are using. > > Could you run either `apt-cache policy` or `apt policy` and > > `apt-mark > > showhold` in order to know which sources you have configured. > > > > There are also alternative sources for the full source tree: > > > > - You could download the specific package from > > packages.ubuntu.com <http://packages.ubuntu.com>. See > > https://packages.ubuntu.com <https://packages.ubuntu.com> and > > use `apt install ./downloaded_package.deb` > > > > - You could clone the kernel source for Ubuntu and checkout the > > appropriate tag. See > > > https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy/refs/tags > < > https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy/refs/tags > > > > > > thanks, > > kienan > > >
_______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev