Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Large kmem allocs during mzap_upgrade() #48

Closed
wizeman opened this issue Aug 11, 2010 · 1 comment
Closed

Large kmem allocs during mzap_upgrade() #48

wizeman opened this issue Aug 11, 2010 · 1 comment

Comments

@wizeman
Copy link

wizeman commented Aug 11, 2010

It looks like some large kmem allocs are being done during mzap_upgrade():

SPL: large kmem_alloc(131072, 0x50) at mzap_upgrade:535 (4854076/5012299)
SPL: Showing stack for process 14903

Call Trace:
 [<ffffffff883b6b22>] :spl:spl_debug_dumpstack+0x2b/0x2d
 [<ffffffff883bb46a>] :spl:kmem_alloc_debug+0xc8/0x29c
 [<ffffffff885395a1>] :zfs:mzap_upgrade+0xcf/0x288
 [<ffffffff8853a0dd>] :zfs:zap_lockdir+0x983/0xa7e
 [<ffffffff88000001>] :ehci_hcd:periodic_usecs+0x1/0xf5
 [<ffffffff8853b18f>] :zfs:zap_add+0x3d/0x170
 [<ffffffff88a51c6b>] :osd_zfs:udmu_zap_insert+0xcb/0xf0
 [<ffffffff88a46271>] :osd_zfs:osd_dt_dev+0x11/0x40
 [<ffffffff88a4f371>] :osd_zfs:osd_object_create+0x311/0x540
 [<ffffffff885eb969>] :libcfs:libcfs_debug_vmsg2+0x809/0xaf0
 [<ffffffff88a24bd7>] :ldiskfs:dynlock_lock+0x137/0x300
 [<ffffffff80013b06>] poison_obj+0x27/0x32
 [<ffffffff88a24bd7>] :ldiskfs:dynlock_lock+0x137/0x300
 [<ffffffff80174ddd>] __spin_lock_init+0x31/0x52
 [<ffffffff88acbfd9>] :mdd:mdd_object_create_internal+0x1c9/0x2a0
 [<ffffffff8006ae11>] __down_write+0xb/0xd
 [<ffffffff88aec534>] :mdd:mdd_create+0x1334/0x1eb0
 [<ffffffff88acebfc>] :mdd:mdd_version_get+0x9c/0xb0
 [<ffffffff88b8f7b7>] :cmm:cml_create+0x197/0x210
 [<ffffffff88b45eb9>] :mdt:mdt_reint_open+0x22d9/0x2ee0
 [<ffffffff88aef892>] :mdd:md_ucred+0x42/0x50
 [<ffffffff88aef892>] :mdd:md_ucred+0x42/0x50
 [<ffffffff88b312a3>] :mdt:mdt_reint_rec+0x83/0x100
 [<ffffffff88b15f65>] :mdt:mdt_reint_internal+0x8e5/0x990
 [<ffffffff88b23be5>] :mdt:mdt_intent_reint+0x1f5/0x5a0
 [<ffffffff88b243f7>] :mdt:mdt_intent_policy+0x467/0x650
 [<ffffffff8879000d>] :ptlrpc:ldlm_resource_putref+0x38d/0x3a0
 [<ffffffff8878b45c>] :ptlrpc:ldlm_lock_enqueue+0x17c/0x980
 [<ffffffff885f1399>] :libcfs:cfs_hash_add+0x219/0x250
 [<ffffffff887a8ff5>] :ptlrpc:ldlm_handle_enqueue0+0xa55/0x1050
 [<ffffffff88b1802d>] :mdt:mdt_unpack_req_pack_rep+0x5ed/0x6b0
 [<ffffffff88b23892>] :mdt:mdt_enqueue+0x72/0x100
 [<ffffffff88b192d6>] :mdt:mdt_handle_common+0x11e6/0x1750
 [<ffffffff88b19910>] :mdt:mdt_regular_handle+0x10/0x20
 [<ffffffff887d6b6a>] :ptlrpc:ptlrpc_server_handle_request+0x8da/0xec0
 [<ffffffff8009477d>] default_wake_function+0xd/0xf
 [<ffffffff8006b411>] _spin_unlock_bh+0x2f/0x34
 [<ffffffff885e1019>] :libcfs:cfs_timer_arm+0x9/0x10
 [<ffffffff887dbd83>] :ptlrpc:ptlrpc_main+0x1333/0x14d0
 [<ffffffff80094770>] default_wake_function+0x0/0xf
 [<ffffffff80063fb1>] child_rip+0xa/0x11


