Skip to content

Instantly share code, notes, and snippets.

$ time make modules SUBDIRS=drivers/media/platform/vivid
Building modules, stage 2.
MODPOST 1 modules
CC drivers/media/platform/vivid/vivid.mod.o
LD [M] drivers/media/platform/vivid/vivid.ko
real 0m2.279s
user 0m0.847s
sys 0m0.924s
$ time make drivers/media/platform/vivid/vivid.ko
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CHK include/generated/bounds.h
CHK include/generated/asm-offsets.h
CALL scripts/checksyscalls.sh
MODPOST 4059 modules
CC drivers/media/platform/vivid/vivid.mod.o
LD [M] drivers/media/platform/vivid/vivid.ko
sudo cp /path/to/my/module/module.ko /lib/modules/`uname -r`/kernel/path/to/my/module/module.ko
sudo make modules_install SUBDIRS=drivers/media/platform/vivid
$ ccache -s
cache directory /home/helen/.ccache
cache hit (direct) 5302
cache hit (preprocessed) 210
cache miss 10053
called for link 64
called for preprocessing 2617
compile failed 122
preprocessor error 1
unsupported source language 92
$ sudo sh -c "echo -n 'module media +p' > /sys/kernel/debug/dynamic_debug/control"
$ sudo cat /sys/kernel/debug/dynamic_debug/control | grep "\[media\]"
drivers/media/media-entity.c:301 [media]media_entity_pipeline_start =p "\042%s\042:%u must be connected by an enabled link\012"
drivers/media/media-entity.c:287 [media]media_entity_pipeline_start =p "link validation failed for \042%s\042:%u -> \042%s\042:%u, error %d\012"
$ sudo sh -c "echo -n 'module media -p' > /sys/kernel/debug/dynamic_debug/control"
$ sudo cat /sys/kernel/debug/dynamic_debug/control | grep "\[media\]"
drivers/media/media-entity.c:301 [media]media_entity_pipeline_start =_ "\042%s\042:%u must be connected by an enabled link\012"
drivers/media/media-entity.c:287 [media]media_entity_pipeline_start =_ "link validation failed for \042%s\042:%u -> \042%s\042:%u, error %d\012"
$ nm drivers/media/vmc/vmc.ko | grep vmc_cap_destroy
0000000000000680 T vmc_cap_destroy
[ 37.183001] BUG: unable to handle kernel NULL pointer dereference at 0000000000000258
[ 37.183009] IP: [<ffffffff817c69f0>] _raw_spin_lock_irqsave+0x20/0x80
[ 37.183019] PGD 0
[ 37.183021] Oops: 0002 [#1] SMP
[ 37.183023] Modules linked in: vmc(O-) videobuf2_vmalloc videobuf2_memops videobuf2_core v4l2_common videodev media vmw_vsock_vmci_transport vsock vmwgfx ttm drm_kms_helper snd_ens1371 snd_ac97_codec ac97_bus gameport snd_pcm hid_generic drm snd_seq_midi snd_seq_midi_event snd_rawmidi btusb rfcomm usbhid bnep snd_seq btbcm hid btintel bluetooth snd_seq_device snd_timer snd vmw_balloon serio_raw vmw_vmci soundcore coretemp ppdev shpchp lp i2c_piix4 parport_pc parport mac_hid psmouse e1000 ahci libahci mptspi mptscsih mptbase scsi_transport_spi floppy vmw_pvscsi vmxnet3 pata_acpi
[ 37.183055] CPU: 0 PID: 2142 Comm: modprobe Tainted: G O 4.1.0-rc3+ #22
[ 37.183057] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 05/20/2014
[ 37
$ addr2line -e path_to_your_kernel_tree/vmlinux 0xffffffff817c69f0
path_to_your_kernel_tree//./arch/x86/include/asm/spinlock.h:106