Bug #45090
mds: inode's xattr_map may reference a large memory.
% Done:
0%
Source:
Development
Tags:
Backport:
octopus,nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
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.
Related issues
History
#1 Updated by Zheng Yan 11 months ago
- Related to Bug #37399: mds: severe internal fragment when decoding xattr_map from log event added
#4 Updated by Patrick Donnelly 10 months ago
- Assignee set to Zheng Yan
- Target version set to v16.0.0
- Source set to Development
- Backport set to octopus,nautilus
- Component(FS) MDS added
#5 Updated by Patrick Donnelly 10 months ago
- Status changed from Fix Under Review to Resolved
#6 Updated by Patrick Donnelly 10 months ago
- Status changed from Resolved to Pending Backport
#7 Updated by Nathan Cutler 10 months ago
- Copied to Backport #45600: nautilus: mds: inode's xattr_map may reference a large memory. added
#8 Updated by Nathan Cutler 10 months ago
- Copied to Backport #45601: octopus: mds: inode's xattr_map may reference a large memory. added
#9 Updated by Nathan Cutler 9 months ago
- Status changed from Pending Backport to Resolved
While running with --resolve-parent, the script "backport-create-issue" noticed that all backports of this issue are in status "Resolved" or "Rejected".