SPL: large kmem_alloc(131072, 0x50) at mzap_upgrade:535 (4893853/5012299)
SPL: Showing stack for process 15315

Call Trace:
 [<ffffffff883b6b22>] :spl:spl_debug_dumpstack+0x2b/0x2d
 [<ffffffff883bb46a>] :spl:kmem_alloc_debug+0xc8/0x29c
 [<ffffffff885395a1>] :zfs:mzap_upgrade+0xcf/0x288
 [<ffffffff8853a0dd>] :zfs:zap_lockdir+0x983/0xa7e
 [<ffffffff88000001>] :ehci_hcd:periodic_usecs+0x1/0xf5
 [<ffffffff8853b18f>] :zfs:zap_add+0x3d/0x170
 [<ffffffff88a51c6b>] :osd_zfs:udmu_zap_insert+0xcb/0xf0
 [<ffffffff88a46271>] :osd_zfs:osd_dt_dev+0x11/0x40
 [<ffffffff88a4f371>] :osd_zfs:osd_object_create+0x311/0x540
 [<ffffffff883bb50f>] :spl:kmem_alloc_debug+0x16d/0x29c
 [<ffffffff800e9a41>] __kmalloc+0xfc/0x108
 [<ffffffff88a487c0>] :osd_zfs:osd_trans_commit_cb+0x0/0x2b0
 [<ffffffff884d9a4b>] :zfs:dmu_tx_callback_register+0x56/0x5e
 [<ffffffff8006b74a>] _spin_unlock_irq+0x26/0x2c
 [<ffffffff8006ada2>] __down_write_nested+0x3d/0xa1
 [<ffffffff8006ae11>] __down_write+0xb/0xd
 [<ffffffff88c13a1f>] :obdfilter:filter_precreate_object+0x98f/0xca0
 [<ffffffff88c11a07>] :obdfilter:filter_create+0xe37/0xf30
 [<ffffffff88bec1e1>] :ost:ost_handle+0x1ee1/0x52e6
 [<ffffffff8006b43c>] _spin_unlock+0x26/0x2a
 [<ffffffff885e027f>] :libcfs:cfs_trace_unlock_tcd+0x6f/0x80
 [<ffffffff885eb969>] :libcfs:libcfs_debug_vmsg2+0x809/0xaf0
 [<ffffffff8001bae6>] vsnprintf+0x340/0x5b0
 [<ffffffff885e6cbf>] :libcfs:libcfs_next_nidstring+0x3f/0x60
 [<ffffffff885e6c2f>] :libcfs:libcfs_decnum_addr2str+0x1f/0x30
 [<ffffffff885e6d9e>] :libcfs:libcfs_nid2str+0xbe/0x100
 [<ffffffff887cb662>] :ptlrpc:lustre_msg_get_opc+0x22/0xf0
 [<ffffffff887d6b6a>] :ptlrpc:ptlrpc_server_handle_request+0x8da/0xec0
 [<ffffffff8009477d>] default_wake_function+0xd/0xf
 [<ffffffff8006b411>] _spin_unlock_bh+0x2f/0x34
 [<ffffffff885e1019>] :libcfs:cfs_timer_arm+0x9/0x10
 [<ffffffff887dbd83>] :ptlrpc:ptlrpc_main+0x1333/0x14d0
 [<ffffffff80094770>] default_wake_function+0x0/0xf
 [<ffffffff80063fb1>] child_rip+0xa/0x11
 [<ffffffff885e02fa>] :libcfs:cfs_trace_lock_tcd+0x6a/0x80
 [<ffffffff887daa50>] :ptlrpc:ptlrpc_main+0x0/0x14d0
 [<ffffffff80063fa7>] child_rip+0x0/0x11
