Package: src:linux
Version: linux-image-4.8.0-2-amd64
Severity: serious

Hi, I found bpfcc-tools don't work on linux-image-4.8.0-2-amd64 and 
linux-image-4.8.0-2-rt-amd64, for these kernels are signed kernel, I think
bpfcc-tools don't work on all signed kernels on x86_64 platform. bpfcc-tools 
works on linux-image-4.8.0-2-amd64-unsigned, 
linux-image-4.8.0-2-rt-amd64-unsigned and linux-image-4.7.0-1-amd64, following
is my detailed test log:

##############linux-image-4.8.0-2-amd64########################
root@bcat:~# python /usr/share/doc/bpfcc-tools/examples/hello_world.py  
bpf: Invalid argument 

Traceback (most recent call last): 
 File "/usr/share/doc/bpfcc-tools/examples/hello_world.py", line 11, in 
<module> 
   BPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk("Hello, 
World!\\n"); return 0; }').trace_print() 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 203, in __init__ 
   self._trace_autoload() 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 679, in 
_trace_autoload 
   fn = self.load_func(func_name, BPF.KPROBE) 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 243, in 
load_func 
   raise Exception("Failed to load BPF program %s" % func_name) 
Exception: Failed to load BPF program kprobe__sys_clone 
root@bcat:~# uname -a  
Linux bcat 4.8.0-2-amd64 #1 SMP Debian 4.8.11-1 (2016-12-02) x86_64 GNU/Linux 
root@bcat:~# dpkg -l |grep linux-image 
ic  linux-image-4.7.0-1-amd64                     4.7.8-1                       
      amd64        Linux 4.7 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-1-amd64                     4.8.7-1                       
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-amd64                     4.8.11-1                      
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-amd64                             4.8+77                        
      amd64        Linux for 64-bit PCs (meta-package)

############## linux-image-4.8.0-2-rt-amd64-unsigned########################
root@bcat:~# python /usr/share/doc/bpfcc-tools/examples/hello_world.py   
           sshd-1225  [001] d...2..    86.931062: : Hello, World! 
           sshd-2855  [007] d...2..    86.937056: : Hello, World! 
           sshd-1225  [002] d...2..    92.551224: : Hello, World! 
           sshd-2869  [004] d...2..    92.557394: : Hello, World! 
  systemd-udevd-454   [003] d...2..    92.721318: : Hello, World! 
^Croot@bcat:~ 
root@bcat:~# uname -a 
Linux bcat 4.8.0-2-rt-amd64 #1 SMP PREEMPT RT Debian 4.8.15-1 (2016-12-19) 
x86_64 GNU/Linux 
root@bcat:~# dpkg -l |grep linux-image 
ic  linux-image-4.7.0-1-amd64                     4.7.8-1                       
      amd64        Linux 4.7 for 64-bit PCs (signed) 
rc  linux-image-4.8.0-1-amd64                     4.8.7-1                       
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-amd64                     4.8.11-1                      
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-rt-amd64-unsigned         4.8.15-1                      
      amd64        Linux 4.8 for 64-bit PCs, PREEMPT_RT 
ii  linux-image-amd64                             4.8+77                        
      amd64        Linux for 64-bit PCs (meta-package)

##############linux-image-4.8.0-2-amd64-unsigned ########################
root@bcat:~# python /usr/share/doc/bpfcc-tools/examples/hello_world.py   
           sshd-1108  [005] d...   218.666546: : Hello, World! 
           sshd-2701  [007] d...   218.672187: : Hello, World! 
           sshd-1108  [005] d...   223.546367: : Hello, World! 
           sshd-2707  [007] d...   223.551765: : Hello, World! 
console-kit-dae-2622  [002] d...   223.723321: : Hello, World! 
console-kit-dae-2622  [002] d...   223.726497: : Hello, World! 
console-kit-dae-2622  [002] d...   223.729037: : Hello, World! 
           sshd-2707  [000] d...   223.771321: : Hello, World! 
           bash-2712  [003] d...   223.773793: : Hello, World! 
           bash-2713  [004] d...   223.774088: : Hello, World! 
           bash-2712  [003] d...   223.792414: : Hello, World! 
           bash-2715  [004] d...   223.792811: : Hello, World! 
^Croot@bcat:~# uname -a 
Linux bcat 4.8.0-2-amd64 #1 SMP Debian 4.8.15-1 (2016-12-19) x86_64 GNU/Linux 
root@bcat:~# dpkg -l |grep linux-image 
ic  linux-image-4.7.0-1-amd64                     4.7.8-1                       
      amd64        Linux 4.7 for 64-bit PCs (signed) 
rc  linux-image-4.8.0-1-amd64                     4.8.7-1                       
      amd64        Linux 4.8 for 64-bit PCs (signed) 
rc  linux-image-4.8.0-2-amd64                     4.8.11-1                      
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-amd64-unsigned            4.8.15-1                      
      amd64        Linux 4.8 for 64-bit PCs 
ii  linux-image-4.8.0-2-rt-amd64-unsigned         4.8.15-1                      
      amd64        Linux 4.8 for 64-bit PCs, PREEMPT_RT 
ii  linux-image-amd64                             4.8+77                        
      amd64        Linux for 64-bit PCs (meta-package)

############## linux-image-4.8.0-2-rt-amd64  ########################
root@bcat:~# python /usr/share/doc/bpfcc-tools/examples/hello_world.py    
bpf: Invalid argument 

Traceback (most recent call last): 
 File "/usr/share/doc/bpfcc-tools/examples/hello_world.py", line 11, in 
<module> 
   BPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk("Hello, 
World!\\n"); return 0; }').trace_print() 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 203, in __init__ 
   self._trace_autoload() 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 679, in 
_trace_autoload 
   fn = self.load_func(func_name, BPF.KPROBE) 
 File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 243, in 
load_func 
   raise Exception("Failed to load BPF program %s" % func_name) 
Exception: Failed to load BPF program kprobe__sys_clone 
root@bcat:~# uname -a 
Linux bcat 4.8.0-2-rt-amd64 #1 SMP PREEMPT RT Debian 4.8.11-1 (2016-12-02) 
x86_64 GNU/Linux 
root@bcat:~# dpkg -l |grep linux-image 
ic  linux-image-4.7.0-1-amd64                     4.7.8-1                       
      amd64        Linux 4.7 for 64-bit PCs (signed) 
rc  linux-image-4.8.0-1-amd64                     4.8.7-1                       
      amd64        Linux 4.8 for 64-bit PCs (signed) 
rc  linux-image-4.8.0-2-amd64                     4.8.11-1                      
      amd64        Linux 4.8 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-amd64-unsigned            4.8.15-1                      
      amd64        Linux 4.8 for 64-bit PCs 
ii  linux-image-4.8.0-2-rt-amd64                  4.8.11-1                      
      amd64        Linux 4.8 for 64-bit PCs, PREEMPT_RT (signed) 
rc  linux-image-4.8.0-2-rt-amd64-unsigned         4.8.15-1                      
      amd64        Linux 4.8 for 64-bit PCs, PREEMPT_RT 
ii  linux-image-amd64                             4.8+77                        
      amd64        Linux for 64-bit PCs (meta-package)


=============linux-image-4.7.0-1-amd64=============================
guoliangc:~# python /usr/share/doc/bpfcc-tools/examples/hello_world.py  
       chromium-5847  [003] d... 49706.966231: : Hello, World! 
       chromium-5847  [003] d... 49706.966270: : Hello, World! 
       chromium-5847  [003] d... 49706.967351: : Hello, World! 
       chromium-5847  [003] d... 49706.967484: : Hello, World! 
       chromium-5847  [003] d... 49706.967658: : Hello, World! 
       chromium-5847  [003] d... 49706.967726: : Hello, World! 
       chromium-5847  [003] d... 49706.968571: : Hello, World! 
^Cguoliangc:~# uname -a 
Linux guoliangc 4.7.0-1-amd64 #1 SMP Debian 4.7.8-1 (2016-10-19) x86_64 
GNU/Linux 
guoliangc:~# dpkg -l |grep linux-image 
ii  linux-image-4.6.0-1-amd64                     4.6.4-1                       
       amd64        Linux 4.6 for 64-bit PCs 
ii  linux-image-4.7.0-1-amd64                     4.7.8-1                       
       amd64        Linux 4.7 for 64-bit PCs (signed) 
ii  linux-image-4.8.0-2-amd64-unsigned            4.8.15-1                      
       amd64        Linux 4.8 for 64-bit PCs

Thanks and Regards,
--
Liang Guo

Attachment: signature.asc
Description: PGP signature

Reply via email to