imq / linuximq

Pseudo-driver for the intermediate queue device.
https://imq.github.io/
GNU General Public License v2.0
99 stars 51 forks source link

Add the new patch linux-3.18-imq.diff based on stable kernel 3.18 #8

Closed gfreewind closed 9 years ago

gfreewind commented 9 years ago

There are multiple commits:

  1. Add the lost fix comment in linux-3.14-imq.diff
  2. Add the new patch linux-3.18-imq.diff based on stable kernel 3.18r
gfreewind commented 9 years ago

I port the IMQ to 3.18 stable release of linux kernel

micron10 commented 9 years ago

Hi Feng Any chance to port linux-imq patch for kernel 4.1

micron10 commented 9 years ago

Hi Feng This is a patch for kernel 4.0 : http://ipacct.com/f/kernel-4.0.0-imqmq.patch But the problem after apply your changes for skb_popd befor add this change imq work ok but after add patch and start test machine crash

m.

gfreewind commented 9 years ago

Hi M,

I could port the imq to kennel 4.1.

You said the machine will crash, then which kernel the machine is running on?

I apply it on kernel 3.3.x, it is ok and could get better performance than original imq. And it is already applied in online product with heavy load.

micron10 commented 9 years ago

Hi I try with kernel 4.0.5 and after apply this chages machine crashed befor change i try and machine work ok . I send you link with patch for kernel 4.0.x and this patch work after remove line for popd

gfreewind commented 9 years ago

It is possible there are too many different between 3.x and 4.x. Because it is a major release number changed.

How about the 3.x with the popd?

gfreewind commented 9 years ago

And do you have any dump stack of 4.x?

micron10 commented 9 years ago

