Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: "François Belias via lttng-dev" <lttng-dev@lists.lttng.org>
To: Kienan Stewart <kstewart@efficios.com>
Cc: lttng-dev@lists.lttng.org
Subject: Re: [lttng-dev] loading modules with modprobe
Date: Wed, 17 Jul 2024 20:44:11 -0400	[thread overview]
Message-ID: <CAHD10UgXdBoKGwSdXQk__OW7E1abyQKA=2rgmKry6p6ZQxmTyw@mail.gmail.com> (raw)
In-Reply-To: <02547951-d7df-4006-853a-521b057e9b3f@efficios.com>


[-- Attachment #1.1: Type: text/plain, Size: 13084 bytes --]

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 <kstewart@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
> > <beliasossim@gmail.com <mailto:beliasossim@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
> >     <kstewart@efficios.com <mailto:kstewart@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
> >
>

[-- Attachment #1.2: Type: text/html, Size: 17890 bytes --]

[-- Attachment #2: Type: text/plain, Size: 156 bytes --]

_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

  reply	other threads:[~2024-07-18  0:44 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-15 22:10 François Belias via lttng-dev
2024-07-16 13:05 ` Kienan Stewart via lttng-dev
2024-07-16 19:01   ` François Belias via lttng-dev
2024-07-16 19:41     ` Kienan Stewart via lttng-dev
2024-07-16 20:34       ` François Belias via lttng-dev
2024-07-17 14:55         ` Kienan Stewart via lttng-dev
     [not found]           ` <CAHD10UgTthGz7gcgcga6W4xxjiKHfuZgM9uCjEkViKsVUnDF8A@mail.gmail.com>
2024-07-17 15:47             ` François Belias via lttng-dev
2024-07-17 16:08               ` Kienan Stewart via lttng-dev
2024-07-18  0:44                 ` François Belias via lttng-dev [this message]
2024-07-18 14:47                   ` Kienan Stewart via lttng-dev
2024-07-18 14:58                     ` Kienan Stewart via lttng-dev
2024-07-18 19:46                       ` François Belias via lttng-dev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAHD10UgXdBoKGwSdXQk__OW7E1abyQKA=2rgmKry6p6ZQxmTyw@mail.gmail.com' \
    --to=lttng-dev@lists.lttng.org \
    --cc=beliasossim@gmail.com \
    --cc=kstewart@efficios.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox