Neil Horman
f7f2287426
forcedeth: Do a dma_mapping_error check after skb_frag_dma_map
This backtrace was recently reported on a 3.9 kernel:
Actual results: from syslog /var/log/messsages:
kernel: [17539.340285] ------------[ cut here ]------------
kernel: [17539.341012] WARNING: at lib/dma-debug.c:937 check_unmap+0x493/0x960()
kernel: [17539.341012] Hardware name: MS-7125
kernel: [17539.341012] forcedeth 0000:00:0a.0: DMA-API: device driver failed to
check map error[device address=0x0000000013c88000] [size=544 bytes] [mapped as
page]
kernel: [17539.341012] Modules linked in: fuse ebtable_nat ipt_MASQUERADE
nf_conntrack_netbios_ns nf_conntrack_broadcast ip6table_nat nf_nat_ipv6
ip6table_mangle ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 iptable_nat
nf_nat_ipv4 nf_nat iptable_mangle nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack
nf_conntrack bnep bluetooth rfkill ebtable_filter ebtables ip6table_filter
ip6_tables snd_hda_codec_hdmi snd_cmipci snd_mpu401_uart snd_hda_intel
snd_intel8x0 snd_opl3_lib snd_ac97_codec gameport snd_hda_codec snd_rawmidi
ac97_bus snd_hwdep snd_seq snd_seq_device snd_pcm snd_page_alloc snd_timer snd
k8temp soundcore serio_raw i2c_nforce2 forcedeth ata_generic pata_acpi nouveau
video mxm_wmi wmi i2c_algo_bit drm_kms_helper ttm drm i2c_core sata_sil pata_amd
sata_nv uinput
kernel: [17539.341012] Pid: 17340, comm: sshd Not tainted
3.9.0-0.rc4.git0.1.fc19.i686.PAE #1
kernel: [17539.341012] Call Trace:
kernel: [17539.341012] [<c045573c>] warn_slowpath_common+0x6c/0xa0
kernel: [17539.341012] [<c0701953>] ? check_unmap+0x493/0x960
kernel: [17539.341012] [<c0701953>] ? check_unmap+0x493/0x960
kernel: [17539.341012] [<c04557a3>] warn_slowpath_fmt+0x33/0x40
kernel: [17539.341012] [<c0701953>] check_unmap+0x493/0x960
kernel: [17539.341012] [<c049238f>] ? sched_clock_cpu+0xdf/0x150
kernel: [17539.341012] [<c0701e87>] debug_dma_unmap_page+0x67/0x70
kernel: [17539.341012] [<f7eae8f2>] nv_unmap_txskb.isra.32+0x92/0x100
Its pretty plainly the result of an skb fragment getting unmapped without having
its initial mapping operation checked for errors. This patch corrects that.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
CC: "David S. Miller" <davem@davemloft.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-04-02 14:32:24 -04:00
..
2013-03-27 00:06:07 +01:00
2013-03-15 17:20:02 +00:00
2013-03-23 12:33:36 -07:00
2013-02-27 19:10:24 -08:00
2013-03-07 14:54:28 -08:00
2013-03-18 09:39:21 -04:00
2013-04-01 08:06:30 -07:00
2013-03-18 15:17:11 -04:00
2013-03-12 20:28:45 -07:00
2013-03-14 22:34:26 +01:00
2013-03-03 12:06:09 -08:00
2013-03-28 14:27:44 -04:00
2013-03-25 15:13:32 +01:00
2013-02-21 15:27:22 -08:00
2013-03-21 17:36:03 +08:00
2013-02-27 19:10:15 -08:00
2013-04-01 13:36:50 -04:00
2013-03-16 06:32:30 +01:00
2013-03-13 17:38:57 +09:00
2013-03-28 01:20:42 -04:00
2013-03-22 20:08:01 +00:00
2013-03-24 10:11:29 -07:00
2013-03-25 12:20:00 +10:00
2013-03-27 11:18:43 -07:00
2013-03-01 13:39:00 -08:00
2013-02-27 10:15:53 -08:00
2013-03-18 21:19:49 +01:00
2013-03-23 12:32:14 -07:00
2013-02-26 20:16:07 -08:00
2013-02-22 19:25:09 -08:00
2013-03-06 05:48:24 +08:00
2013-03-27 13:52:49 -04:00
2013-03-18 08:17:14 -07:00
2013-03-27 09:25:11 -07:00
2013-02-21 13:57:13 -08:00
2013-03-04 17:15:33 -08:00
2013-04-02 14:31:24 -04:00
2013-02-26 09:29:02 -08:00
2013-02-26 14:49:12 -08:00
2013-02-23 17:09:55 -08:00
2013-03-04 14:23:11 +01:00
2013-03-23 15:49:49 -07:00
2013-04-01 13:36:50 -04:00
2013-02-27 19:10:23 -08:00
2013-03-15 07:42:22 +01:00
2013-03-15 12:58:12 -07:00
2013-03-03 00:32:50 +00:00
2013-03-18 08:27:41 -07:00
2013-04-02 14:32:24 -04:00
2013-03-10 22:20:04 +01:00
2013-02-21 17:40:58 -08:00
2013-03-03 19:36:31 -08:00
2013-02-26 20:16:07 -08:00
2013-02-21 17:54:03 -08:00
2013-03-19 14:51:14 -07:00
2013-02-21 17:40:58 -08:00
2013-03-24 10:11:29 -07:00
2013-03-08 16:03:29 -08:00
2013-03-04 14:23:40 +01:00
2013-02-27 19:10:18 -08:00
2013-02-27 19:10:23 -08:00
2013-03-27 12:48:31 -04:00
2013-02-26 09:34:29 -08:00
2013-03-05 10:12:43 +08:00
2013-02-27 19:10:18 -08:00
2013-02-27 19:10:18 -08:00
2013-03-22 16:41:20 -07:00
2013-03-22 10:23:34 -04:00
2013-02-26 20:16:07 -08:00
2013-03-28 14:27:24 -04:00
2013-02-21 15:27:22 -08:00
2013-03-13 14:23:02 -04:00
2013-04-01 13:36:50 -04:00
2013-03-28 23:42:47 -07:00
2013-03-11 23:09:29 +08:00
2013-03-28 15:53:33 -07:00
2013-02-27 19:10:19 -08:00
2013-03-28 08:50:22 -07:00
2013-03-15 12:58:20 -06:00
2013-03-30 13:13:05 -07:00
2013-03-28 13:44:40 -07:00
2013-02-26 14:49:12 -08:00
2013-03-12 16:20:46 -07:00
2013-03-22 23:21:55 +01:00
2013-03-27 12:56:25 -07:00
2013-02-22 23:31:31 -05:00
2013-02-21 13:57:13 -08:00
2013-02-23 17:09:55 -08:00