[ 520.451222] NMI watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [sshd:2645] sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 520.451906] CPU: 0 PID: 2645 Comm: sshd Tainted: G O 4.0.5 #2 [ 520.451952] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 520.452027] task: ffff8800b85feea0 ti: ffff88013333c000 task.ti: ffff88013333c000 [ 520.452089] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 520.452164] RSP: 0018:ffff88013fc03c70 EFLAGS: 00000297 [ 520.452329] RAX: 00000000000029e6 RBX: ffffffffa0184658 RCX: 0000000000000504 [ 520.453110] RDX: 0000000000000503 RSI: 0000000000000200 RDI: ffff88013ab0e280 [ 520.453689] RBP: 0000000000000000 R08: 0000000000000000 R09: 00000001cc996cbd [ 520.454264] R10: ffff8800ba1887c0 R11: 0000000000000000 R12: ffff88013fc03be8 [ 520.454829] R13: ffffffff81536c57 R14: 0000000000000000 R15: ffff88013ab0e200 [ 520.455385] FS: 00007fbb59624700(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 520.456514] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 520.457122] CR2: 00007fb1612f1000 CR3: 00000001398ae000 CR4: 00000000001406f0 [ 520.457745] Stack: [ 520.458327] ffffffffa01e8433 00000004b88d0000 0000000000000000 ffff8800b88d2000 [ 520.459533] 0000000100000000 ffff8800b88d2000 ffff8800b8af0900 0000000000000000 [ 520.460756] ffff880139751900 ffff880139751900 0000000000000002 ffffffffa01e9298 [ 520.462851] Call Trace: [ 520.463452] [ 520.463469] [] ? imq_nf_queue+0x193/0x680 [imq] [ 520.464607] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 520.465165] [] ? nf_queue+0x103/0x1a0 [ 520.465730] [] ? ip_fragment+0x880/0x880 [ 520.466272] [] ? nf_hook_slow+0xc4/0x140 [ 520.466797] [] ? ip_fragment+0x880/0x880 [ 520.467309] [] ? ip_output+0x70/0x90 [ 520.467805] [] ? netif_receive_skb_core+0x6c5/0x9a0 [ 520.468296] [] ? process_backlog+0x8c/0x110 [ 520.468773] [] ? net_rx_action+0x1ce/0x2f0 [ 520.469238] [] ? do_softirq+0xf8/0x250 [ 520.469697] [] ? do_softirq_own_stack+0x1c/0x30 [ 520.470166] [ 520.470178] [] ? do_softirq.part.2+0x1d/0x20 [ 520.471086] [] ? local_bh_enable_ip+0x78/0x80 [ 520.471550] [] ? nf_reinject+0x18a/0x190 [ 520.472795] [] ? ip_fragment+0x880/0x880 [ 520.473367] [] ? imq_dev_xmit+0x84/0xd0 [imq] [ 520.473812] [] ? dev_hard_start_xmit+0x8e/0x2f0 [ 520.474265] [] ? imq_nf_queue+0x1bb/0x680 [imq] [ 520.474702] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 520.475130] [] ? nf_queue+0x103/0x1a0 [ 520.475546] [] ? ip_fragment+0x880/0x880 [ 520.475965] [] ? nf_hook_slow+0xc4/0x140 [ 520.476356] [] ? ip_fragment+0x880/0x880 [ 520.476732] [] ? ip_output+0x70/0x90 [ 520.477093] [] ? ip_queue_xmit+0x12f/0x350 [ 520.477441] [] ? tcp_transmit_skb+0x445/0x980 [ 520.477805] [] ? tcp_write_xmit+0x1ef/0xd80 [ 520.478163] [] ? __alloc_skb+0x87/0x1b0 [ 520.478512] [] ? tcp_push_pending_frames+0x25/0x90 [ 520.478865] [] ? tcp_sendmsg+0x6f7/0xac0 [ 520.479217] [] ? arch_remove_reservations+0xdc/0x100 [ 520.479576] [] ? sock_write_iter+0x77/0xe0 [ 520.479938] [] ? new_sync_write+0x72/0xa0 [ 520.480313] [] ? recalc_sigpending+0xe/0x30 [ 520.480676] [] ? vfs_write+0xa3/0x1e0 [ 520.481036] [] ? SyS_write+0x3d/0xb0 [ 520.481388] [] ? int_check_syscall_exit_work+0x34/0x3d [ 520.481748] [] ? system_call_fastpath+0x12/0x17 [ 520.482107] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba [ 536.468163] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [ntpd:2365] [ 536.469022] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 536.472797] CPU: 1 PID: 2365 Comm: ntpd Tainted: G O L 4.0.5 #2 [ 536.473290] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 536.474311] task: ffff8800b85fe740 ti: ffff8800b99a4000 task.ti: ffff8800b99a4000 [ 536.475356] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 536.476465] RSP: 0018:ffff8800b99a7a90 EFLAGS: 00000293 [ 536.477034] RAX: 000000000000032b RBX: ffffffffa0184658 RCX: 0000000000000505 [ 536.477614] RDX: 0000000000000503 RSI: 0000000000000200 RDI: ffff88013ab0e280 [ 536.478195] RBP: 0000000000000001 R08: 0000000000015680 R09: ffff88013b001900 [ 536.480448] R10: ffffea0004e628c0 R11: 0000000000000000 R12: ffffffffa0183df4 [ 536.481023] R13: ffff8801398a3000 R14: ffff8800ba02bc00 R15: ffff88013aa739c8 [ 536.481607] FS: 00007f4cae301700(0000) GS:ffff88013fd00000(0000) knlGS:0000000000000000 [ 536.482790] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 536.483425] CR2: 00007fb1612f1000 CR3: 00000000b9b0f000 CR4: 00000000001406e0 [ 536.484055] Stack: [ 536.484650] ffffffffa01e8433 00000004b88d0000 0000000000000000 ffff8800b88d2000 [ 536.485856] 0000000100000000 ffff8800b88d2000 ffff8800bb1931e0 0000000000000000 [ 536.487067] ffff8801398a3c00 ffff8801398a3c00 0000000000000002 ffffffffa01e9298 [ 536.488281] Call Trace: [ 536.488867] [] ? imq_nf_queue+0x193/0x680 [imq] [ 536.489465] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 536.491758] [] ? nf_queue+0x103/0x1a0 [ 536.492354] [] ? ip_fragment+0x880/0x880 [ 536.492905] [] ? nf_hook_slow+0xc4/0x140 [ 536.493447] [] ? ip_fragment+0x880/0x880 [ 536.493978] [] ? ip_output+0x70/0x90 [ 536.494492] [] ? ip_send_skb+0xd/0x40 [ 536.494991] [] ? udp_send_skb+0x154/0x290 [ 536.495477] [] ? udp_sendmsg+0x2a1/0x8a0 [ 536.496038] [] ? recalc_sigpending+0xe/0x30 [ 536.496498] [] ? dequeue_signal+0x2c/0x170 [ 536.496951] [] ? core_sys_select+0x1ba/0x2a0 [ 536.497399] [] ? do_sock_sendmsg+0x3b/0x60 [ 536.497842] [] ? SyS_sendto+0x13e/0x180 [ 536.498288] [] ? get_vtime_delta+0xd/0x80 [ 536.498762] [] ? system_call_fastpath+0x12/0x17 [ 536.499212] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba [ 548.463355] NMI watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [sshd:2645] [ 548.464311] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 548.468606] CPU: 0 PID: 2645 Comm: sshd Tainted: G O L 4.0.5 #2 [ 548.469091] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 548.470061] task: ffff8800b85feea0 ti: ffff88013333c000 task.ti: ffff88013333c000 [ 548.471067] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 548.472155] RSP: 0018:ffff88013fc03c70 EFLAGS: 00000297 [ 548.472718] RAX: 0000000000002d4e RBX: ffffffffa0184658 RCX: 0000000000000504 [ 548.473297] RDX: 0000000000000503 RSI: 0000000000000200 RDI: ffff88013ab0e280 [ 548.474734] RBP: 0000000000000000 R08: 0000000000000000 R09: 00000001cc996cbd [ 548.475397] R10: ffff8800ba1887c0 R11: 0000000000000000 R12: ffff88013fc03be8 [ 548.475983] R13: ffffffff81536c57 R14: 0000000000000000 R15: ffff88013ab0e200 [ 548.476575] FS: 00007fbb59624700(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 548.477740] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 548.478389] CR2: 00007fb1612f1000 CR3: 00000001398ae000 CR4: 00000000001406f0 [ 548.479025] Stack: [ 548.479619] ffffffffa01e8433 00000004b88d0000 0000000000000000 ffff8800b88d2000 [ 548.480866] 0000000100000000 ffff8800b88d2000 ffff8800b8af0900 0000000000000000 [ 548.482111] ffff880139751900 ffff880139751900 0000000000000002 ffffffffa01e9298 [ 548.483363] Call Trace: [ 548.484516] [ 548.484544] [] ? imq_nf_queue+0x193/0x680 [imq] [ 548.486180] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 548.486768] [] ? nf_queue+0x103/0x1a0 [ 548.487340] [] ? ip_fragment+0x880/0x880 [ 548.487898] [] ? nf_hook_slow+0xc4/0x140 [ 548.488433] [] ? ip_fragment+0x880/0x880 [ 548.488953] [] ? ip_output+0x70/0x90 [ 548.489455] [] ? netif_receive_skb_core+0x6c5/0x9a0 [ 548.489954] [] ? process_backlog+0x8c/0x110 [ 548.490438] [] ? net_rx_action+0x1ce/0x2f0 [ 548.490923] [] ? __do_softirq+0xf8/0x250 [ 548.491397] [] ? do_softirq_own_stack+0x1c/0x30 [ 548.491865] [ 548.491885] [] ? do_softirq.part.2+0x1d/0x20 [ 548.492811] [] ? local_bh_enable_ip+0x78/0x80 [ 548.493282] [] ? nf_reinject+0x18a/0x190 [ 548.493756] [] ? ip_fragment+0x880/0x880 [ 548.494224] [] ? imq_dev_xmit+0x84/0xd0 [imq] [ 548.495543] [] ? dev_hard_start_xmit+0x8e/0x2f0 [ 548.496012] [] ? imq_nf_queue+0x1bb/0x680 [imq] [ 548.496456] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 548.496918] [] ? nf_queue+0x103/0x1a0 [ 548.497342] [] ? ip_fragment+0x880/0x880 [ 548.497753] [] ? nf_hook_slow+0xc4/0x140 [ 548.498188] [] ? ip_fragment+0x880/0x880 [ 548.498572] [] ? ip_output+0x70/0x90 [ 548.498956] [] ? ip_queue_xmit+0x12f/0x350 [ 548.499325] [] ? tcp_transmit_skb+0x445/0x980 [ 548.499695] [] ? tcp_write_xmit+0x1ef/0xd80 [ 548.500055] [] ? alloc_skb+0x87/0x1b0 [ 548.500407] [] ? tcp_push_pending_frames+0x25/0x90 [ 548.500763] [] ? tcp_sendmsg+0x6f7/0xac0 [ 548.501122] [] ? arch_remove_reservations+0xdc/0x100 [ 548.501485] [] ? sock_write_iter+0x77/0xe0 [ 548.501849] [] ? new_sync_write+0x72/0xa0 [ 548.502213] [] ? recalc_sigpending+0xe/0x30 [ 548.502579] [] ? vfs_write+0xa3/0x1e0 [ 548.502954] [] ? SyS_write+0x3d/0xb0 [ 548.503310] [] ? int_check_syscall_exit_work+0x34/0x3d [ 548.503674] [] ? system_call_fastpath+0x12/0x17 [ 548.504043] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba [ 564.480291] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [ntpd:2365] [ 564.481191] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 564.485074] CPU: 1 PID: 2365 Comm: ntpd Tainted: G O L 4.0.5 #2 [ 564.485570] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 564.486581] task: ffff8800b85fe740 ti: ffff8800b99a4000 task.ti: ffff8800b99a4000 [ 564.487650] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 564.488767] RSP: 0018:ffff8800b99a7a90 EFLAGS: 00000293 [ 564.489343] RAX: 00000000000062a4 RBX: ffffffffa0184658 RCX: 0000000000000505 [ 564.489924] RDX: 0000000000000503 RSI: 0000000000000200 RDI: ffff88013ab0e280 [ 564.491276] RBP: 0000000000000001 R08: 0000000000015680 R09: ffff88013b001900 [ 564.492230] R10: ffffea0004e628c0 R11: 0000000000000000 R12: ffffffffa0183df4 [ 564.492811] R13: ffff8801398a3000 R14: ffff8800ba02bc00 R15: ffff88013aa739c8 [ 564.493407] FS: 00007f4cae301700(0000) GS:ffff88013fd00000(0000) knlGS:0000000000000000 [ 564.494569] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 564.495233] CR2: 00007fb1612f1000 CR3: 00000000b9b0f000 CR4: 00000000001406e0 [ 564.495867] Stack: [ 564.496464] ffffffffa01e8433 00000004b88d0000 0000000000000000 ffff8800b88d2000 [ 564.497684] 0000000100000000 ffff8800b88d2000 ffff8800bb1931e0 0000000000000000 [ 564.498907] ffff8801398a3c00 ffff8801398a3c00 0000000000000002 ffffffffa01e9298 [ 564.500148] Call Trace: [ 564.500740] [] ? imq_nf_queue+0x193/0x680 [imq] [ 564.501514] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 564.503167] [] ? nf_queue+0x103/0x1a0 [ 564.503738] [] ? ip_fragment+0x880/0x880 [ 564.504293] [] ? nf_hook_slow+0xc4/0x140 [ 564.504874] [] ? ip_fragment+0x880/0x880 [ 564.505412] [] ? ip_output+0x70/0x90 [ 564.505930] [] ? ip_send_skb+0xd/0x40 [ 564.506434] [] ? udp_send_skb+0x154/0x290 [ 564.506926] [] ? udp_sendmsg+0x2a1/0x8a0 [ 564.507408] [] ? recalc_sigpending+0xe/0x30 [ 564.507872] [] ? dequeue_signal+0x2c/0x170 [ 564.508330] [] ? core_sys_select+0x1ba/0x2a0 [ 564.508785] [] ? do_sock_sendmsg+0x3b/0x60 [ 564.509233] [] ? SyS_sendto+0x13e/0x180 [ 564.509681] [] ? get_vtime_delta+0xd/0x80 [ 564.510145] [] ? system_call_fastpath+0x12/0x17 [ 564.510593] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba [ 576.475487] NMI watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [sshd:2645] [ 576.476407] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 576.480447] CPU: 0 PID: 2645 Comm: sshd Tainted: G O L 4.0.5 #2 [ 576.480926] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 576.481889] task: ffff8800b85feea0 ti: ffff88013333c000 task.ti: ffff88013333c000 [ 576.482902] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 576.483975] RSP: 0018:ffff88013fc03c70 EFLAGS: 00000297 [ 576.484532] RAX: 0000000000003ac3 RBX: ffffffffa0184658 RCX: 0000000000000504 [ 576.485116] RDX: 0000000000000503 RSI: 0000000000000200 RDI: ffff88013ab0e280 [ 576.486308] RBP: 0000000000000000 R08: 0000000000000000 R09: 00000001cc996cbd [ 576.487148] R10: ffff8800ba1887c0 R11: 0000000000000000 R12: ffff88013fc03be8 [ 576.487751] R13: ffffffff81536c57 R14: 0000000000000000 R15: ffff88013ab0e200 [ 576.488327] FS: 00007fbb59624700(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 576.489474] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 576.490106] CR2: 00007fb1612f1000 CR3: 00000001398ae000 CR4: 00000000001406f0 [ 576.490738] Stack: [ 576.491359] ffffffffa01e8433 00000004b88d0000 0000000000000000 ffff8800b88d2000 [ 576.492569] 0000000100000000 ffff8800b88d2000 ffff8800b8af0900 0000000000000000 [ 576.493826] ffff880139751900 ffff880139751900 0000000000000002 ffffffffa01e9298 [ 576.495048] Call Trace: [ 576.495627] [ 576.495644] [] ? imq_nf_queue+0x193/0x680 [imq] [ 576.497690] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 576.498254] [] ? nf_queue+0x103/0x1a0 [ 576.498799] [] ? ip_fragment+0x880/0x880 [ 576.499335] [] ? nf_hook_slow+0xc4/0x140 [ 576.499861] [] ? ip_fragment+0x880/0x880 [ 576.500382] [] ? ip_output+0x70/0x90 [ 576.500879] [] ? netif_receive_skb_core+0x6c5/0x9a0 [ 576.501370] [] ? process_backlog+0x8c/0x110 [ 576.501848] [] ? net_rx_action+0x1ce/0x2f0 [ 576.502313] [] ? do_softirq+0xf8/0x250 [ 576.502782] [] ? do_softirq_own_stack+0x1c/0x30 [ 576.503249] [ 576.503262] [] ? do_softirq.part.2+0x1d/0x20 [ 576.504174] [] ? local_bh_enable_ip+0x78/0x80 [ 576.504639] [] ? nf_reinject+0x18a/0x190 [ 576.505120] [] ? ip_fragment+0x880/0x880 [ 576.505576] [] ? imq_dev_xmit+0x84/0xd0 [imq] [ 576.506022] [] ? dev_hard_start_xmit+0x8e/0x2f0 [ 576.507046] [] ? imq_nf_queue+0x1bb/0x680 [imq] [ 576.507892] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 576.508321] [] ? nf_queue+0x103/0x1a0 [ 576.508736] [] ? ip_fragment+0x880/0x880 [ 576.509141] [] ? nf_hook_slow+0xc4/0x140 [ 576.509531] [] ? ip_fragment+0x880/0x880 [ 576.509935] [] ? ip_output+0x70/0x90 [ 576.510297] [] ? ip_queue_xmit+0x12f/0x350 [ 576.510647] [] ? tcp_transmit_skb+0x445/0x980 [ 576.510999] [] ? tcp_write_xmit+0x1ef/0xd80 [ 576.511376] [] ? __alloc_skb+0x87/0x1b0 [ 576.511727] [] ? tcp_push_pending_frames+0x25/0x90 [ 576.512081] [] ? tcp_sendmsg+0x6f7/0xac0 [ 576.512431] [] ? arch_remove_reservations+0xdc/0x100 [ 576.512792] [] ? sock_write_iter+0x77/0xe0 [ 576.513152] [] ? new_sync_write+0x72/0xa0 [ 576.513513] [] ? recalc_sigpending+0xe/0x30 [ 576.513875] [] ? vfs_write+0xa3/0x1e0 [ 576.514232] [] ? SyS_write+0x3d/0xb0 [ 576.514582] [] ? int_check_syscall_exit_work+0x34/0x3d [ 576.514957] [] ? system_call_fastpath+0x12/0x17 [ 576.515314] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba

micron10 commented 9 years ago

this is a stack from 4.0

gfreewind commented 9 years ago

OK. There is one change of qdisc_restart, so the pop enhancement also need change too.

micron10 commented 9 years ago

May be after you fix up this patch on git .

gfreewind commented 9 years ago

Ok. I will commit the 4.x patch to my imq master. You could help test it, because i have not 4.x environment to test it.

micron10 commented 9 years ago

Not problem i have test lab for this

gfreewind commented 9 years ago

I have fixed it. It is caused by the qdisc_restart changed. I tested it with the kernel 4.0.5, and send one pull request

gfreewind commented 9 years ago

The qdisc_restart is changed from 3.18. So I fixed the 3.18 patch too.

micron10 commented 9 years ago

OKi but after apply new patch for 4.0.0 kernel and run test machine crash with this stack :

[ 260.337250] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [ssh:2764] [ 260.337345] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 260.338038] CPU: 1 PID: 2764 Comm: ssh Tainted: G O 4.0.5 #1 [ 260.338085] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 260.338162] task: ffff88013b15b3a0 ti: ffff8800b9b2c000 task.ti: ffff8800b9b2c000 [ 260.338225] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 260.338301] RSP: 0018:ffff88013fd03c70 EFLAGS: 00000297 [ 260.338341] RAX: 0000000000003b08 RBX: 00000000a0184686 RCX: 0000000000000d5e [ 260.338387] RDX: 0000000000000d5d RSI: 0000000000000000 RDI: ffff8800b89a2e80 [ 260.338442] RBP: 0000000000000001 R08: 0000000000000000 R09: 00000000d826627d [ 260.338499] R10: 0000000000000000 R11: ffff8800b8ba5a00 R12: ffff88013fd03be8 [ 260.338544] R13: ffffffff81536c57 R14: 0000000000000001 R15: ffff8800b89a2e00 [ 260.338590] FS: 00007f38b1aa6700(0000) GS:ffff88013fd00000(0000) knlGS:0000000000000000 [ 260.338657] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 260.339347] CR2: 00007f38b3628498 CR3: 00000000ba581000 CR4: 00000000001406e0 [ 260.339962] Stack: [ 260.340552] ffffffffa01e8453 ffffffffa01e0000 ffffffff810e0bf6 0000000000000058 [ 260.341765] ffff8801012411e0 ffff8800b8ba5a00 0000000000000000 0000000000000001 [ 260.342973] ffff8800b8ba5a00 0000000000000000 ffff88013955b900 ffff8800b8ba5a00 [ 260.344180] Call Trace: [ 260.344759] [ 260.344778] [] ? imq_nf_queue+0x1b3/0x690 [imq] [ 260.345950] [] ? pcnet32_probe1+0x10b0/0x1110 [pcnet32] [ 260.346522] [] ? kmalloc_track_caller+0xc6/0xf0 [ 260.347078] [] ? imq_nf_queue+0x232/0x3e2 [imq] [ 260.348935] [] ? nf_queue+0x103/0x1a0 [ 260.349668] [] ? ip_fragment+0x880/0x880 [ 260.350197] [] ? nf_hook_slow+0xc4/0x140 [ 260.350710] [] ? ip_fragment+0x880/0x880 [ 260.351224] [] ? ip_output+0x70/0x90 [ 260.351794] [] ? netif_receive_skb_core+0x6c5/0x9a0 [ 260.352276] [] ? process_backlog+0x8c/0x110 [ 260.352749] [] ? net_rx_action+0x1ce/0x2f0 [ 260.353215] [] ? __do_softirq+0xf8/0x250 [ 260.353680] [] ? do_softirq_own_stack+0x1c/0x30 [ 260.354148] [ 260.354167] [] ? do_softirq.part.2+0x1d/0x20 [ 260.355107] [] ? local_bh_enable_ip+0x78/0x80 [ 260.355586] [] ? nf_reinject+0x18a/0x190 [ 260.356043] [] ? ip_fragment+0x880/0x880 [ 260.356494] [] ? imq_dev_xmit+0x84/0xd0 [imq] [ 260.356936] [] ? dev_hard_start_xmit+0x8e/0x2f0 [ 260.357374] [] ? imq_nf_queue+0x1f3/0x690 [imq] [ 260.357806] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 260.358224] [] ? nf_queue+0x103/0x1a0 [ 260.359561] [] ? ip_fragment+0x880/0x880 [ 260.360293] [] ? nf_hook_slow+0xc4/0x140 [ 260.360672] [] ? ip_fragment+0x880/0x880 [ 260.361038] [] ? ip_output+0x70/0x90 [ 260.361403] [] ? ip_queue_xmit+0x12f/0x350 [ 260.361778] [] ? tcp_transmit_skb+0x445/0x980 [ 260.362140] [] ? tcp_recvmsg+0x39c/0xb80 [ 260.362502] [] ? inet_recvmsg+0x6c/0x80 [ 260.362856] [] ? sock_read_iter+0x84/0xd0 [ 260.363206] [] ? new_sync_read+0x6f/0xa0 [ 260.363552] [] ? vfs_read+0x71/0x100 [ 260.363896] [] ? SyS_read+0x3d/0xb0 [ 260.364239] [] ? system_call_fastpath+0x12/0x17 [ 260.364584] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba [ 264.328807] NMI watchdog: BUG: soft lockup - CPU#0 stuck for 23s! [mactelnetd:1985] [ 264.330057] Modules linked in: sg udp_diag unix_diag af_packet_diag sch_hfsc iptable_filter xt_IMQ iptable_mangle xt_nat xt_addrtype iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 ip_tables xt_IAND(O) xt_IADN(O) nf_nat nf_conntrack xt_iar80(O) xt_IA(O) xt_IADB(O) IA(O) netconsole vmw_pvscsi hwmon_vid imq pcnet32 tulip dmfe ne2k_pci 8390 b44 ssb natsemi 3c59x fealnx via_rhine sis900 e100 8139cp 8139too dl2k acenic r8169 mii tg3 libphy e1000e e1000 igb i2c_algo_bit ptp pps_core vmxnet3 mcryptd sha1_ssse3 sha1_generic arc4 ecb ppp_mppe ppp_generic slhc [ 264.334264] CPU: 0 PID: 1985 Comm: mactelnetd Tainted: G O L 4.0.5 #1 [ 264.335228] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013 [ 264.336239] task: ffff88013b18dfe0 ti: ffff8800b95f0000 task.ti: ffff8800b95f0000 [ 264.337334] RIP: 0010:[] [] _raw_spin_lock+0x32/0x40 [ 264.338464] RSP: 0018:ffff88013fc03c40 EFLAGS: 00000283 [ 264.339677] RAX: 0000000000002b5a RBX: 0000000ea0184658 RCX: 0000000000000d60 [ 264.340555] RDX: 0000000000000d5d RSI: 0000000000000000 RDI: ffff8800b89a2e80 [ 264.341149] RBP: 0000000000000000 R08: 0000000000000000 R09: 00000000d826e31e [ 264.341740] R10: 0000000000000002 R11: 0000000000000000 R12: ffff88013fc03bb8 [ 264.342359] R13: ffffffff81536c57 R14: 0000000000000000 R15: ffff8800b89a2e00 [ 264.342951] FS: 00007ffabe1fd700(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 264.344137] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 264.344770] CR2: 00007f5e7f358000 CR3: 00000000b959d000 CR4: 00000000001406f0 [ 264.345416] Stack: [ 264.346017] ffffffffa01e8453 00000004bb760000 0000000000000000 ffff8800bb76c000 [ 264.347228] 0000000101000000 ffff8800bb76c000 ffff88013b3b7540 0000000000000001 [ 264.348432] ffff88013aa38b00 ffff88013aa38b00 0000000000000002 ffffffffa01e9298 [ 264.350412] Call Trace: [ 264.351136] [ 264.351151] [] ? imq_nf_queue+0x1b3/0x690 [imq] [ 264.352298] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 264.352858] [] ? nf_queue+0x103/0x1a0 [ 264.353406] [] ? ip_fragment+0x880/0x880 [ 264.353946] [] ? nf_hook_slow+0xc4/0x140 [ 264.354470] [] ? ip_fragment+0x880/0x880 [ 264.354983] [] ? ip_output+0x70/0x90 [ 264.355476] [] ? netif_receive_skb_core+0x6c5/0x9a0 [ 264.355973] [] ? process_backlog+0x8c/0x110 [ 264.356454] [] ? net_rx_action+0x1ce/0x2f0 [ 264.356926] [] ? __do_softirq+0xf8/0x250 [ 264.357383] [] ? irq_exit+0x115/0x120 [ 264.357834] [] ? smp_trace_apic_timer_interrupt+0x67/0xa0 [ 264.358293] [] ? apic_timer_interrupt+0x67/0x70 [ 264.358751] [ 264.358771] [] ? _raw_spin_lock+0x32/0x40 [ 264.359724] [] ? imq_nf_queue+0x1b3/0x690 [imq] [ 264.361112] [] ? imq_nf_queue+0x29f/0x3e2 [imq] [ 264.361577] [] ? iptable_nat_ipv4_fn+0x10/0x10 [iptable_nat] [ 264.362461] [] ? nf_queue+0x103/0x1a0 [ 264.362917] [] ? netif_rx_ni+0x30/0x30 [ 264.363364] [] ? nf_hook_slow+0xc4/0x140 [ 264.363802] [] ? netif_rx_ni+0x30/0x30 [ 264.364220] [] ? ip_mc_output+0x1a2/0x1d0 [ 264.364625] [] ? ip_local_out_sk+0x14/0x40 [ 264.365019] [] ? ip_send_skb+0xd/0x40 [ 264.365394] [] ? udp_send_skb+0x154/0x290 [ 264.365772] [] ? udp_sendmsg+0x2a1/0x8a0 [ 264.366154] [] ? core_sys_select+0x1df/0x2a0 [ 264.366531] [] ? do_sock_sendmsg+0x3b/0x60 [ 264.366912] [] ? SyS_sendto+0x13e/0x180 [ 264.367282] [] ? si_meminfo+0x3a/0x60 [ 264.367652] [] ? SyS_sysinfo+0xe7/0x100 [ 264.368024] [] ? int_check_syscall_exit_work+0x34/0x3d [ 264.368404] [] ? system_call_fastpath+0x12/0x17 [ 264.368785] Code: c1 07 89 c2 c1 ea 10 66 39 c2 89 d1 75 0b c3 66 2e 0f 1f 84 00 00 00 00 00 b8 00 80 00 00 eb 10 66 0f 1f 84 00 00 00 00 00 f3 90 <83> e8 01 74 e9 0f b7 17 66 39 ca 75 f1 c3 8b 07 84 c0 75 21 ba

