[ 25.851074][ T262] ip (262) used greatest stack depth: 23152 bytes left [ 35.381170][ T338] [ 35.381289][ T338] ===================================================== [ 35.381489][ T338] WARNING: SOFTIRQ-safe -> SOFTIRQ-unsafe lock order detected [ 35.381724][ T338] 6.9.0-rc1-virtme #1 Not tainted [ 35.381884][ T338] ----------------------------------------------------- [ 35.382073][ T338] ip/338 [HC0[0]:SC0[2]:HE1:SE0] is trying to acquire: [ 35.382267][ T338] ffff888006af4ee8 (&p->alloc_lock){+.+.}-{2:2}, at: __get_task_comm+0x27/0x70 [ 35.382551][ T338] [ 35.382551][ T338] and this task is already holding: [ 35.382780][ T338] ffff8880360bf218 (&ul->lock){+.-.}-{2:2}, at: rt6_uncached_list_flush_dev+0x138/0x840 [ 35.383060][ T338] which would create a new lock dependency: [ 35.383254][ T338] (&ul->lock){+.-.}-{2:2} -> (&p->alloc_lock){+.+.}-{2:2} [ 35.383502][ T338] [ 35.383502][ T338] but this new dependency connects a SOFTIRQ-irq-safe lock: [ 35.383769][ T338] (&ul->lock){+.-.}-{2:2} [ 35.383772][ T338] [ 35.383772][ T338] ... which became SOFTIRQ-irq-safe at: [ 35.384148][ T338] __lock_acquire+0x797/0x1570 [ 35.384316][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.384474][ T338] _raw_spin_lock_bh+0x38/0x50 [ 35.384631][ T338] rt6_uncached_list_del+0x77/0x200 [ 35.384790][ T338] ip6_dst_destroy+0x74/0x1e0 [ 35.384947][ T338] dst_destroy+0xbc/0x370 [ 35.385105][ T338] rcu_do_batch+0x3c0/0xfb0 [ 35.385264][ T338] rcu_core+0x2be/0x500 [ 35.385382][ T338] __do_softirq+0x1f8/0x5df [ 35.385549][ T338] run_ksoftirqd+0x2e/0x60 [ 35.385707][ T338] smpboot_thread_fn+0x306/0x840 [ 35.385871][ T338] kthread+0x28a/0x350 [ 35.385990][ T338] ret_from_fork+0x31/0x70 [ 35.386153][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.386313][ T338] [ 35.386313][ T338] to a SOFTIRQ-irq-unsafe lock: [ 35.386506][ T338] (&p->alloc_lock){+.+.}-{2:2} [ 35.386511][ T338] [ 35.386511][ T338] ... which became SOFTIRQ-irq-unsafe at: [ 35.386910][ T338] ... [ 35.386911][ T338] __lock_acquire+0x797/0x1570 [ 35.387147][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.387307][ T338] _raw_spin_lock+0x30/0x40 [ 35.387464][ T338] set_mems_allowed+0x1d/0x210 [ 35.387619][ T338] kernel_init_freeable+0x72/0x310 [ 35.387775][ T338] kernel_init+0x20/0x200 [ 35.387936][ T338] ret_from_fork+0x31/0x70 [ 35.388094][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.388257][ T338] [ 35.388257][ T338] other info that might help us debug this: [ 35.388257][ T338] [ 35.388567][ T338] Possible interrupt unsafe locking scenario: [ 35.388567][ T338] [ 35.388800][ T338] CPU0 CPU1 [ 35.388954][ T338] ---- ---- [ 35.389108][ T338] lock(&p->alloc_lock); [ 35.389229][ T338] local_irq_disable(); [ 35.389418][ T338] lock(&ul->lock); [ 35.389611][ T338] lock(&p->alloc_lock); [ 35.389808][ T338] [ 35.389926][ T338] lock(&ul->lock); [ 35.390045][ T338] [ 35.390045][ T338] *** DEADLOCK *** [ 35.390045][ T338] [ 35.390274][ T338] 2 locks held by ip/338: [ 35.390393][ T338] #0: ffffffffb1db7208 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x2af/0xbf0 [ 35.390682][ T338] #1: ffff8880360bf218 (&ul->lock){+.-.}-{2:2}, at: rt6_uncached_list_flush_dev+0x138/0x840 [ 35.391002][ T338] [ 35.391002][ T338] the dependencies between SOFTIRQ-irq-safe lock and the holding lock: [ 35.391310][ T338] -> (&ul->lock){+.-.}-{2:2} { [ 35.391473][ T338] HARDIRQ-ON-W at: [ 35.391593][ T338] __lock_acquire+0x797/0x1570 [ 35.391794][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.391993][ T338] _raw_spin_lock_bh+0x38/0x50 [ 35.392190][ T338] rt6_uncached_list_add+0x55/0x1b0 [ 35.392390][ T338] icmp6_dst_alloc+0x2c0/0x450 [ 35.392589][ T338] mld_sendpack+0x529/0xbc0 [ 35.392787][ T338] mld_ifc_work+0x32/0x1f0 [ 35.392984][ T338] process_one_work+0xe2c/0x1730 [ 35.393183][ T338] worker_thread+0x587/0xd30 [ 35.393381][ T338] kthread+0x28a/0x350 [ 35.393542][ T338] ret_from_fork+0x31/0x70 [ 35.393740][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.393937][ T338] IN-SOFTIRQ-W at: [ 35.394055][ T338] __lock_acquire+0x797/0x1570 [ 35.394251][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.394450][ T338] _raw_spin_lock_bh+0x38/0x50 [ 35.394653][ T338] rt6_uncached_list_del+0x77/0x200 [ 35.394852][ T338] ip6_dst_destroy+0x74/0x1e0 [ 35.395048][ T338] dst_destroy+0xbc/0x370 [ 35.395246][ T338] rcu_do_batch+0x3c0/0xfb0 [ 35.395443][ T338] rcu_core+0x2be/0x500 [ 35.395640][ T338] __do_softirq+0x1f8/0x5df [ 35.395837][ T338] run_ksoftirqd+0x2e/0x60 [ 35.396035][ T338] smpboot_thread_fn+0x306/0x840 [ 35.396235][ T338] kthread+0x28a/0x350 [ 35.396393][ T338] ret_from_fork+0x31/0x70 [ 35.396589][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.396795][ T338] INITIAL USE at: [ 35.396923][ T338] __lock_acquire+0x797/0x1570 [ 35.397119][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.397316][ T338] _raw_spin_lock_bh+0x38/0x50 [ 35.397514][ T338] rt6_uncached_list_add+0x55/0x1b0 [ 35.397709][ T338] icmp6_dst_alloc+0x2c0/0x450 [ 35.397906][ T338] mld_sendpack+0x529/0xbc0 [ 35.398104][ T338] mld_ifc_work+0x32/0x1f0 [ 35.398300][ T338] process_one_work+0xe2c/0x1730 [ 35.398495][ T338] worker_thread+0x587/0xd30 [ 35.398694][ T338] kthread+0x28a/0x350 [ 35.398850][ T338] ret_from_fork+0x31/0x70 [ 35.399042][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.399238][ T338] } [ 35.399318][ T338] ... key at: [] __key.15+0x0/0x40 [ 35.399554][ T338] [ 35.399554][ T338] the dependencies between the lock to be acquired [ 35.399555][ T338] and SOFTIRQ-irq-unsafe lock: [ 35.399979][ T338] -> (&p->alloc_lock){+.+.}-{2:2} { [ 35.400142][ T338] HARDIRQ-ON-W at: [ 35.400264][ T338] __lock_acquire+0x797/0x1570 [ 35.400462][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.400663][ T338] _raw_spin_lock+0x30/0x40 [ 35.400859][ T338] set_mems_allowed+0x1d/0x210 [ 35.401056][ T338] kernel_init_freeable+0x72/0x310 [ 35.401255][ T338] kernel_init+0x20/0x200 [ 35.401452][ T338] ret_from_fork+0x31/0x70 [ 35.401649][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.401848][ T338] SOFTIRQ-ON-W at: [ 35.401968][ T338] __lock_acquire+0x797/0x1570 [ 35.402174][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.402371][ T338] _raw_spin_lock+0x30/0x40 [ 35.402572][ T338] set_mems_allowed+0x1d/0x210 [ 35.402771][ T338] kernel_init_freeable+0x72/0x310 [ 35.402968][ T338] kernel_init+0x20/0x200 [ 35.403167][ T338] ret_from_fork+0x31/0x70 [ 35.403370][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.403568][ T338] INITIAL USE at: [ 35.403688][ T338] __lock_acquire+0x797/0x1570 [ 35.403889][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.404089][ T338] _raw_spin_lock+0x30/0x40 [ 35.404287][ T338] set_mems_allowed+0x1d/0x210 [ 35.404487][ T338] kernel_init_freeable+0x72/0x310 [ 35.404683][ T338] kernel_init+0x20/0x200 [ 35.404978][ T338] ret_from_fork+0x31/0x70 [ 35.405178][ T338] ret_from_fork_asm+0x1a/0x30 [ 35.405376][ T338] } [ 35.405457][ T338] ... key at: [] __key.388+0x0/0x40 [ 35.405781][ T338] ... acquired at: [ 35.405900][ T338] check_prev_add+0x194/0xce0 [ 35.406061][ T338] validate_chain+0x71d/0x9b0 [ 35.406219][ T338] __lock_acquire+0xaf0/0x1570 [ 35.406466][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.406626][ T338] _raw_spin_lock+0x30/0x40 [ 35.406796][ T338] __get_task_comm+0x27/0x70 [ 35.406960][ T338] ref_tracker_alloc+0x2ee/0x490 [ 35.407207][ T338] rt6_uncached_list_flush_dev+0x494/0x840 [ 35.407407][ T338] rt6_disable_ip+0xd9/0x140 [ 35.407564][ T338] addrconf_ifdown.isra.0+0x103/0x1560 [ 35.407723][ T338] addrconf_notify+0xd1/0xd60 [ 35.407966][ T338] notifier_call_chain+0xcd/0x150 [ 35.408125][ T338] __dev_notify_flags+0x170/0x250 [ 35.408285][ T338] dev_change_flags+0xec/0x160 [ 35.408449][ T338] do_setlink+0x7d6/0x21e0 [ 35.408695][ T338] __rtnl_newlink+0xaa7/0xd80 [ 35.408856][ T338] rtnl_newlink+0x63/0xa0 [ 35.409013][ T338] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 35.409171][ T338] netlink_rcv_skb+0x130/0x360 [ 35.409329][ T338] netlink_unicast+0x449/0x710 [ 35.409578][ T338] netlink_sendmsg+0x723/0xbe0 [ 35.409740][ T338] ____sys_sendmsg+0x7b2/0xa10 [ 35.409899][ T338] ___sys_sendmsg+0xee/0x170 [ 35.410055][ T338] __sys_sendmsg+0xcd/0x170 [ 35.410214][ T338] do_syscall_64+0xc6/0x1e0 [ 35.410374][ T338] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 35.410578][ T338] [ 35.410659][ T338] [ 35.410659][ T338] stack backtrace: [ 35.410941][ T338] CPU: 1 PID: 338 Comm: ip Not tainted 6.9.0-rc1-virtme #1 [ 35.411174][ T338] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 35.411519][ T338] Call Trace: [ 35.411738][ T338] [ 35.411819][ T338] dump_stack_lvl+0x82/0xd0 [ 35.411978][ T338] print_bad_irq_dependency+0x957/0xd40 [ 35.412136][ T338] ? hlock_class+0x4e/0x130 [ 35.412298][ T338] ? __pfx_print_bad_irq_dependency+0x10/0x10 [ 35.412580][ T338] ? __pfx_usage_skip+0x10/0x10 [ 35.412742][ T338] ? __bfs+0x246/0x650 [ 35.412861][ T338] ? __pfx_usage_match+0x10/0x10 [ 35.413020][ T338] check_irq_usage+0x596/0x850 [ 35.413264][ T338] ? __pfx_check_irq_usage+0x10/0x10 [ 35.413420][ T338] ? __bfs+0x246/0x650 [ 35.413537][ T338] ? __pfx_hlock_conflict+0x10/0x10 [ 35.413695][ T338] ? check_path.constprop.0+0x24/0x50 [ 35.413938][ T338] ? check_noncircular+0x14c/0x3e0 [ 35.414098][ T338] ? __pfx_check_noncircular+0x10/0x10 [ 35.414266][ T338] ? check_prev_add+0x194/0xce0 [ 35.414424][ T338] check_prev_add+0x194/0xce0 [ 35.414582][ T338] ? validate_chain+0x130/0x9b0 [ 35.414914][ T338] validate_chain+0x71d/0x9b0 [ 35.415072][ T338] ? mark_lock+0x38/0x3e0 [ 35.415192][ T338] ? __pfx_validate_chain+0x10/0x10 [ 35.415346][ T338] ? hlock_class+0x4e/0x130 [ 35.415598][ T338] ? mark_lock+0x38/0x3e0 [ 35.415721][ T338] __lock_acquire+0xaf0/0x1570 [ 35.415883][ T338] lock_acquire.part.0+0xeb/0x330 [ 35.416042][ T338] ? __get_task_comm+0x27/0x70 [ 35.416200][ T338] ? mark_lock+0x38/0x3e0 [ 35.416320][ T338] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 35.416479][ T338] ? trace_lock_acquire+0x135/0x1c0 [ 35.416641][ T338] ? __get_task_comm+0x27/0x70 [ 35.416813][ T338] ? lock_acquire+0x32/0xc0 [ 35.417061][ T338] ? __get_task_comm+0x27/0x70 [ 35.417221][ T338] _raw_spin_lock+0x30/0x40 [ 35.417379][ T338] ? __get_task_comm+0x27/0x70 [ 35.417536][ T338] __get_task_comm+0x27/0x70 [ 35.417784][ T338] ref_tracker_alloc+0x2ee/0x490 [ 35.417944][ T338] ? __pfx_ref_tracker_alloc+0x10/0x10 [ 35.418104][ T338] ? __lock_release+0x103/0x460 [ 35.418260][ T338] ? rt6_uncached_list_flush_dev+0x494/0x840 [ 35.418550][ T338] ? rt6_disable_ip+0xd9/0x140 [ 35.418709][ T338] ? addrconf_ifdown.isra.0+0x103/0x1560 [ 35.418867][ T338] ? addrconf_notify+0xd1/0xd60 [ 35.419026][ T338] ? notifier_call_chain+0xcd/0x150 [ 35.419182][ T338] ? __dev_notify_flags+0x170/0x250 [ 35.419348][ T338] ? dev_change_flags+0xec/0x160 [ 35.419507][ T338] ? do_setlink+0x7d6/0x21e0 [ 35.419664][ T338] ? __rtnl_newlink+0xaa7/0xd80 [ 35.419820][ T338] ? rtnl_newlink+0x63/0xa0 [ 35.419980][ T338] ? rtnetlink_rcv_msg+0x2fb/0xbf0 [ 35.420135][ T338] ? netlink_rcv_skb+0x130/0x360 [ 35.420294][ T338] ? netlink_unicast+0x449/0x710 [ 35.420447][ T338] ? netlink_sendmsg+0x723/0xbe0 [ 35.420697][ T338] ? ____sys_sendmsg+0x7b2/0xa10 [ 35.420855][ T338] ? ___sys_sendmsg+0xee/0x170 [ 35.421013][ T338] ? in6_dev_get+0xcc/0x210 [ 35.421170][ T338] rt6_uncached_list_flush_dev+0x494/0x840 [ 35.421457][ T338] rt6_disable_ip+0xd9/0x140 [ 35.421616][ T338] ? __pfx_rt6_disable_ip+0x10/0x10 [ 35.421773][ T338] ? hlock_class+0x4e/0x130 [ 35.421931][ T338] addrconf_ifdown.isra.0+0x103/0x1560 [ 35.422180][ T338] ? __try_to_del_timer_sync+0xe7/0x140 [ 35.422337][ T338] ? __pfx_addrconf_ifdown.isra.0+0x10/0x10 [ 35.422537][ T338] addrconf_notify+0xd1/0xd60 [ 35.422695][ T338] notifier_call_chain+0xcd/0x150 [ 35.422944][ T338] __dev_notify_flags+0x170/0x250 [ 35.423104][ T338] ? __pfx___dev_notify_flags+0x10/0x10 [ 35.423260][ T338] ? __dev_change_flags+0x24f/0x6c0 [ 35.423416][ T338] ? __pfx___dev_change_flags+0x10/0x10 [ 35.423575][ T338] dev_change_flags+0xec/0x160 [ 35.423821][ T338] do_setlink+0x7d6/0x21e0 [ 35.423978][ T338] ? is_bpf_text_address+0x6c/0x120 [ 35.424135][ T338] ? __pfx_do_setlink+0x10/0x10 [ 35.424293][ T338] ? is_bpf_text_address+0x71/0x120 [ 35.424548][ T338] ? kernel_text_address+0xce/0xe0 [ 35.424709][ T338] ? __kernel_text_address+0x12/0x40 [ 35.424867][ T338] ? unwind_get_return_address+0x5e/0xa0 [ 35.425027][ T338] ? __pfx_stack_trace_consume_entry+0x10/0x10 [ 35.425224][ T338] ? arch_stack_walk+0xa2/0xf0 [ 35.425384][ T338] ? stack_trace_save+0x94/0xd0 [ 35.425540][ T338] ? __pfx_stack_trace_save+0x10/0x10 [ 35.425702][ T338] ? stack_depot_save_flags+0x45/0x530 [ 35.425857][ T338] ? mark_lock+0x38/0x3e0 [ 35.425976][ T338] ? kasan_save_stack+0x34/0x50 [ 35.426136][ T338] ? kasan_save_stack+0x24/0x50 [ 35.426294][ T338] ? kasan_save_track+0x14/0x30 [ 35.426448][ T338] ? __kasan_kmalloc+0x7f/0x90 [ 35.426699][ T338] ? rtnl_newlink+0x4a/0xa0 [ 35.426864][ T338] ? rtnetlink_rcv_msg+0x2fb/0xbf0 [ 35.427018][ T338] ? netlink_rcv_skb+0x130/0x360 [ 35.427181][ T338] ? validate_nla+0x1d30/0x1d30 [ 35.427338][ T338] ? netlink_sendmsg+0x723/0xbe0 [ 35.427494][ T338] ? ____sys_sendmsg+0x7b2/0xa10 [ 35.427653][ T338] ? ___sys_sendmsg+0xee/0x170 [ 35.427812][ T338] __rtnl_newlink+0xaa7/0xd80 [ 35.427971][ T338] ? hlock_class+0x4e/0x130 [ 35.428128][ T338] ? __pfx___rtnl_newlink+0x10/0x10 [ 35.428286][ T338] ? lockdep_hardirqs_on_prepare.part.0+0x1af/0x370 [ 35.428485][ T338] ? __create_object+0x5e/0xb0 [ 35.428730][ T338] ? trace_kmalloc+0x2a/0xe0 [ 35.428888][ T338] rtnl_newlink+0x63/0xa0 [ 35.429006][ T338] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 35.429160][ T338] ? __pfx_rtnetlink_rcv_msg+0x10/0x10 [ 35.429317][ T338] ? hlock_class+0x4e/0x130 [ 35.429560][ T338] ? mark_lock+0x38/0x3e0 [ 35.429679][ T338] ? __lock_acquire+0xaf0/0x1570 [ 35.429833][ T338] netlink_rcv_skb+0x130/0x360 [ 35.429989][ T338] ? __pfx_rtnetlink_rcv_msg+0x10/0x10 [ 35.430232][ T338] ? __pfx_netlink_rcv_skb+0x10/0x10 [ 35.430388][ T338] ? lock_acquire.part.0+0xeb/0x330 [ 35.430548][ T338] ? netlink_deliver_tap+0xc8/0x340 [ 35.430712][ T338] ? lock_acquire+0x32/0xc0 [ 35.430956][ T338] ? netlink_deliver_tap+0xc8/0x340 [ 35.431112][ T338] ? netlink_deliver_tap+0xc8/0x340 [ 35.431269][ T338] ? netlink_deliver_tap+0x149/0x340 [ 35.431429][ T338] netlink_unicast+0x449/0x710 [ 35.431584][ T338] ? __pfx_netlink_unicast+0x10/0x10 [ 35.431828][ T338] ? find_held_lock+0x2c/0x110 [ 35.431983][ T338] netlink_sendmsg+0x723/0xbe0 [ 35.432138][ T338] ? __pfx_netlink_sendmsg+0x10/0x10 [ 35.432294][ T338] ? __might_fault+0xc3/0x170 [ 35.432545][ T338] ? __import_iovec+0x35d/0x5d0 [ 35.432704][ T338] ____sys_sendmsg+0x7b2/0xa10 [ 35.432865][ T338] ? __pfx_____sys_sendmsg+0x10/0x10 [ 35.433021][ T338] ? __pfx_copy_msghdr_from_user+0x10/0x10 [ 35.433218][ T338] ? __pfx_validate_chain+0x10/0x10 [ 35.433378][ T338] ___sys_sendmsg+0xee/0x170 [ 35.433536][ T338] ? __pfx____sys_sendmsg+0x10/0x10 [ 35.433693][ T338] ? find_held_lock+0x2c/0x110 [ 35.433940][ T338] ? __lock_release+0x103/0x460 [ 35.434097][ T338] ? __debug_check_no_obj_freed+0x253/0x520 [ 35.434304][ T338] ? __pfx___lock_release+0x10/0x10 [ 35.434462][ T338] ? __pfx_do_raw_spin_lock+0x10/0x10 [ 35.434705][ T338] ? lockdep_hardirqs_on_prepare.part.0+0x1af/0x370 [ 35.434902][ T338] ? __fget_light+0x53/0x1e0 [ 35.435062][ T338] __sys_sendmsg+0xcd/0x170 [ 35.435220][ T338] ? __pfx___sys_sendmsg+0x10/0x10 [ 35.435469][ T338] do_syscall_64+0xc6/0x1e0 [ 35.435631][ T338] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 35.435826][ T338] RIP: 0033:0x7f053ba937b7 [ 35.435990][ T338] Code: 0a 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b9 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2e 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 89 54 24 1c 48 89 74 24 10 [ 35.436638][ T338] RSP: 002b:00007ffee782baf8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 35.436981][ T338] RAX: ffffffffffffffda RBX: 00007ffee782c220 RCX: 00007f053ba937b7 [ 35.437222][ T338] RDX: 0000000000000000 RSI: 00007ffee782bb60 RDI: 0000000000000005 [ 35.437461][ T338] RBP: 0000000000000002 R08: 0000000000000003 R09: 0000000000000078 [ 35.437785][ T338] R10: 00007f053b951ef8 R11: 0000000000000246 R12: 0000000000000002 [ 35.438020][ T338] R13: 00000000660ea870 R14: 0000000000495540 R15: 0000000000000000 [ 35.438261][ T338] [ 35.448194][ T338] ip (338) used greatest stack depth: 22656 bytes left