@behlendorf
Copy link
Contributor

Use vmem_alloc() for 128K allocation

The mzap_update() function allocates enough memory for a full
dbuf which can be 128K in size. Ideally, this memory should
be allocated from our slab but in the short term it's simplest
just to vmem_alloc() the memory instead.

Closed by 0d95a03

akatrevorjay added a commit to akatrevorjay/zfs that referenced this issue Dec 16, 2017
# This is the 1st commit message:
Merge branch 'master' of https://github.com/zfsonlinux/zfs

* 'master' of https://github.com/zfsonlinux/zfs:
  Enable QAT support in zfs-dkms RPM

# This is the commit message openzfs#2:

Import 0.6.5.7-0ubuntu3

# This is the commit message openzfs#3:

gbp changes

# This is the commit message openzfs#4:

Bump ver

# This is the commit message openzfs#5:

-j9 baby

# This is the commit message openzfs#6:

Up

# This is the commit message openzfs#7:

Yup

# This is the commit message openzfs#8:

Add new module

# This is the commit message openzfs#9:

Up

# This is the commit message openzfs#10:

Up

# This is the commit message openzfs#11:

Bump

# This is the commit message openzfs#12:

Grr

# This is the commit message openzfs#13:

Yay

# This is the commit message openzfs#14:

Yay

# This is the commit message openzfs#15:

Yay

# This is the commit message openzfs#16:

Yay

# This is the commit message openzfs#17:

Yay

# This is the commit message openzfs#18:

Yay

# This is the commit message openzfs#19:

yay

# This is the commit message openzfs#20:

yay

# This is the commit message openzfs#21:

yay

# This is the commit message openzfs#22:

Update ppa script

# This is the commit message openzfs#23:

Update gbp conf with br changes

# This is the commit message openzfs#24:

Update gbp conf with br changes

# This is the commit message openzfs#25:

Bump

# This is the commit message openzfs#26:

No pristine

# This is the commit message openzfs#27:

Bump

# This is the commit message openzfs#28:

Lol whoops

# This is the commit message openzfs#29:

Fix name

# This is the commit message openzfs#30:

Fix name

# This is the commit message openzfs#31:

rebase

# This is the commit message openzfs#32:

Bump

# This is the commit message openzfs#33:

Bump

# This is the commit message openzfs#34:

Bump

# This is the commit message openzfs#35:

Bump

# This is the commit message openzfs#36:

ntrim

# This is the commit message openzfs#37:

Bump

# This is the commit message openzfs#38:

9

# This is the commit message openzfs#39:

Bump

# This is the commit message openzfs#40:

Bump

# This is the commit message openzfs#41:

Bump

# This is the commit message openzfs#42:

Revert "9"

This reverts commit de488f1.

# This is the commit message openzfs#43:

Bump

# This is the commit message openzfs#44:

Account for zconfig.sh being removed

# This is the commit message openzfs#45:

Bump

# This is the commit message openzfs#46:

Add artful

# This is the commit message openzfs#47:

Add in zed.d and zpool.d scripts

# This is the commit message openzfs#48:

Bump

# This is the commit message openzfs#49:

Bump

# This is the commit message openzfs#50:

Bump

# This is the commit message openzfs#51:

Bump

# This is the commit message openzfs#52:

ugh

# This is the commit message openzfs#53:

fix zed upgrade

# This is the commit message openzfs#54:

Bump

# This is the commit message openzfs#55:

conf file zed.d

# This is the commit message #56:

Bump
sdimitro pushed a commit to sdimitro/zfs that referenced this issue Dec 7, 2021
Signed-off-by: Paul Dagnelie <pcd@delphix.com>
anodos325 pushed a commit to anodos325/zfs that referenced this issue Mar 18, 2022
Expose additional file level attributes
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants