Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-17705

replace synchronize_rcu() with rcu_barrier()

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.16.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      synchronize_rcu() doesn't wait for all in-flight callback completion:

      [   30.290958] ------------[ cut here ]------------
      [   30.291101] kernel BUG at mm/slab.c:3715!
      [   30.291226] invalid opcode: 0000 [#1] PREEMPT SMP
      [   30.291386] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G        W  O     --------- -  - 4.18.0 #38
      [   30.291653] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-1.fc38 04/01/2014
      [   30.291911] RIP: 0010:kmem_cache_free.cold.23+0x19/0x1b
      [   30.292051] Code: 48 c7 c0 f2 ff ff ff eb c8 48 c7 c0 ea ff ff ff c3 49 89 f9 49 89 f8 48 89 f9 57 48 89 f2 48 c7 c7 50 f9 e4 b8 e8 d0 d2 eb ff <0f> 0b 48 8b 73 58 89 c2 48 c7 c7 80 f9 e4 b8 f7 da e8 ba d2 eb ff
      [   30.292546] RSP: 0018:ffff9ebd77d05ec8 EFLAGS: 00010282
      [   30.292684] RAX: 000000000000007a RBX: 5a5a5a5a5a5a5a5a RCX: 0000000000000102
      [   30.292888] RDX: 0000000080000102 RSI: ffffffffb8e45e66 RDI: 00000000ffffffff
      [   30.293098] RBP: ffff9ebc41b310a0 R08: 0000000000000000 R09: 0000000000000000
      [   30.293313] R10: ffff9ebd77d05d18 R11: ffff9ebd77d05d10 R12: 0000000000000158
      [   30.293521] R13: ffffffffb93f55a0 R14: 0000000000000000 R15: 0000000000000001
      [   30.293777] FS:  0000000000000000(0000) GS:ffff9ebd77d00000(0000) knlGS:0000000000000000
      [   30.294024] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [   30.294222] CR2: 00007ffc21669f60 CR3: 000000014dab3000 CR4: 0000000000350ea0
      [   30.294459] Call Trace:
      [   30.294539]  <IRQ>
      [   30.294617]  rcu_core+0x315/0x970
      [   30.294732]  ? rcu_core+0x2e8/0x970
      [   30.294849]  __do_softirq+0xd2/0x4cd
      [   30.294964]  irq_exit_rcu+0xda/0xe0
      [   30.295079]  irq_exit+0x5/0x20
      [   30.295191]  smp_apic_timer_interrupt+0xbf/0x290
      [   30.295358]  apic_timer_interrupt+0xf/0x20
      [   30.295471]  </IRQ>
      

      Attachments

        Issue Links

          Activity

            [LU-17705] replace synchronize_rcu() with rcu_barrier()
            pjones Peter Jones made changes -
            Fix Version/s New: Lustre 2.16.0 [ 15190 ]
            Resolution New: Fixed [ 1 ]
            Status Original: Open [ 1 ] New: Resolved [ 5 ]
            bzzz Alex Zhuravlev made changes -
            Description Original: synchronize_rcu() doesn't wait for all in-flight callback completion.
            New: synchronize_rcu() doesn't wait for all in-flight callback completion:

            {code}
            [ 30.290958] ------------[ cut here ]------------
            [ 30.291101] kernel BUG at mm/slab.c:3715!
            [ 30.291226] invalid opcode: 0000 [#1] PREEMPT SMP
            [ 30.291386] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G W O --------- - - 4.18.0 #38
            [ 30.291653] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-1.fc38 04/01/2014
            [ 30.291911] RIP: 0010:kmem_cache_free.cold.23+0x19/0x1b
            [ 30.292051] Code: 48 c7 c0 f2 ff ff ff eb c8 48 c7 c0 ea ff ff ff c3 49 89 f9 49 89 f8 48 89 f9 57 48 89 f2 48 c7 c7 50 f9 e4 b8 e8 d0 d2 eb ff <0f> 0b 48 8b 73 58 89 c2 48 c7 c7 80 f9 e4 b8 f7 da e8 ba d2 eb ff
            [ 30.292546] RSP: 0018:ffff9ebd77d05ec8 EFLAGS: 00010282
            [ 30.292684] RAX: 000000000000007a RBX: 5a5a5a5a5a5a5a5a RCX: 0000000000000102
            [ 30.292888] RDX: 0000000080000102 RSI: ffffffffb8e45e66 RDI: 00000000ffffffff
            [ 30.293098] RBP: ffff9ebc41b310a0 R08: 0000000000000000 R09: 0000000000000000
            [ 30.293313] R10: ffff9ebd77d05d18 R11: ffff9ebd77d05d10 R12: 0000000000000158
            [ 30.293521] R13: ffffffffb93f55a0 R14: 0000000000000000 R15: 0000000000000001
            [ 30.293777] FS: 0000000000000000(0000) GS:ffff9ebd77d00000(0000) knlGS:0000000000000000
            [ 30.294024] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
            [ 30.294222] CR2: 00007ffc21669f60 CR3: 000000014dab3000 CR4: 0000000000350ea0
            [ 30.294459] Call Trace:
            [ 30.294539] <IRQ>
            [ 30.294617] rcu_core+0x315/0x970
            [ 30.294732] ? rcu_core+0x2e8/0x970
            [ 30.294849] __do_softirq+0xd2/0x4cd
            [ 30.294964] irq_exit_rcu+0xda/0xe0
            [ 30.295079] irq_exit+0x5/0x20
            [ 30.295191] smp_apic_timer_interrupt+0xbf/0x290
            [ 30.295358] apic_timer_interrupt+0xf/0x20
            [ 30.295471] </IRQ>
            {code}
            adilger Andreas Dilger made changes -
            Link New: This issue is related to LU-17076 [ LU-17076 ]
            pjones Peter Jones made changes -
            Assignee Original: WC Triage [ wc-triage ] New: Alex Zhuravlev [ bzzz ]
            bzzz Alex Zhuravlev created issue -

            People

              bzzz Alex Zhuravlev
              bzzz Alex Zhuravlev
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: