Skip to content

Instantly share code, notes, and snippets.

@schmurfy
Created June 19, 2012 14:00
Show Gist options
  • Save schmurfy/2954385 to your computer and use it in GitHub Desktop.
Save schmurfy/2954385 to your computer and use it in GitHub Desktop.
dtrace4linux
[ 9833.357917] Kernel panic - not syncing: Attempted to kill the idle task!
[ 9833.359075] Pid: 0, comm: swapper/1 Tainted: P D W O 3.2.0-23-virtual #36-Ubuntu
[ 9833.360463] Call Trace:
[ 9833.360910] [] panic+0x91/0x1a4
[ 9833.361749] [] do_exit+0x41e/0x420
[ 9833.362645] [] oops_end+0xb0/0xf0
[ 9833.363503] [] no_context+0x150/0x15d
[ 9833.364584] [] __bad_area_nosemaphore+0x1c9/0x1e8
[ 9833.365682] [] ? resched_task+0x2c/0x80
[ 9833.366645] [] bad_area_nosemaphore+0x13/0x15
[ 9833.367708] [] do_page_fault+0x426/0x520
[ 9833.368713] [] ? kvm_clock_read+0x19/0x20
[ 9833.369697] [] ? kvm_clock_get_cycles+0x9/0x10
[ 9833.370757] [] ? ktime_get+0x65/0xe0
[ 9833.371657] [] ? lapic_next_event+0x1d/0x30
[ 9833.372770] [] ? clockevents_program_event+0x74/0x100
[ 9833.373999] [] ? timerqueue_add+0x74/0xc0
[ 9833.375001] [] ? tick_program_event+0x24/0x30
[ 9833.376087] [] ? pvclock_clocksource_read+0x55/0xf0
[ 9833.377230] [] page_fault+0x25/0x30
[ 9833.378136] [] ? native_safe_halt+0xb/0x10
[ 9833.379135] [] default_idle+0x53/0x1d0
[ 9833.380111] [] cpu_idle+0xd6/0x120
[ 9833.381001] [] start_secondary+0xd9/0xdb
ubuntu@main:~/dtrace$ make install
. build/config.sh ; \
mkdir -p ""/usr/lib/dtrace/$CPU_BITS ; \
rm -f ""/usr/lib/dtrace/types.d ; \
mkdir -p ""/usr/sbin/ ; \
install -m 4755 -o root build/dtrace ""/usr/sbin/dtrace ; \
install -m 644 -o root build/drti.o ""/usr/lib/dtrace/$CPU_BITS/drti.o
mkdir: cannot create directory `/usr/lib/dtrace': Permission denied
install: cannot create regular file `/usr/sbin/dtrace': Permission denied
install: cannot create regular file `/usr/lib/dtrace/64/drti.o': No such file or directory
make: *** [install] Error 1
ubuntu@main:~/dtrace$ sudo make install
. build/config.sh ; \
mkdir -p ""/usr/lib/dtrace/$CPU_BITS ; \
rm -f ""/usr/lib/dtrace/types.d ; \
mkdir -p ""/usr/sbin/ ; \
install -m 4755 -o root build/dtrace ""/usr/sbin/dtrace ; \
install -m 644 -o root build/drti.o ""/usr/lib/dtrace/$CPU_BITS/drti.o
mkdir -p ""/etc/ ; \
if [ ! -f ""/etc/dtrace.conf ] ; then \
install -m 644 -o root etc/dtrace.conf ""/etc/dtrace.conf ; \
fi
if [ -f "build/linux-`uname -r`.ctf" ]; then \
install -m 644 -o root build/linux-`uname -r`.ctf ""/usr/lib/dtrace ; \
fi
install -m 644 -o root etc/io.d ""/usr/lib/dtrace
install -m 644 -o root etc/sched.d ""/usr/lib/dtrace
install -m 644 -o root etc/unistd.d ""/usr/lib/dtrace
scripts/mkinstall.pl -o=""/usr/lib/dtrace
@dtrace4linux
Copy link

Not sure why you are showing the make_install.sh - you need to be root to install, as you have done.

Your kernel panic is interesting and I am trying to understand the environment you are in. My normal kernels are VMs. Or I run outside a VM on the raw hardware. The calls to kvm functions are possibly interesting - maybe you are in a Xen or some other environment?

Ubuntu - all the way back to 8.04 should work, but its possible one of the earlier releases got broken by some fix for a later version.

When does this panic occur - on driver load, or when you are experimenting with dtrace?

@schmurfy
Copy link
Author

the make_install.sh was just to show where the crash happened (last line shown), it may not be relevant but I included it in any case it could be of some use.
I am in a kvm environment (OpenStack host) and this host was a fresh ubuntu 12.04 install.

To reach the kernel panic I compiled, load and then it occured when I type "make install" (the make_install.sh show it happened at "scripts/mkinstall.pl -o=""/usr/lib/dtrace") but I couldn't reproduce it after I rebooted the VM.

@dtrace4linux
Copy link

dtrace4linux commented Jun 21, 2012 via email

@schmurfy
Copy link
Author

OpenStack is basically a manager built upon on top of the existing linux tools: kvm, libvirt amongst others, I use it on he physical host to manage the VMs.
The VM are kvm processes spanwed via libvirt from what I can tell.

If you ever want to install it here is a good guide: http://www.hastexo.com/resources/docs/installing-openstack-essex-20121-ubuntu-1204-precise-pangolin

I got another kernel panic but I don't know what caused it, the VM was mostly idle and when I tried to log into after some time it was crashed but there was nothing in the logs except a message mentioning dtracedrv.

@dtrace4linux
Copy link

dtrace4linux commented Jun 21, 2012 via email

@schmurfy
Copy link
Author

inside the guest where I installed dtrace, the host is unaffected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment