summaryrefslogtreecommitdiffstats
path: root/doc/dev/kernel-client-troubleshooting.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/dev/kernel-client-troubleshooting.rst')
-rw-r--r--doc/dev/kernel-client-troubleshooting.rst21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/dev/kernel-client-troubleshooting.rst b/doc/dev/kernel-client-troubleshooting.rst
new file mode 100644
index 00000000..b6f7eff7
--- /dev/null
+++ b/doc/dev/kernel-client-troubleshooting.rst
@@ -0,0 +1,21 @@
+====================================
+ Kernel client troubleshooting (FS)
+====================================
+
+If there is an issue with the cephfs kernel client, the most important thing is
+figuring out whether the problem is with the client or the MDS. Generally,
+this is easy to work out. If the kernel client broke directly, there
+will be output in dmesg. Collect it and any appropriate kernel state. If
+the problem is with the MDS, there will be hung requests that the client
+is waiting on. Look in ``/sys/kernel/debug/ceph/*/`` and cat the ``mdsc`` file to get a listing of requests in progress. If one of them remains there, the
+MDS has probably "forgotten" it.
+We can get hints about what's going on by dumping the MDS cache:
+ceph mds tell 0 dumpcache /tmp/dump.txt
+
+And if high logging levels are set on the MDS, that will almost certainly
+hold the information we need to diagnose and solve the issue.
+
+You can also enable dynamic debug against the cephfs module.
+
+See:
+https://github.com/ceph/ceph/blob/master/src/script/kcon_all.sh