From 74c2501ab035c1396d86b490f6c73530b0dc8e2f Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Wed, 23 Oct 2024 14:01:41 -0400 Subject: [PATCH] mds: inherit charmap on mkdir Signed-off-by: Patrick Donnelly Fixes: https://tracker.ceph.com/issues/66373 (cherry picked from commit 033d8666373f239b18d52f3fd8c350148ba4f4a1) --- src/mds/Server.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mds/Server.cc b/src/mds/Server.cc index e9f73c56a5b..225a6419f7b 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -7184,11 +7184,16 @@ void Server::handle_client_mkdir(const MDRequestRef& mdr) // it's a directory. dn->push_projected_linkage(newi); - auto _inode = newi->_get_inode(); + auto* _inode = newi->_get_inode(); _inode->version = dn->pre_dirty(); _inode->rstat.rsubdirs = 1; _inode->accounted_rstat = _inode->rstat; _inode->update_backtrace(); + if (auto* csp = diri->get_charmap()) { + dout(20) << " with " << *csp << dendl; + auto& c = _inode->set_charmap(); + c = *csp; + } snapid_t follows = mdcache->get_global_snaprealm()->get_newest_seq(); SnapRealm *realm = dn->get_dir()->inode->find_snaprealm(); -- 2.39.5