Actions
Bug #45090
closedmds: inode's xattr_map may reference a large memory.
% Done:
0%
Source:
Development
Tags:
Backport:
octopus,nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
MDS
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
Thread 9 "ms_dispatch" hit Breakpoint 1, CInode::encode_inodestat (this=0x555558056b00, bl=..., session=0x555557136480, dir_realm=0x555557116a00, snapid=..., max_bytes=523476, getattr_caps=0) at /home/zhyan/Ceph/ceph/src/mds/CInode.cc:3831 3831 if (pxattrs) { (gdb) n 3832 for (const auto &p : *pxattrs) (gdb) p The history is empty. (gdb) n 314 unsigned length() const { return _len; } (gdb) p p $1 = {first = "user.test", second = {_raw = 0x55555750fb60, _off = 369399, _len = 4}}
The large memory is likely from buffer of dirfrag fetch (omap fetch)
mds may trim some inodes, reload them later. In the worst case. each inode's xattr_map may reference different memory.
Actions