This is the second time I've triggered this WARNING: ------------[ cut here ]------------ WARNING: at /home/chris/LINUX/linux-2.6.33/arch/x86/kernel/apic/ipi.c:109 default_send_IPI_mask_logical+0x2a/0xad() Hardware name: Precision WorkStation 650 empty IPI mask Modules linked in: snd_seq_oss snd_seq_midi snd_seq_dummy fuse nfsd exportfs autofs4 nfs lockd auth_rpcgss sunrpc p4_clockmod speedstep_lib af_packet ipt_LOG xt_tcpudp nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_LOG nf_conntrack_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables x_tables ipv6 binfmt_misc dm_mirror dm_region_hash dm_log dm_mod uinput snd_emu10k1_synth snd_emux_synth snd_seq_virmidi snd_seq_midi_event snd_seq_midi_emul snd_emu10k1 snd_ac97_codec snd_usb_audio ac97_bus snd_seq snd_pcm joydev firewire_ohci usbhid snd_timer ppdev firewire_core uvcvideo snd_usb_lib snd_page_alloc psmouse snd_rawmidi snd_util_mem snd_seq_device parport_pc crc_itu_t snd_hwdep pcspkr serio_raw sg i2c_i801 snd videodev floppy v4l1_compat parport soundcore dcdbas ext3 jbd mbcache sr_mod cdrom sd_mod pata_acpi ata_piix sata_sil uhci_hcd libata scsi_mod e1000 ehci_hcd usbcore thermal button radeon intel_agp ttm drm_kms_helper drm agpgart i2c_algo_bit cfbcopyarea cfbimgblt cfbfillrect [last unloaded: processor] Pid: 15, comm: events/0 Not tainted 2.6.33.2 #1 Call Trace: [<c102559b>] ? warn_slowpath_common+0x5d/0x70 [<c10171d2>] ? __cpa_flush_range+0x0/0x24 [<c10255e1>] ? warn_slowpath_fmt+0x26/0x2a [<c101274c>] ? default_send_IPI_mask_logical+0x2a/0xad [<c10171d2>] ? __cpa_flush_range+0x0/0x24 [<c1011381>] ? native_send_call_func_ipi+0x4f/0x56 [<c1043aa0>] ? smp_call_function_many+0x161/0x17a [<c10171d2>] ? __cpa_flush_range+0x0/0x24 [<c1043ae2>] ? smp_call_function+0x29/0x4f [<c10171d2>] ? __cpa_flush_range+0x0/0x24 [<c10297f9>] ? on_each_cpu+0x23/0x50 [<c1017abe>] ? change_page_attr_set_clr+0x24a/0x2c6 [<c1017c86>] ? _set_memory_wb+0x17/0x1b [<c1017c96>] ? set_memory_wb+0xc/0x31 [<f80bac75>] ? ttm_tt_set_caching+0x9d/0x1a5 [ttm] [<f80bad9b>] ? ttm_tt_free_alloced_pages+0x1e/0x88 [ttm] [<f80bb130>] ? ttm_tt_destroy+0x37/0x73 [ttm] [<f80bb6e9>] ? ttm_bo_release_list+0x67/0x97 [ttm] [<f80bb682>] ? ttm_bo_release_list+0x0/0x97 [ttm] [<c10e5f5a>] ? kref_put+0x36/0x3e [<f80bc31c>] ? ttm_bo_delayed_delete+0xab/0xb5 [ttm] [<f80bc336>] ? ttm_bo_delayed_workqueue+0x10/0x23 [ttm] [<c1032619>] ? worker_thread+0x114/0x19c [<f80bc326>] ? ttm_bo_delayed_workqueue+0x0/0x23 [ttm] [<c1035241>] ? autoremove_wake_function+0x0/0x29 [<c1032505>] ? worker_thread+0x0/0x19c [<c1034f3f>] ? kthread+0x5f/0x64 [<c1034ee0>] ? kthread+0x0/0x64 [<c1002cb6>] ? kernel_thread_helper+0x6/0x10 This was with stock 2.6.33.2, and was almost certainly triggered by an OpenGL screensaver. The other time was triggered trying to capture a celestia screenshot using Gimp 2.6. The hardware is an AGP Radeon 9550 (RV350) with Mesa from F12 and xorg-xf86-drv-ati from git.
Thanks. I'll reassign this to x86. The ttm driver is simply calling set_memory_wb(). I see no way in which the ttm driver can cause an empty IPI mask all the way down in the APIC code.
FYI, still present in 2.6.33.3. The oops looks identical.
Bug 23042 is a very similar issue. Bug 13933 (towards the end) contains some background info on this warning. It looks like native_send_call_func_ipi() can still pass an empty mask to default_send_IPI_mask_logical() through ->send_IPI_mask(). I got the warning under 2.6.32, not sure if it's still possible under recent kernels.
Er, sorry, I forgot to include the trace (arch i386, not x86-64): > WARNING: at > /build/buildd-linux-2.6_2.6.32-41-i386-0vD9OO/linux-2.6-2.6.32/debian/build/source_i386_none/arch/x86/kernel/apic/ipi.c:109 > default_send_IPI_mask_logical+0x28/0x80() > Hardware name: PowerEdge 1850 > empty IPI mask > Modules linked in: ip6table_raw ip6t_REJECT ip6t_LOG nf_conntrack_ipv6 > xt_NOTRACK iptable_raw xt_recent ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 > xt_state xt_tcpudp ipt_LOG xt_limit xt_multiport ip6table_filter ip6_tables > iptable_filter ip_tables x_tables 8021q garp stp bonding ext3 jbd mbcache > nf_conntrack_tftp nf_conntrack ipmi_devintf ipmi_si ipmi_msghandler radeon > ttm drm_kms_helper drm snd_pcm snd_timer snd soundcore snd_page_alloc > i2c_algo_bit pcspkr dcdbas e752x_edac psmouse i2c_core video output evdev > edac_core rocket rng_core shpchp serio_raw pci_hotplug button processor xfs > exportfs dm_mod raid1 md_mod sd_mod crc_t10dif uhci_hcd sg sr_mod cdrom > ata_generic ehci_hcd ata_piix libata mptspi mptscsih mptbase > scsi_transport_spi floppy e1000 usbcore nls_base thermal thermal_sys scsi_mod > [last unloaded: scsi_wait_scan] > Pid: 23982, comm: nagios3 Not tainted 2.6.32-5-686 #1 > Call Trace: > [<c10309b9>] ? warn_slowpath_common+0x5e/0x8a > [<c1030a17>] ? warn_slowpath_fmt+0x26/0x2a > [<c1014afc>] ? default_send_IPI_mask_logical+0x28/0x80 > [<c10134f2>] ? native_send_call_func_ipi+0x51/0x54 > [<c105342c>] ? smp_call_function_many+0x18f/0x1a8 > [<c108b29c>] ? drain_local_pages+0x0/0xb > [<c108b29c>] ? drain_local_pages+0x0/0xb > [<c105345e>] ? smp_call_function+0x19/0x1f > [<c103588b>] ? on_each_cpu+0xc/0x24 > [<c108c888>] ? __alloc_pages_nodemask+0x36e/0x4d9 > [<c109a9e6>] ? do_wp_page+0x3eb/0x727 > [<c109c4ba>] ? handle_mm_fault+0x8db/0x959 > [<c1270c90>] ? do_page_fault+0x2f1/0x307 > [<c127099f>] ? do_page_fault+0x0/0x307 > [<c126f1f3>] ? error_code+0x73/0x78