--- load kprobe module [ 578.019386] [size] plant jprobe at ffffffff803477c0, handler addr ffffffff88838160 [ 578.019556] [size] plant jprobe at ffffffff80347720, handler addr ffffffff888380d0 [ 578.019710] [size] plant jprobe at ffffffff80347680, handler addr ffffffff88838040 --- load sound modules [ 582.117327] -- pci_write_config_word(): *0x0054 := 0x00000000 [ 582.117348] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 22 [ 582.117727] -- pci_write_config_word(): *0x0004 := 0x00000006 [ 582.117739] PCI: Setting latency timer of device 0000:00:1b.0 to 64 [ 582.117744] -- pci_write_config_byte(): *0x000d := 0x00000040 [ 582.118149] -- azx_init_stream [ 582.118155] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_stream() [ 582.118162] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_create() [ 582.118169] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 582.118177] -- pci_write_config_byte(): *0x0044 := 0x00000000 [ 582.118186] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 582.149394] ALSA sound/pci/hda/hda_intel.c:717: codec_mask = 0x3 [ 582.149404] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 582.149413] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 582.149421] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 582.149431] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_create() [ 582.269214] ALSA sound/pci/hda/hda_codec.c:1751: hda_codec: PCI 104d:81ef, codec config 0 is selected [ 582.357068] -- stac92xx_init --- suspend [ 602.566734] HDA Intel 0000:00:1b.0: suspend [ 602.566738] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.566742] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.566747] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.574242] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.574249] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.574254] -- pci_write_config_word(): *0x0004 := 0x00000002 [ 602.574259] ACPI: PCI interrupt for device 0000:00:1b.0 disabled [ 602.574262] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.574335] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_suspend() [ 602.574350] -- pci_write_config_word(): *0x0054 := 0x00000003 --- resume [ 3.586318] HDA Intel 0000:00:1b.0: resuming [ 3.586332] -- pci_write_config_word(): *0x0054 := 0x00000000 [ 3.602055] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x07 in azx_resume() [ 3.602093] PM: Writing back config space on device 0000:00:1b.0 at offset 3 (was 0, writing 10) [ 3.602098] -- pci_write_config_dword(): *0x000c := 0x00000010 [ 3.602109] PM: Writing back config space on device 0000:00:1b.0 at offset 1 (was 100006, writing 100002) [ 3.602114] -- pci_write_config_dword(): *0x0004 := 0x00100002 [ 3.602146] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x07 in azx_resume() [ 3.602154] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 22 [ 3.602161] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x07 in azx_resume() [ 3.602168] -- pci_write_config_word(): *0x0004 := 0x00000006 [ 3.602176] PCI: Setting latency timer of device 0000:00:1b.0 to 64 [ 3.602180] -- pci_write_config_byte(): *0x000d := 0x00000040 [ 3.602189] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x07 in azx_resume() [ 3.602204] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x07 in azx_init_chip() [ 3.602211] -- pci_write_config_byte(): *0x0044 := 0x00000000 [ 3.602219] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 3.626017] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 3.626025] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 3.626032] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_init_chip() [ 3.645983] -- stac92xx_resume [ 3.645985] -- stac92xx_init [ 3.646000] -- stac92xx_set_config_regs [ 3.665954] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_resume() [ 3.665960] ALSA sound/pci/hda/hda_intel.c:412: TCSEL=0x00 in azx_resume() # pcitweak -r 00:1b:0 -b 0x44 0x07 # pcitweak -w 00:1b:0 -b 0x44 0 # pcitweak -r 00:1b:0 -b 0x44 0x00 (no jprobe messages for pcitweak) --- kprobe module code /* jprobebio.c Will Cohen, adapted for pci tracing by Willem van Engen source: http://www.redhat.com/magazine/005mar05/features/kprobes/ */ #include #include #include #define LOG_2_BINS 8 #define BINS (1<number==0 && devfn==0xd8) { \ printk("-- pci_write_config_%s(): *0x%04x := 0x%08x\n", #size,pos,value); \ } \ \ jprobe_return(); \ } \ static struct jprobe my_jprobe_##size = { \ .kp.addr = (kprobe_opcode_t *) pci_bus_write_config_##size, \ .entry = (kprobe_opcode_t *) inst_pci_write_config_##size \ }; \ INST_PCI_OP_WRITE(byte, u8, 1) INST_PCI_OP_WRITE(word, u16, 2) INST_PCI_OP_WRITE(dword, u32, 4) #define PLANT_PROBE(size) \ register_jprobe(&my_jprobe_##size); \ printk("[%s] plant jprobe at %p, handler addr %p\n", "size", my_jprobe_##size.kp.addr, my_jprobe_##size.entry); #define REMOVE_PROBE(size) \ unregister_jprobe(&my_jprobe_##size); int init_module(void) { PLANT_PROBE(byte) PLANT_PROBE(word) PLANT_PROBE(dword) return 0; } void cleanup_module(void) { REMOVE_PROBE(byte) REMOVE_PROBE(word) REMOVE_PROBE(dword) printk("jprobe unregistered\n"); } MODULE_LICENSE("GPL");