coolex commented 9 years ago

same here in kernel 4.0.5 :-(

[19256.353709] INFO: rcu_sched self-detected stall on CPU { 5} (t=60000 jiffies g=19873 c=19872 q=0) [19256.353716] Task dump for CPU 5: [19256.353718] kworker/5:2 R running task 13512 2425 2 0x00080008 [19256.353741] Workqueue: ipv6_addrconf addrconf_dad_work [19256.353743] ffffffff81c35940 ffff88013fd43da8 ffffffff810655bc 0000000000000005 [19256.353745] ffffffff81c35940 ffff88013fd43dc8 ffffffff81068158 ffff88013fd43e08 [19256.353746] 0000000000000006 ffff88013fd43df8 ffffffff81083cb0 ffff88013fd52d40 [19256.353748] Call Trace: [19256.353749] [] sched_show_task+0xcc/0x130 [19256.353793] [] dump_cpu_task+0x38/0x40 [19256.353798] [] rcu_dump_cpu_stacks+0x90/0xd0 [19256.353801] [] rcu_check_callbacks+0x413/0x750 [19256.353804] [] update_process_times+0x34/0x60 [19256.353810] [] tick_sched_handle.isra.19+0x31/0x40 [19256.353812] [] tick_sched_timer+0x3c/0x70 [19256.353814] [] __run_hrtimer.isra.34+0x41/0xf0 [19256.353816] [] hrtimer_interrupt+0xc5/0x1e0 [19256.353822] [] local_apic_timer_interrupt+0x34/0x60 [19256.353824] [] smp_apic_timer_interrupt+0x3c/0x60 [19256.353831] [] apic_timer_interrupt+0x6a/0x70 [19256.353833] [] ? _raw_spin_lock+0x1c/0x30 [19256.353844] [] imq_nf_queue+0x205/0x600 [19256.353846] [] imq_nf_queue+0x1a4/0x370 [19256.353854] [] ? ip6table_mangle_hook+0x66/0x150 [ip6table_mangle] [19256.353882] [] nf_queue+0x13d/0x180 [19256.353892] [] ? netif_device_attach+0x70/0x70 [19256.353894] [] nf_hook_slow+0xb6/0x150 [19256.353896] [] ? netif_device_attach+0x70/0x70 [19256.353898] [] ip6_finish_output2+0x326/0x430 [19256.353900] [] ? nf_iterate+0x8a/0xa0 [19256.353901] [] ip6_finish_output+0x8f/0xe0 [19256.353903] [] nf_reinject+0x61/0x160 [19256.353904] [] ? ip6_fragment+0xad0/0xad0 [19256.353906] [] imq_dev_xmit+0x8d/0xd0 [19256.353908] [] dev_hard_start_xmit+0x89/0x330 [19256.353910] [] imq_nf_queue+0x1ea/0x600 [19256.353933] [] imq_nf_queue+0x1a4/0x370 [19256.353937] [] ? ip6table_mangle_hook+0x66/0x150 [ip6table_mangle] [19256.353940] [] nf_queue+0x13d/0x180 [19256.353942] [] ? ip6_fragment+0xad0/0xad0 [19256.353944] [] nf_hook_slow+0xb6/0x150 [19256.353945] [] ? ip6_fragment+0xad0/0xad0 [19256.353947] [] ? compat_ipv6_setsockopt+0xf0/0xf0 [19256.353949] [] ip6_output+0x6e/0xc0 [19256.353951] [] ndisc_send_skb+0x216/0x290 [19256.353953] [] ndisc_send_ns+0xc3/0x110 [19256.353955] [] addrconf_dad_work+0x21f/0x310 [19256.353957] [] process_one_work+0x133/0x360 [19256.353959] [] worker_thread+0x119/0x440 [19256.353961] [] ? rescuer_thread+0x2f0/0x2f0 [19256.353963] [] kthread+0xc4/0xe0 [19256.353965] [] ? kthread_create_on_node+0x170/0x170 [19256.353967] [] ret_from_fork+0x58/0x90 [19256.353969] [] ? kthread_create_on_node+0x170/0x170

gfreewind commented 9 years ago

Could you paste your IMQ iptables command please?

The following is my test env

  1. Kernel Version is 4.0.5 [fgao@ubuntu ~]#uname -a Linux ubuntu 4.0.5+ #5 SMP Wed Jun 17 17:38:02 PDT 2015 i686 i686 i686 GNU/Linux
  2. Config the IMQ rules [root@ubuntu ~]#iptables -t mangle -A POSTROUTING -o eth0 -j IMQ --todev 0 [root@ubuntu ~]#iptables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 1
  3. Check the rules [root@ubuntu ~]#iptables -t mangle -L -n -v Chain PREROUTING (policy ACCEPT 123 packets, 10258 bytes) pkts bytes target prot opt in out source destination 123 10258 IMQ all -- eth0 * 0.0.0.0/0 0.0.0.0/0 IMQ: todev 1

Chain POSTROUTING (policy ACCEPT 92 packets, 14932 bytes) pkts bytes target prot opt in out source destination 95 15308 IMQ all -- * eth0 0.0.0.0/0 0.0.0.0/0 IMQ: todev 0

Now you could find the rules are working now, and the machine will not crash until power off. Yesterday I ran the computer for a whole day.

You could follow my steps and paste the output.

  1. Go to the build dir of kernel 4.0.5 you compiled;
  2. gdb vmlinux
  3. l *(__imq_nf_queue+0x1b3)
  4. l *(imq_nf_queue+0x29f)
gfreewind commented 9 years ago

Hi i get the root reason this time by analyzing your dump stack.

I think you should configure the imq rule in the localout hook. It is running on process context.

I did not consider about this case.

Now I have fixed it in 4.0 patch. Please check it.

coolex commented 9 years ago

Hi everyone, today i have more time on testing, than: Kernel: 3.14.41 test 1: original patch: linux-3.13.10_hardened_gentoo.diff - from 25.5.2014 - OK test 2: latest patch: linux-3.14-imq.diff - IMQ-AB - CRASH test 3: latest patch: linux-3.14-imq.diff - IMQ-BA - CRASH

Kernel: 4.0.5 latest patch: linux-4.0-imq.diff - CRASH

every time it is same: if shaper is ON and I do ifconfig eth2 down , ifconfig eth2 up kernel crash...

Script example, kernel config and crash log is here: https://github.com/coolex/shaper-scripts

Can I do something more for finding reason of crash?

gfreewind commented 9 years ago

Hi coolex,

I have some questions:

  1. latest patch: linux-3.14-imq.diff - IMQ-AB - CRASH ----------- What's the meaning of "AB" ?
  2. you said you used the latest version. Could you check it if there is the following change please ? shutdown_change

If not, it means the file you using is not latest file.

  1. If the lastest file has the issue still, could you give me one simple step to reproduct it please ? I noticed you have given the script you using.

My computer has only one interface now. And how could i reproduce it? how about the firewall.sh? Execute the firewall.sh, then execute the shaper.sh, at last shutdown the interfaces and up?

coolex commented 9 years ago

Hi gfreewind, 1) AA/AB/BA/BB are modes of IMQ :-)

2) yes i have image

Now I found what path is problem => IPv6 Without usage IPv6 it's OK

Most easy way how to reproduce is: ip link set imq0 up ip link set imq1 up tc qdisc add dev imq0 root handle 1: htb tc qdisc add dev imq1 root handle 1: htb iptables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 0 iptables -t mangle -A POSTROUTING -o eth0 -j IMQ --todev 1 ip6tables -t mangle -A PREROUTING -i eth0 -j IMQ --todev 0 ip6tables -t mangle -A POSTROUTING -o eth0 -j IMQ --todev 1

ifconfig eth0 down ifconfig eth0 up

gfreewind commented 9 years ago

Without IPv6, it is ok. It seems a little weird.

But it would be easy to fix if I could reproduce it in my env.

Thanks you give the most easy steps.

gfreewind commented 9 years ago

Hi coolex,

Thanks your easy steps to reproduce the problem. I have committed one fix of 4.0 patch. It passed my test with the steps above. You could test it now after update the latest version of 4.0 patch.

If ok, I will merge the fix to other kernel versions.

Thanks again.

coolex commented 9 years ago

Hi gfreewind, nice work! Now it's work without crash.

Now I go testing performance :-)

gfreewind commented 9 years ago

Hi coolex,

I just removed one useless lock of imq. I think it is useless at least. And the change has already been working for a long time in my env. Could you test it too please? And how about the performance tests?