162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Ceph string constants
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci#include <linux/module.h>
662306a36Sopenharmony_ci#include <linux/ceph/types.h>
762306a36Sopenharmony_ci
862306a36Sopenharmony_ciconst char *ceph_entity_type_name(int type)
962306a36Sopenharmony_ci{
1062306a36Sopenharmony_ci	switch (type) {
1162306a36Sopenharmony_ci	case CEPH_ENTITY_TYPE_MDS: return "mds";
1262306a36Sopenharmony_ci	case CEPH_ENTITY_TYPE_OSD: return "osd";
1362306a36Sopenharmony_ci	case CEPH_ENTITY_TYPE_MON: return "mon";
1462306a36Sopenharmony_ci	case CEPH_ENTITY_TYPE_CLIENT: return "client";
1562306a36Sopenharmony_ci	case CEPH_ENTITY_TYPE_AUTH: return "auth";
1662306a36Sopenharmony_ci	default: return "unknown";
1762306a36Sopenharmony_ci	}
1862306a36Sopenharmony_ci}
1962306a36Sopenharmony_ciEXPORT_SYMBOL(ceph_entity_type_name);
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciconst char *ceph_auth_proto_name(int proto)
2262306a36Sopenharmony_ci{
2362306a36Sopenharmony_ci	switch (proto) {
2462306a36Sopenharmony_ci	case CEPH_AUTH_UNKNOWN:
2562306a36Sopenharmony_ci		return "unknown";
2662306a36Sopenharmony_ci	case CEPH_AUTH_NONE:
2762306a36Sopenharmony_ci		return "none";
2862306a36Sopenharmony_ci	case CEPH_AUTH_CEPHX:
2962306a36Sopenharmony_ci		return "cephx";
3062306a36Sopenharmony_ci	default:
3162306a36Sopenharmony_ci		return "???";
3262306a36Sopenharmony_ci	}
3362306a36Sopenharmony_ci}
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ciconst char *ceph_con_mode_name(int mode)
3662306a36Sopenharmony_ci{
3762306a36Sopenharmony_ci	switch (mode) {
3862306a36Sopenharmony_ci	case CEPH_CON_MODE_UNKNOWN:
3962306a36Sopenharmony_ci		return "unknown";
4062306a36Sopenharmony_ci	case CEPH_CON_MODE_CRC:
4162306a36Sopenharmony_ci		return "crc";
4262306a36Sopenharmony_ci	case CEPH_CON_MODE_SECURE:
4362306a36Sopenharmony_ci		return "secure";
4462306a36Sopenharmony_ci	default:
4562306a36Sopenharmony_ci		return "???";
4662306a36Sopenharmony_ci	}
4762306a36Sopenharmony_ci}
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ciconst char *ceph_osd_op_name(int op)
5062306a36Sopenharmony_ci{
5162306a36Sopenharmony_ci	switch (op) {
5262306a36Sopenharmony_ci#define GENERATE_CASE(op, opcode, str)	case CEPH_OSD_OP_##op: return (str);
5362306a36Sopenharmony_ci__CEPH_FORALL_OSD_OPS(GENERATE_CASE)
5462306a36Sopenharmony_ci#undef GENERATE_CASE
5562306a36Sopenharmony_ci	default:
5662306a36Sopenharmony_ci		return "???";
5762306a36Sopenharmony_ci	}
5862306a36Sopenharmony_ci}
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ciconst char *ceph_osd_watch_op_name(int o)
6162306a36Sopenharmony_ci{
6262306a36Sopenharmony_ci	switch (o) {
6362306a36Sopenharmony_ci	case CEPH_OSD_WATCH_OP_UNWATCH:
6462306a36Sopenharmony_ci		return "unwatch";
6562306a36Sopenharmony_ci	case CEPH_OSD_WATCH_OP_WATCH:
6662306a36Sopenharmony_ci		return "watch";
6762306a36Sopenharmony_ci	case CEPH_OSD_WATCH_OP_RECONNECT:
6862306a36Sopenharmony_ci		return "reconnect";
6962306a36Sopenharmony_ci	case CEPH_OSD_WATCH_OP_PING:
7062306a36Sopenharmony_ci		return "ping";
7162306a36Sopenharmony_ci	default:
7262306a36Sopenharmony_ci		return "???";
7362306a36Sopenharmony_ci	}
7462306a36Sopenharmony_ci}
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ciconst char *ceph_osd_state_name(int s)
7762306a36Sopenharmony_ci{
7862306a36Sopenharmony_ci	switch (s) {
7962306a36Sopenharmony_ci	case CEPH_OSD_EXISTS:
8062306a36Sopenharmony_ci		return "exists";
8162306a36Sopenharmony_ci	case CEPH_OSD_UP:
8262306a36Sopenharmony_ci		return "up";
8362306a36Sopenharmony_ci	case CEPH_OSD_AUTOOUT:
8462306a36Sopenharmony_ci		return "autoout";
8562306a36Sopenharmony_ci	case CEPH_OSD_NEW:
8662306a36Sopenharmony_ci		return "new";
8762306a36Sopenharmony_ci	default:
8862306a36Sopenharmony_ci		return "???";
8962306a36Sopenharmony_ci	}
9062306a36Sopenharmony_ci}
91