Find the answer to your Linux question:
Results 1 to 2 of 2

Thread: Locking problem

Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    Locking problem


    I have a synchronization problem inside my module, called ipdriver, and i can't figure it out. While inserting, using and removing the module all works just fine(there's no deadlock), but i get the following message :

    inconsistent {softirq-on-W} -> {in-softirq-W} usage.
    swapper/0 [HC0[0]:SC1[1]:HE0:SE0] takes:
    (old_style_rw_init#2){-+--}, at: [<c8840039>] fin_timeout_handler+0x19/0x50 [ipdriver]
    {softirq-on-W} state was registered at:
    [<c0137bec>] __lock_acquire+0x69c/0x1080
    [<c0138642>] lock_acquire+0x72/0xa0
    [<c032aa66>] _write_lock+0x36/0x50
    [<c8840654>] nf_outhook_fn+0xc4/0x310 [ipdriver]
    [<c02da665>] nf_iterate+0x65/0x90
    [<c02da70e>] nf_hook_slow+0x7e/0x120
    [<c02e551e>] ip_queue_xmit+0x29e/0x3d0
    [<c02f550c>] tcp_transmit_skb+0x3bc/0x750
    [<c02f813a>] tcp_connect+0x2aa/0x330
    [<c02fb3e0>] tcp_v4_connect+0x370/0x6d0
    [<c0308b1f>] inet_stream_connect+0x1df/0x270
    [<c02ba87d>] sys_connect+0x5d/0x90
    [<c02bbfd4>] sys_socketcall+0x94/0x260
    [<c0102c82>] sysenter_past_esp+0x6b/0xc1
    [<ffffffff>] 0xffffffff
    irq event stamp: 892387
    hardirqs last enabled at (892386): [<c032b0e2>] _spin_unlock_irq+0x22/0x60
    hardirqs last disabled at (892387): [<c032ad99>] _write_lock_irqsave+0x29/0x70
    softirqs last enabled at (892372): [<c011c0e1>] __do_softirq+0xb1/0xd0
    softirqs last disabled at (892383): [<c0104cdf>] do_softirq+0xaf/0x110

    other info that might help us debug this:
    no locks held by swapper/0.

    stack backtrace:
    Pid: 0, comm: swapper Not tainted #14
    [<c0103d3a>] show_trace_log_lvl+0x1a/0x30
    [<c01046e2>] show_trace+0x12/0x20
    [<c0104a4c>] dump_stack+0x6c/0x80
    [<c0135e63>] print_usage_bug+0x153/0x160
    [<c0136c39>] mark_lock+0x449/0x620
    [<c0137b94>] __lock_acquire+0x644/0x1080
    [<c0138642>] lock_acquire+0x72/0xa0
    [<c032adc6>] _write_lock_irqsave+0x56/0x70
    [<c8840039>] fin_timeout_handler+0x19/0x50 [ipdriver]
    [<c011f8d9>] run_timer_softirq+0x119/0x180
    [<c011c092>] __do_softirq+0x62/0xd0
    [<c0104cdf>] do_softirq+0xaf/0x110

    How could i interpret it?

    Thank you in advance

  2. #2
    What kernel are you running, "uname -r"? The module "ipdriver" loads, runs, and unloads without crashing? What does it do?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts