Project

General

Profile

Actions

Bug #58395

open

mds:in openc, if unlink is not finished we should reintegrate the dentry before continuing further.

Added by zhikuo du over 1 year ago. Updated 7 months ago.

Status:
Triaged
Priority:
Normal
Assignee:
-
Category:
Correctness/Safety
Target version:
-
% Done:

0%

Source:
Community (user)
Tags:
mds
Backport:
pacific,quincy
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
MDS
Labels (FS):
crash
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

In openc, if unlink is not finished we should reintegrate the dentry before continuing further.
If not, cooperate with the problem:https://tracker.ceph.com/issues/58392,it may crash:

ceph version 15.2.16 (d46a73d) octopus (stable)
1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x14c) [0x7f2d81fd9bc9]
2: (()+0x269d91) [0x7f2d81fd9d91]
3: (Server::handle_client_open(boost::intrusive_ptr&)+0x1768) [0x55eb0ab92978]
4: (Server::handle_client_openc(boost::intrusive_ptr&)+0x61b) [0x55eb0ab9302b]
5: (Server::dispatch_client_request(boost::intrusive_ptr&)+0xd24) [0x55eb0abbaaa4]
6: (MDCache::dispatch_request(boost::intrusive_ptr&)+0x2e) [0x55eb0ac4af1e]
7: (MDSContext::complete(int)+0x4f) [0x55eb0addb01f]
8: (MDSCacheObject::finish_waiting(unsigned long, int)+0xbe) [0x55eb0adf618e]
9: (Locker::eval_gather(SimpleLock*, bool, bool*, std::vector<MDSContext*, std::allocator<MDSContext*> >)+0x1259) [0x55eb0acce9d9]
10: (Locker::handle_file_lock(ScatterLock, boost::intrusive_ptr const&)+0xe85) [0x55eb0ace01f5]
11: (Locker::handle_lock(boost::intrusive_ptr const&)+0x1a3) [0x55eb0ace0b23]
12: (Locker::dispatch(boost::intrusive_ptr const&)+0xbf) [0x55eb0ace0d4f]
13: (MDSRank::handle_message(boost::intrusive_ptr const&)+0x6e4) [0x55eb0ab3cf54]
14: (MDSRank::_dispatch(boost::intrusive_ptr const&, bool)+0x7a3) [0x55eb0ab3f503]
15: (MDSRankDispatcher::ms_dispatch(boost::intrusive_ptr const&)+0x43) [0x55eb0ab3fa23]
16: (MDSDaemon::ms_dispatch2(boost::intrusive_ptr const&)+0x118) [0x55eb0ab2dc28]
17: (DispatchQueue::entry()+0x11ba) [0x7f2d821e9f0a]
18: (DispatchQueue::DispatchThread::entry()+0xd) [0x7f2d8228786d]
19: (()+0x7ea5) [0x7f2d80ea9ea5]
20: (clone()+0x6d) [0x7f2d7fb569fd]


Files

crash log.txt (25.3 KB) crash log.txt zhikuo du, 01/09/2023 08:58 AM

Related issues 1 (0 open1 closed)

Related to CephFS - Bug #58392: mds:when want_auth is true, path_traverse should ensure the return Inode is auth. Rejected

Actions
Actions #1

Updated by zhikuo du over 1 year ago

the crash log

Actions #2

Updated by Venky Shankar over 1 year ago

  • Status changed from New to Triaged
  • Target version set to v18.0.0
  • Source set to Community (user)
  • Backport set to pacific,quincy
  • Pull request ID set to 49652
Actions #3

Updated by Venky Shankar over 1 year ago

  • Related to Bug #58392: mds:when want_auth is true, path_traverse should ensure the return Inode is auth. added
Actions #4

Updated by Patrick Donnelly 7 months ago

  • Target version deleted (v18.0.0)
Actions

Also available in: Atom PDF