[LU-1727] lprocfs_counter_add() could be called in interrupt context Created: 08/Aug/12  Updated: 25/Feb/13  Resolved: 25/Feb/13

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.3.0, Lustre 2.1.5
Fix Version/s: Lustre 2.3.0, Lustre 2.1.5

Type: Bug Priority: Blocker
Reporter: Maloo Assignee: Zhenyu Xu
Resolution: Fixed Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 4491

 Description   

This issue was created by maloo for bobijam <bobijam@whamcloud.com>

This issue relates to the following test suite run: https://maloo.whamcloud.com/test_sets/c2763a2e-de5b-11e1-b7ed-52540035b04c.

The sub-test test_compilebench failed with the following error:

test failed to respond and timed out

Info required for matching: parallel-scale-nfsv4 compilebench

the MDT test_log shows

08:12:04:LustreError: 30719:0:(lvfs_lib.c:94:lprocfs_counter_add()) ASSERTION(!cfs_in_interrupt()) failed

essential call trace

08:12:09: [<ffffffffa0440d79>] libcfs_assertion_failed+0x59/0x70 [libcfs]
08:12:09: [<ffffffffa04a36b5>] lprocfs_counter_add+0x165/0x170 [lvfs]
08:12:09: [<ffffffffa0623367>] ldlm_pool_shrink+0x57/0xf0 [ptlrpc]
08:12:09: [<ffffffff81096a8f>] ? up+0x2f/0x50
08:12:09: [<ffffffffa062414b>] ldlm_pools_shrink+0x27b/0x330 [ptlrpc]
08:12:09: [<ffffffffa0624233>] ldlm_pools_srv_shrink+0x13/0x20 [ptlrpc]
08:12:09: [<ffffffff81129bfa>] shrink_slab+0x12a/0x1a0
08:12:09: [<ffffffff8112ba5f>] do_try_to_free_pages+0x2ff/0x520
08:12:09: [<ffffffff81114def>] ? zone_watermark_ok+0x1f/0x30
08:12:09: [<ffffffff8112be6d>] try_to_free_pages+0x9d/0x130
08:12:09: [<ffffffff81132746>] ? next_online_pgdat+0x26/0x50
08:12:09: [<ffffffff8112cfc0>] ? isolate_pages_global+0x0/0x350
08:12:09: [<ffffffff81123ded>] __alloc_pages_nodemask+0x40d/0x940
08:12:09: [<ffffffff8115e102>] kmem_getpages+0x62/0x170
08:12:10: [<ffffffff8115ed1a>] fallback_alloc+0x1ba/0x270
08:12:10: [<ffffffff8115e76f>] ? cache_grow+0x2cf/0x320
08:12:10: [<ffffffff8115ea99>] ____cache_alloc_node+0x99/0x160
08:12:10: [<ffffffffa0436a13>] ? cfs_alloc+0x63/0x90 [libcfs]
08:12:10: [<ffffffff8115f6c9>] __kmalloc+0x189/0x220
08:12:10: [<ffffffffa0436a13>] cfs_alloc+0x63/0x90 [libcfs]
08:12:10: [<ffffffffa062fc9a>] ptlrpc_prep_bulk_imp+0x7a/0x350 [ptlrpc]



 Comments   
Comment by Jodi Levi (Inactive) [ 09/Aug/12 ]

We think this should be assigned to BobiJam.

Comment by Peter Jones [ 10/Aug/12 ]

Bobijam

Could you please look into this one?

Thanks

Peter

Comment by Zhenyu Xu [ 10/Aug/12 ]

patch tracking at http://review.whamcloud.com/3597

patch description
lprocfs: fix an old assertion

lprocfs_counter_add() can be called in interrupt context, as a memory
allocation can trigger memory shrinker call ldlm_pool_shrink(), which
calls lprocfs_counter_add().
Comment by Peter Jones [ 16/Aug/12 ]

Landed for 2.3

Comment by Wojciech Turek (Inactive) [ 20/Aug/12 ]

I have seen this on Lustre-2.1.2, has the patch landed for it as well?

Comment by Zhenyu Xu [ 20/Aug/12 ]

patch port for b2_1 is tracking at http://review.whamcloud.com/3729

Comment by Andreas Dilger [ 25/Feb/13 ]

Patch still needs to land for b2_1.

Comment by Peter Jones [ 25/Feb/13 ]

Landed for 2.1.5

Generated at Sat Feb 10 01:19:10 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.