================================ WARNING: inconsistent lock state 4.15.0-rc9+ #283 Not tainted -------------------------------- inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. syz-executor2/3727 [HC0[0]:SC1[1]:HE1:SE0] takes: (&(&est->lock)->rlock){+.?.}, at: [<000000006f7ff9ef>] spin_lock include/linux/spinlock.h:310 [inline] (&(&est->lock)->rlock){+.?.}, at: [<000000006f7ff9ef>] est_fetch_counters+0x4f/0x150 net/core/gen_estimator.c:70 {SOFTIRQ-ON-W} state was registered at: lock_acquire+0x1d5/0x580 kernel/locking/lockdep.c:3914 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:144 spin_lock include/linux/spinlock.h:310 [inline] est_fetch_counters+0x4f/0x150 net/core/gen_estimator.c:70 gen_new_estimator+0x317/0x770 net/core/gen_estimator.c:162 xt_rateest_tg_checkentry+0x487/0xaa0 net/netfilter/xt_RATEEST.c:135 xt_check_target+0x22c/0x7d0 net/netfilter/x_tables.c:845 check_target net/ipv6/netfilter/ip6_tables.c:538 [inline] find_check_entry.isra.7+0x935/0xcf0 net/ipv6/netfilter/ip6_tables.c:580 translate_table+0xf52/0x1690 net/ipv6/netfilter/ip6_tables.c:749 do_replace net/ipv6/netfilter/ip6_tables.c:1167 [inline] do_ip6t_set_ctl+0x370/0x5f0 net/ipv6/netfilter/ip6_tables.c:1693 nf_sockopt net/netfilter/nf_sockopt.c:106 [inline] nf_setsockopt+0x67/0xc0 net/netfilter/nf_sockopt.c:115 ipv6_setsockopt+0x115/0x150 net/ipv6/ipv6_sockglue.c:928 udpv6_setsockopt+0x45/0x80 net/ipv6/udp.c:1452 sock_common_setsockopt+0x95/0xd0 net/core/sock.c:2968 SYSC_setsockopt net/socket.c:1831 [inline] SyS_setsockopt+0x189/0x360 net/socket.c:1810 entry_SYSCALL_64_fastpath+0x29/0xa0 irq event stamp: 164252 hardirqs last enabled at (164252): [<000000002bc21760>] __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:168 [inline] hardirqs last enabled at (164252): [<000000002bc21760>] _raw_spin_unlock_irq+0x27/0x70 kernel/locking/spinlock.c:192 hardirqs last disabled at (164251): [<000000003149017e>] __raw_spin_lock_irq include/linux/spinlock_api_smp.h:126 [inline] hardirqs last disabled at (164251): [<000000003149017e>] _raw_spin_lock_irq+0x3c/0x80 kernel/locking/spinlock.c:160 softirqs last enabled at (164240): [<000000003d4090b3>] lock_sock_nested+0x91/0x110 net/core/sock.c:2765 softirqs last disabled at (164249): [<0000000014277c6d>] invoke_softirq kernel/softirq.c:365 [inline] softirqs last disabled at (164249): [<0000000014277c6d>] irq_exit+0x1cc/0x200 kernel/softirq.c:405 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&(&est->lock)->rlock); lock(&(&est->lock)->rlock); *** DEADLOCK *** 4 locks held by syz-executor2/3727: #0: (sk_lock-AF_INET){+.+.}, at: [<000000001b9a9ceb>] lock_sock include/net/sock.h:1461 [inline] #0: (sk_lock-AF_INET){+.+.}, at: [<000000001b9a9ceb>] ip_getsockopt+0x143/0x220 net/ipv4/ip_sockglue.c:1572 #1: (&xt[i].mutex){+.+.}, at: [<00000000177870f7>] xt_find_table_lock+0x40/0x3d0 net/netfilter/x_tables.c:1036 #2: (rcu_read_lock){....}, at: [<00000000a996ab6c>] is_bpf_text_address+0x0/0x120 kernel/bpf/core.c:451 #3: ((&est->timer)){+.-.}, at: [<000000004cda2039>] lockdep_copy_map include/linux/lockdep.h:178 [inline] #3: ((&est->timer)){+.-.}, at: [<000000004cda2039>] call_timer_fn+0x1c6/0x820 kernel/time/timer.c:1308 stack backtrace: CPU: 1 PID: 3727 Comm: syz-executor2 Not tainted 4.15.0-rc9+ #283 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 print_usage_bug+0x377/0x38c kernel/locking/lockdep.c:2537 valid_state kernel/locking/lockdep.c:2550 [inline] mark_lock_irq kernel/locking/lockdep.c:2744 [inline] mark_lock+0xf61/0x1430 kernel/locking/lockdep.c:3142 mark_irqflags kernel/locking/lockdep.c:3020 [inline] __lock_acquire+0x173a/0x3e00 kernel/locking/lockdep.c:3383 lock_acquire+0x1d5/0x580 kernel/locking/lockdep.c:3914 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:144 spin_lock include/linux/spinlock.h:310 [inline] est_fetch_counters+0x4f/0x150 net/core/gen_estimator.c:70 est_timer+0x97/0x7c0 net/core/gen_estimator.c:85 call_timer_fn+0x228/0x820 kernel/time/timer.c:1318 expire_timers kernel/time/timer.c:1355 [inline] __run_timers+0x7ee/0xb70 kernel/time/timer.c:1658 run_timer_softirq+0x4c/0x70 kernel/time/timer.c:1684 __do_softirq+0x2d7/0xb85 kernel/softirq.c:285 invoke_softirq kernel/softirq.c:365 [inline] irq_exit+0x1cc/0x200 kernel/softirq.c:405 exiting_irq arch/x86/include/asm/apic.h:541 [inline] smp_apic_timer_interrupt+0x16b/0x700 arch/x86/kernel/apic/apic.c:1052 apic_timer_interrupt+0xa9/0xb0 arch/x86/entry/entry_64.S:937 RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:777 [inline] RIP: 0010:lock_acquire+0x256/0x580 kernel/locking/lockdep.c:3917 RSP: 0018:ffff8801a7097508 EFLAGS: 00000282 ORIG_RAX: ffffffffffffff11 RAX: dffffc0000000000 RBX: ffff8801c1df2380 RCX: 0000000000000000 RDX: 1ffffffff0d5918d RSI: 00000000d2a83500 RDI: 0000000000000282 RBP: ffff8801a7097600 R08: 1ffff10034e12e05 R09: 0000000000000002 R10: ffff8801a70974e8 R11: 0000000000000000 R12: 1ffff10034e12ea7 R13: 0000000000000000 R14: 0000000000000002 R15: 0000000000000000 rcu_lock_acquire include/linux/rcupdate.h:244 [inline] rcu_read_lock include/linux/rcupdate.h:631 [inline] is_bpf_text_address+0x39/0x120 kernel/bpf/core.c:464 kernel_text_address+0x102/0x140 kernel/extable.c:152 __kernel_text_address+0xd/0x40 kernel/extable.c:107 unwind_get_return_address+0x61/0xa0 arch/x86/kernel/unwind_frame.c:18 __save_stack_trace+0x7e/0xd0 arch/x86/kernel/stacktrace.c:45 save_stack_trace+0x1a/0x20 arch/x86/kernel/stacktrace.c:60 save_stack+0x43/0xd0 mm/kasan/kasan.c:447 set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:551 __do_kmalloc_node mm/slab.c:3672 [inline] __kmalloc_node+0x47/0x70 mm/slab.c:3679 kmalloc_node include/linux/slab.h:541 [inline] __vmalloc_area_node mm/vmalloc.c:1686 [inline] __vmalloc_node_range+0x1a1/0x650 mm/vmalloc.c:1759 __vmalloc_node mm/vmalloc.c:1804 [inline] __vmalloc_node_flags mm/vmalloc.c:1818 [inline] vzalloc+0x45/0x50 mm/vmalloc.c:1857 alloc_counters.isra.11+0x9a/0x7d0 net/ipv4/netfilter/ip_tables.c:813 copy_entries_to_user net/ipv4/netfilter/ip_tables.c:835 [inline] get_entries net/ipv4/netfilter/ip_tables.c:1036 [inline] do_ipt_get_ctl+0x5dc/0xac0 net/ipv4/netfilter/ip_tables.c:1710 nf_sockopt net/netfilter/nf_sockopt.c:104 [inline] nf_getsockopt+0x6a/0xc0 net/netfilter/nf_sockopt.c:122 ip_getsockopt+0x15c/0x220 net/ipv4/ip_sockglue.c:1573 tcp_getsockopt+0x82/0xd0 net/ipv4/tcp.c:3329 sock_common_getsockopt+0x95/0xd0 net/core/sock.c:2927 SYSC_getsockopt net/socket.c:1862 [inline] SyS_getsockopt+0x178/0x340 net/socket.c:1844 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x455d6a RSP: 002b:0000000000a2f598 EFLAGS: 00000212 ORIG_RAX: 0000000000000037 RAX: ffffffffffffffda RBX: 00000000006f9348 RCX: 0000000000455d6a RDX: 0000000000000041 RSI: 0000000000000000 RDI: 0000000000000013 RBP: 00000000006f9348 R08: 0000000000a2f5bc R09: 0000000000004000 R10: 0000000000a2f620 R11: 0000000000000212 R12: 0000000000000013 R13: 00000000006fb968 R14: 0000000000009cd3 R15: 0000000000000010 QAT: Invalid ioctl QAT: Invalid ioctl netlink: 260 bytes leftover after parsing attributes in process `syz-executor3'. QAT: Invalid ioctl netlink: 260 bytes leftover after parsing attributes in process `syz-executor3'. QAT: Invalid ioctl handle_userfault: 33 callbacks suppressed FAULT_FLAG_ALLOW_RETRY missing 30 CPU: 1 PID: 5767 Comm: syz-executor7 Not tainted 4.15.0-rc9+ #283 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 handle_userfault+0x12fa/0x24c0 fs/userfaultfd.c:427 do_anonymous_page mm/memory.c:3127 [inline] handle_pte_fault mm/memory.c:3941 [inline] __handle_mm_fault+0x32a3/0x3ce0 mm/memory.c:4067 handle_mm_fault+0x334/0x8d0 mm/memory.c:4104 __do_page_fault+0x5c9/0xc90 arch/x86/mm/fault.c:1430 do_page_fault+0xee/0x720 arch/x86/mm/fault.c:1505 page_fault+0x2c/0x60 arch/x86/entry/entry_64.S:1260 RIP: 0010:fault_in_pages_readable include/linux/pagemap.h:601 [inline] RIP: 0010:iov_iter_fault_in_readable+0x1a7/0x410 lib/iov_iter.c:421 RSP: 0018:ffff8801c381f928 EFLAGS: 00010246 RAX: 0000000000010000 RBX: 0000000020011fd2 RCX: ffffffff82587981 RDX: 00000000000000ff RSI: ffffc900018af000 RDI: ffff8801c381fd28 RBP: ffff8801c381fa08 R08: 0000000000000000 R09: 1ffff10038703ee7 R10: ffff8801c381f858 R11: ffff8801d50a21a0 R12: 1ffff10038703f28 R13: ffff8801c381f9e0 R14: 0000000000000000 R15: ffff8801c381fd20 generic_perform_write+0x200/0x600 mm/filemap.c:3129 __generic_file_write_iter+0x366/0x5b0 mm/filemap.c:3264 generic_file_write_iter+0x399/0x790 mm/filemap.c:3292 call_write_iter include/linux/fs.h:1772 [inline] new_sync_write fs/read_write.c:469 [inline] __vfs_write+0x684/0x970 fs/read_write.c:482 vfs_write+0x189/0x510 fs/read_write.c:544 SYSC_write fs/read_write.c:589 [inline] SyS_write+0xef/0x220 fs/read_write.c:581 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x453299 RSP: 002b:00007f2d46600c58 EFLAGS: 00000212 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000453299 RDX: 0000000000000030 RSI: 0000000020011fd2 RDI: 0000000000000015 RBP: 00000000000003d6 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006f4cb0 R13: 00000000ffffffff R14: 00007f2d466016d4 R15: 0000000000000000 binder: 5795:5800 transaction failed 29189/-22, size 0-0 line 2788 QAT: Invalid ioctl binder: 5795:5808 transaction failed 29189/-22, size 0-0 line 2788 QAT: Invalid ioctl binder: undelivered TRANSACTION_ERROR: 29189 binder: undelivered TRANSACTION_ERROR: 29189 mmap: syz-executor2 (5826) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.txt. QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl QAT: Invalid ioctl QAT: Invalid ioctl QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl FAULT_INJECTION: forcing a failure. name fail_page_alloc, interval 1, probability 0, space 0, times 1 FAULT_INJECTION: forcing a failure. name fail_page_alloc, interval 1, probability 0, space 0, times 1 CPU: 0 PID: 6277 Comm: syz-executor7 Not tainted 4.15.0-rc9+ #283 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_fail_alloc_page mm/page_alloc.c:2948 [inline] prepare_alloc_pages mm/page_alloc.c:4187 [inline] __alloc_pages_nodemask+0x338/0xd80 mm/page_alloc.c:4226 alloc_pages_current+0xb6/0x1e0 mm/mempolicy.c:2036 alloc_pages include/linux/gfp.h:492 [inline] skb_page_frag_refill+0x358/0x5f0 net/core/sock.c:2201 tun_build_skb.isra.49+0x2e1/0x17d0 drivers/net/tun.c:1459 tun_get_user+0x1693/0x3710 drivers/net/tun.c:1628 tun_chr_write_iter+0xb9/0x160 drivers/net/tun.c:1809 call_write_iter include/linux/fs.h:1772 [inline] do_iter_readv_writev+0x525/0x7f0 fs/read_write.c:653 do_iter_write+0x154/0x540 fs/read_write.c:932 vfs_writev+0x18a/0x340 fs/read_write.c:977 do_writev+0xfc/0x2a0 fs/read_write.c:1012 SYSC_writev fs/read_write.c:1085 [inline] SyS_writev+0x27/0x30 fs/read_write.c:1082 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x453171 RSP: 002b:00007f2d46600b80 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 00007f2d46600aa0 RCX: 0000000000453171 RDX: 0000000000000001 RSI: 00007f2d46600bd0 RDI: 0000000000000012 RBP: 00007f2d46600a90 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000072 R11: 0000000000000293 R12: 00000000004b8096 R13: 00007f2d46600bc8 R14: 00000000004b8096 R15: 0000000000000000 FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 1 CPU: 0 PID: 6281 Comm: syz-executor7 Not tainted 4.15.0-rc9+ #283 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_failslab+0xec/0x120 mm/failslab.c:32 slab_pre_alloc_hook mm/slab.h:421 [inline] slab_alloc mm/slab.c:3368 [inline] kmem_cache_alloc+0x47/0x760 mm/slab.c:3542 __build_skb+0x9d/0x450 net/core/skbuff.c:281 build_skb+0x6f/0x2a0 net/core/skbuff.c:312 tun_build_skb.isra.49+0x985/0x17d0 drivers/net/tun.c:1518 tun_get_user+0x1693/0x3710 drivers/net/tun.c:1628 tun_chr_write_iter+0xb9/0x160 drivers/net/tun.c:1809 call_write_iter include/linux/fs.h:1772 [inline] do_iter_readv_writev+0x525/0x7f0 fs/read_write.c:653 do_iter_write+0x154/0x540 fs/read_write.c:932 vfs_writev+0x18a/0x340 fs/read_write.c:977 do_writev+0xfc/0x2a0 fs/read_write.c:1012 SYSC_writev fs/read_write.c:1085 [inline] SyS_writev+0x27/0x30 fs/read_write.c:1082 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x453171 RSP: 002b:00007f2d46600b80 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 00007f2d46600aa0 RCX: 0000000000453171 RDX: 0000000000000001 RSI: 00007f2d46600bd0 RDI: 0000000000000012 RBP: 00007f2d46600a90 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000072 R11: 0000000000000293 R12: 00000000004b8096 R13: 00007f2d46600bc8 R14: 00000000004b8096 R15: 0000000000000000 CPU: 1 PID: 6276 Comm: syz-executor1 Not tainted 4.15.0-rc9+ #283 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_fail_alloc_page mm/page_alloc.c:2948 [inline] prepare_alloc_pages mm/page_alloc.c:4187 [inline] __alloc_pages_nodemask+0x338/0xd80 mm/page_alloc.c:4226 alloc_pages_current+0xb6/0x1e0 mm/mempolicy.c:2036 alloc_pages include/linux/gfp.h:492 [inline] skb_page_frag_refill+0x358/0x5f0 net/core/sock.c:2201 tun_build_skb.isra.49+0x2e1/0x17d0 drivers/net/tun.c:1459 tun_get_user+0x1693/0x3710 drivers/net/tun.c:1628 tun_chr_write_iter+0xb9/0x160 drivers/net/tun.c:1809 call_write_iter include/linux/fs.h:1772 [inline] do_iter_readv_writev+0x525/0x7f0 fs/read_write.c:653 do_iter_write+0x154/0x540 fs/read_write.c:932 vfs_writev+0x18a/0x340 fs/read_write.c:977 do_writev+0xfc/0x2a0 fs/read_write.c:1012 SYSC_writev fs/read_write.c:1085 [inline] SyS_writev+0x27/0x30 fs/read_write.c:1082 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x453171 RSP: 002b:00007f7e58885b80 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 00007f7e58885aa0 RCX: 0000000000453171 RDX: 0000000000000001 RSI: 00007f7e58885bd0 RDI: 0000000000000012 RBP: 00007f7e58885a90 R08: 0000000000000000 R09: 0000000000000000 R10: 000000000000006e R11: 0000000000000293 R12: 00000000004b8096 R13: 00007f7e58885bc8 R14: 00000000004b8096 R15: 0000000000000000 QAT: Invalid ioctl QAT: Invalid ioctl QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl audit: type=1400 audit(1517132491.929:58): avc: denied { map } for pid=6405 comm="syz-executor1" path="socket:[17156]" dev="sockfs" ino=17156 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=netlink_xfrm_socket permissive=1 PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl PPPIOCDETACH file->f_count=2 audit: type=1400 audit(1517132492.142:59): avc: denied { map } for pid=6460 comm="syz-executor7" path="/dev/dsp9" dev="devtmpfs" ino=16174 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:device_t:s0 tclass=file permissive=1 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 audit: type=1400 audit(1517132493.344:60): avc: denied { setopt } for pid=6860 comm="syz-executor7" scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=netlink_netfilter_socket permissive=1 PPPIOCDETACH file->f_count=2 QAT: Invalid ioctl QAT: Invalid ioctl TCP: request_sock_TCP: Possible SYN flooding on port 20009. Sending cookies. Check SNMP counters. syz-executor7 uses obsolete (PF_INET,SOCK_PACKET) PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 audit: type=1400 audit(1517132495.170:61): avc: denied { create } for pid=7415 comm="syz-executor7" scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=netlink_crypto_socket permissive=1 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2 PPPIOCDETACH file->f_count=2