Motr  M0
spiel.h
Go to the documentation of this file.
1 /* -*- C -*- */
2 /*
3  * Copyright (c) 2014-2020 Seagate Technology LLC and/or its Affiliates
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * For any questions about this software or licensing,
18  * please email opensource@seagate.com or cortx-questions@seagate.com.
19  *
20  */
21 
22 
23 #pragma once
24 
25 #ifndef __MOTR_SPIEL_SPIEL_H__
26 #define __MOTR_SPIEL_SPIEL_H__
27 
28 #include "fid/fid.h" /* m0_fid */
29 #include "conf/schema.h" /* m0_conf_service_type */
30 #include "conf/confc.h" /* m0_confc */
31 #include "conf/rconfc.h" /* m0_rconfc */
32 #include "conf/pvers.h" /* m0_conf_pver_info */
33 #include "reqh/reqh_service.h" /* enum m0_service_health */
34 #include "sns/cm/cm.h" /* m0_cm_status */
35 
160 struct m0_rpc_machine;
161 struct m0_pdclust_attr;
162 struct m0_reqh;
163 
165  /* SNS or DIX(rep/reb) service fid */
166  struct m0_fid srs_fid;
167  /* State of current repair/rebalance, see @ref m0_sns_cm_status*/
169  /* Progress of current repair/rebalance in percent */
170  unsigned int srs_progress;
171 };
172 
175  /* SNS service fid */
176  struct m0_fid sss_fid;
177  /* State of current repair/rebalance, see @ref m0_sns_cm_status*/
179  /* Progress of current repair/rebalance in percent */
180  unsigned int sss_progress;
181  };
182 
187 };
188 
192 struct m0_spiel {
196  struct m0_spiel_core {
211  } spl_core;
216 };
217 
228 int m0_spiel_init(struct m0_spiel *spiel, struct m0_reqh *reqh);
229 
233 void m0_spiel_fini(struct m0_spiel *spiel);
234 
235 /**********************************************************/
236 /* Configuration management */
237 /**********************************************************/
238 
260 struct m0_spiel_tx {
272  char *spt_buffer;
273 };
274 
305 void m0_spiel_tx_open(struct m0_spiel *spiel,
306  struct m0_spiel_tx *tx);
307 
315 void m0_spiel_tx_close(struct m0_spiel_tx *tx);
316 
338 int m0_spiel_tx_commit(struct m0_spiel_tx *tx);
339 
360  bool forced,
361  uint64_t ver_forced,
362  uint32_t *rquorum);
363 
393 int m0_spiel_root_add(struct m0_spiel_tx *tx,
394  const struct m0_fid *rootfid,
395  const struct m0_fid *mdpool,
396  const struct m0_fid *imeta_pver,
397  uint32_t mdredundancy,
398  const char **params);
399 
410 int m0_spiel_node_add(struct m0_spiel_tx *tx,
411  const struct m0_fid *fid,
412  uint32_t memsize,
413  uint32_t nr_cpu,
414  uint64_t last_state,
415  uint64_t flags);
416 
427 int m0_spiel_process_add(struct m0_spiel_tx *tx,
428  const struct m0_fid *fid,
429  const struct m0_fid *parent,
430  struct m0_bitmap *cores,
431  uint64_t memlimit_as,
432  uint64_t memlimit_rss,
433  uint64_t memlimit_stack,
434  uint64_t memlimit_memlock,
435  const char *endpoint);
436 
445  const char **svi_endpoints;
446 };
447 
456 int m0_spiel_service_add(struct m0_spiel_tx *tx,
457  const struct m0_fid *fid,
458  const struct m0_fid *parent,
459  const struct m0_spiel_service_info *service_info);
460 
476 int m0_spiel_device_add(struct m0_spiel_tx *tx,
477  const struct m0_fid *fid,
478  const struct m0_fid *parent,
479  const struct m0_fid *drive,
480  uint32_t dev_idx,
483  uint32_t bsize,
484  uint64_t size,
485  uint64_t last_state,
486  uint64_t flags,
487  const char *filename);
488 
495 int m0_spiel_site_add(struct m0_spiel_tx *tx,
496  const struct m0_fid *fid);
497 
505 int m0_spiel_rack_add(struct m0_spiel_tx *tx,
506  const struct m0_fid *fid,
507  const struct m0_fid *parent);
508 
517 int m0_spiel_enclosure_add(struct m0_spiel_tx *tx,
518  const struct m0_fid *fid,
519  const struct m0_fid *parent,
520  const struct m0_fid *node);
521 
529 int m0_spiel_controller_add(struct m0_spiel_tx *tx,
530  const struct m0_fid *fid,
531  const struct m0_fid *parent);
532 
540 int m0_spiel_drive_add(struct m0_spiel_tx *tx,
541  const struct m0_fid *fid,
542  const struct m0_fid *parent);
543 
554 int m0_spiel_pool_add(struct m0_spiel_tx *tx,
555  const struct m0_fid *fid,
556  uint32_t pver_policy);
557 
584  const struct m0_fid *fid,
585  const struct m0_fid *parent,
586  const struct m0_pdclust_attr *attrs,
587  uint32_t *tolerance,
588  uint32_t tolerance_len);
608  const struct m0_fid *fid,
609  const struct m0_fid *parent,
610  uint32_t index,
611  const struct m0_fid *base_pver,
612  uint32_t *allowance,
613  uint32_t allowance_len);
614 
623 int m0_spiel_site_v_add(struct m0_spiel_tx *tx,
624  const struct m0_fid *fid,
625  const struct m0_fid *parent,
626  const struct m0_fid *real);
627 
636 int m0_spiel_rack_v_add(struct m0_spiel_tx *tx,
637  const struct m0_fid *fid,
638  const struct m0_fid *parent,
639  const struct m0_fid *real);
640 
650  const struct m0_fid *fid,
651  const struct m0_fid *parent,
652  const struct m0_fid *real);
653 
663  const struct m0_fid *fid,
664  const struct m0_fid *parent,
665  const struct m0_fid *real);
666 
675 int m0_spiel_drive_v_add(struct m0_spiel_tx *tx,
676  const struct m0_fid *fid,
677  const struct m0_fid *parent,
678  const struct m0_fid *real);
686  const struct m0_fid *fid);
687 
694 int m0_spiel_profile_add(struct m0_spiel_tx *tx, const struct m0_fid *fid);
695 
703  const struct m0_fid *profile,
704  const struct m0_fid *pool);
705 
713 int m0_spiel_element_del(struct m0_spiel_tx *tx, const struct m0_fid *fid);
714 
728 int m0_spiel_tx_validate(struct m0_spiel_tx *tx);
729 
737 int m0_spiel_tx_to_str(struct m0_spiel_tx *tx,
738  uint64_t ver_forced,
739  char **str);
740 
742 void m0_spiel_tx_str_free(char *str);
743 
749 int m0_spiel_tx_dump(struct m0_spiel_tx *tx, uint64_t ver_forced,
750  const char *filename);
757 int m0_spiel_tx_dump_debug(struct m0_spiel_tx *tx, uint64_t ver_forced,
758  const char *filename);
759 
760 /**********************************************************/
761 /* Command interface */
762 /**********************************************************/
783  m0_rconfc_cb_t expired_cb);
784 
786 void m0_spiel_rconfc_stop(struct m0_spiel *spiel);
787 
794 int m0_spiel_cmd_profile_set(struct m0_spiel *spiel, const char *profile_str);
795 
802 int m0_spiel_service_init(struct m0_spiel *spl, const struct m0_fid *svc_fid);
803 
810 int m0_spiel_service_start(struct m0_spiel *spl, const struct m0_fid *svc_fid);
811 
819 int m0_spiel_service_stop(struct m0_spiel *spl, const struct m0_fid *svc_fid);
820 
830 int m0_spiel_service_health(struct m0_spiel *spl, const struct m0_fid *svc_fid);
831 
841 int m0_spiel_service_status(struct m0_spiel *spl, const struct m0_fid *svc_fid,
842  int *status);
843 
850 int m0_spiel_service_quiesce(struct m0_spiel *spl,
851  const struct m0_fid *svc_fid);
852 
859 int m0_spiel_device_attach(struct m0_spiel *spl, const struct m0_fid *dev_fid);
860 
865 int m0_spiel_device_attach_state(struct m0_spiel *spl,
866  const struct m0_fid *dev_fid,
867  uint32_t *ha_state);
868 
875 int m0_spiel_device_detach(struct m0_spiel *spl, const struct m0_fid *dev_fid);
876 
883 int m0_spiel_device_format(struct m0_spiel *spl, const struct m0_fid *dev_fid);
884 
891 int m0_spiel_process_stop(struct m0_spiel *spl, const struct m0_fid *proc_fid);
892 
900 int m0_spiel_process_reconfig(struct m0_spiel *spl,
901  const struct m0_fid *proc_fid);
902 
911 int m0_spiel_process_health(struct m0_spiel *spl,
912  const struct m0_fid *proc_fid);
913 
920 int m0_spiel_process_quiesce(struct m0_spiel *spl,
921  const struct m0_fid *proc_fid);
922 
924  /* Service FID */
925  struct m0_fid spls_fid;
926  /* Service type name */
927  char *spls_name;
928 };
929 
943  const struct m0_fid *proc_fid,
944  struct m0_spiel_running_svc **services);
945 
960 int m0_spiel_process_lib_load(struct m0_spiel *spl,
961  const struct m0_fid *proc_fid,
962  const char *libname);
963 
983 int m0_spiel_sns_repair_start(struct m0_spiel *spl,
984  const struct m0_fid *pool_fid);
985 int m0_spiel_dix_repair_start(struct m0_spiel *spl,
986  const struct m0_fid *pool_fid);
987 
989 int m0_spiel_pool_repair_start(struct m0_spiel *spl,
990  const struct m0_fid *pool_fid);
991 
1014 int m0_spiel_sns_repair_continue(struct m0_spiel *spl,
1015  const struct m0_fid *pool_fid);
1016 int m0_spiel_dix_repair_continue(struct m0_spiel *spl,
1017  const struct m0_fid *pool_fid);
1018 
1020 int m0_spiel_pool_repair_continue(struct m0_spiel *spl,
1021  const struct m0_fid *pool_fid);
1022 
1042 int m0_spiel_sns_repair_quiesce(struct m0_spiel *spl,
1043  const struct m0_fid *pool_fid);
1044 int m0_spiel_dix_repair_quiesce(struct m0_spiel *spl,
1045  const struct m0_fid *pool_fid);
1046 
1048 int m0_spiel_pool_repair_quiesce(struct m0_spiel *spl,
1049  const struct m0_fid *pool_fid);
1050 
1070 int m0_spiel_sns_repair_abort(struct m0_spiel *spl,
1071  const struct m0_fid *pool_fid);
1072 int m0_spiel_dix_repair_abort(struct m0_spiel *spl,
1073  const struct m0_fid *pool_fid);
1074 
1076 int m0_spiel_pool_repair_abort(struct m0_spiel *spl,
1077  const struct m0_fid *pool_fid);
1078 
1095 int m0_spiel_sns_repair_status(struct m0_spiel *spl,
1096  const struct m0_fid *pool_fid,
1097  struct m0_spiel_repreb_status **statuses);
1098 int m0_spiel_dix_repair_status(struct m0_spiel *spl,
1099  const struct m0_fid *pool_fid,
1100  struct m0_spiel_repreb_status **statuses);
1101 
1103 int m0_spiel_pool_repair_status(struct m0_spiel *spl,
1104  const struct m0_fid *pool_fid,
1105  struct m0_spiel_sns_status **statuses);
1106 
1127 int m0_spiel_sns_rebalance_start(struct m0_spiel *spl,
1128  const struct m0_fid *pool_fid);
1129 int m0_spiel_dix_rebalance_start(struct m0_spiel *spl,
1130  const struct m0_fid *pool_fid);
1131 
1133 int m0_spiel_pool_rebalance_start(struct m0_spiel *spl,
1134  const struct m0_fid *pool_fid);
1135 
1143  const struct m0_fid *node);
1168  const struct m0_fid *pool_fid);
1170  const struct m0_fid *pool_fid);
1171 
1174  const struct m0_fid *pool_fid);
1175 
1197  const struct m0_fid *pool_fid);
1199  const struct m0_fid *pool_fid);
1200 
1203  const struct m0_fid *pool_fid);
1204 
1221 int m0_spiel_sns_rebalance_status(struct m0_spiel *spl,
1222  const struct m0_fid *pool_fid,
1223  struct m0_spiel_repreb_status **statuses);
1224 int m0_spiel_dix_rebalance_status(struct m0_spiel *spl,
1225  const struct m0_fid *pool_fid,
1226  struct m0_spiel_repreb_status **statuses);
1227 
1230  const struct m0_fid *pool_fid,
1231  struct m0_spiel_sns_status **statuses);
1232 
1244 int m0_spiel_sns_rebalance_abort(struct m0_spiel *spl,
1245  const struct m0_fid *pool_fid);
1246 int m0_spiel_dix_rebalance_abort(struct m0_spiel *spl,
1247  const struct m0_fid *pool_fid);
1248 
1250 int m0_spiel_pool_rebalance_abort(struct m0_spiel *spl,
1251  const struct m0_fid *pool_fid);
1252 
1261  struct m0_fid sbk_fid;
1262  uint64_t sbk_user_id;
1263 };
1264 
1266  uint64_t sbr_byte_count;
1267  uint64_t sbr_object_count;
1268 };
1269 
1278  int pc_rc;
1279  uint32_t pc_cnt;
1283 };
1284 
1299 int m0_spiel_proc_counters_fetch(struct m0_spiel *spl,
1300  struct m0_fid *proc_fid,
1301  struct m0_proc_counter *count_stats);
1302 
1321 struct m0_fs_stats {
1327  uint32_t fs_svc_total;
1328  uint32_t fs_svc_replied;
1329 };
1330 
1343  struct m0_fs_stats *stats);
1344 
1353 M0_INTERNAL int m0_spiel__fs_stats_fetch(struct m0_spiel_core *spc,
1354  struct m0_fs_stats *stats);
1355 
1366 int m0_spiel_confstr(struct m0_spiel *spl, char **out);
1367 
1383 int m0_spiel_conf_pver_status(struct m0_spiel *spl,
1384  struct m0_fid *fid,
1385  struct m0_conf_pver_info *out_info);
1386 
1388 #endif /* __MOTR_SPIEL_SPIEL_H__ */
1389 
1390 /*
1391  * Local variables:
1392  * c-indentation-style: "K&R"
1393  * c-basic-offset: 8
1394  * tab-width: 8
1395  * fill-column: 80
1396  * scroll-step: 1
1397  * End:
1398  */
1399 /*
1400  * vim: tabstop=8 shiftwidth=8 noexpandtab textwidth=80 nowrap
1401  */
int m0_spiel_pool_repair_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1459
unsigned int sss_progress
Definition: spiel.h:180
m0_cm_status
Definition: cm.h:54
int m0_spiel_site_add(struct m0_spiel_tx *tx, const struct m0_fid *fid)
Definition: conf_mgmt.c:1382
int m0_spiel_sns_repair_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1384
int m0_spiel_service_stop(struct m0_spiel *spl, const struct m0_fid *svc_fid)
Definition: cmd.c:525
int m0_spiel_dix_rebalance_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1514
struct m0_spiel_bckey ** pc_bckey
Definition: spiel.h:1281
int m0_spiel_cmd_profile_set(struct m0_spiel *spiel, const char *profile_str)
Definition: spiel.c:100
uint32_t pc_cnt
Definition: spiel.h:1279
int m0_spiel_sns_rebalance_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_repreb_status **statuses)
Definition: cmd.c:1593
int m0_spiel_controller_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent)
Definition: conf_mgmt.c:1518
int const char const void size_t int flags
Definition: dir.c:328
int m0_spiel_enclosure_v_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *real)
Definition: conf_mgmt.c:1816
int m0_spiel_sns_rebalance_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1631
m0_conf_service_type
Definition: schema.h:194
int m0_spiel_process_quiesce(struct m0_spiel *spl, const struct m0_fid *proc_fid)
Definition: cmd.c:821
int m0_spiel_root_add(struct m0_spiel_tx *tx, const struct m0_fid *rootfid, const struct m0_fid *mdpool, const struct m0_fid *imeta_pver, uint32_t mdredundancy, const char **params)
Definition: conf_mgmt.c:902
m0_bcount_t fs_free_seg
Definition: spiel.h:1322
struct m0_rpc_machine * spc_rmachine
Definition: spiel.h:198
int m0_spiel_node_direct_rebalance_start(struct m0_spiel *spl, const struct m0_fid *node)
Definition: cmd.c:1541
int m0_spiel_drive_v_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *real)
Definition: conf_mgmt.c:1912
int m0_spiel_process_health(struct m0_spiel *spl, const struct m0_fid *proc_fid)
Definition: cmd.c:814
int m0_spiel_service_status(struct m0_spiel *spl, const struct m0_fid *svc_fid, int *status)
Definition: cmd.c:556
struct m0_fid sbk_fid
Definition: spiel.h:1261
void m0_spiel_rconfc_stop(struct m0_spiel *spiel)
Definition: spiel.c:91
static struct net_test_cmd_node * node
Definition: commands.c:72
unsigned int srs_progress
Definition: spiel.h:170
void(* m0_rconfc_cb_t)(struct m0_rconfc *rconfc)
Definition: rconfc.h:215
int m0_spiel_device_attach_state(struct m0_spiel *spl, const struct m0_fid *dev_fid, uint32_t *ha_state)
Definition: cmd.c:647
int m0_spiel_sns_rebalance_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1531
int m0_spiel_pool_rebalance_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1560
m0_bcount_t fs_total_disk
Definition: spiel.h:1326
int m0_spiel_profile_pool_add(struct m0_spiel_tx *tx, const struct m0_fid *profile, const struct m0_fid *pool)
Definition: conf_mgmt.c:1304
const char ** svi_endpoints
Definition: spiel.h:445
int m0_spiel_dix_rebalance_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1576
int m0_spiel_dix_repair_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1367
int m0_spiel_dix_repair_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_repreb_status **statuses)
Definition: cmd.c:1480
uint64_t m0_bcount_t
Definition: types.h:77
int m0_spiel_tx_dump_debug(struct m0_spiel_tx *tx, uint64_t ver_forced, const char *filename)
Definition: conf_mgmt.c:2212
struct m0_spiel_bcrec ** pc_bcrec
Definition: spiel.h:1282
int m0_spiel_pool_repair_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1378
int m0_spiel_pool_rebalance_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1652
int m0_spiel_tx_commit_forced(struct m0_spiel_tx *tx, bool forced, uint64_t ver_forced, uint32_t *rquorum)
Definition: conf_mgmt.c:591
int m0_spiel_site_v_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *real)
Definition: conf_mgmt.c:1716
int m0_spiel_device_format(struct m0_spiel *spl, const struct m0_fid *dev_fid)
Definition: cmd.c:667
struct m0_fid fid
Definition: di.c:46
struct m0_fid srs_fid
Definition: spiel.h:166
int m0_spiel_service_init(struct m0_spiel *spl, const struct m0_fid *svc_fid)
Definition: cmd.c:507
int m0_spiel_process_stop(struct m0_spiel *spl, const struct m0_fid *proc_fid)
Definition: cmd.c:781
m0_repreb_type
Definition: spiel.h:183
int m0_spiel_tx_commit(struct m0_spiel_tx *tx)
Definition: conf_mgmt.c:723
int m0_spiel_pool_repair_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1432
int m0_spiel_rack_v_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *real)
Definition: conf_mgmt.c:1768
uint32_t fs_svc_total
Definition: spiel.h:1327
int m0_spiel_process_list_services(struct m0_spiel *spl, const struct m0_fid *proc_fid, struct m0_spiel_running_svc **services)
Definition: cmd.c:858
m0_bcount_t fs_total_seg
Definition: spiel.h:1323
struct m0_spiel::m0_spiel_core spl_core
int m0_spiel_service_health(struct m0_spiel *spl, const struct m0_fid *svc_fid)
Definition: cmd.c:537
struct m0_fid spc_profile
Definition: spiel.h:200
int m0_spiel_rack_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent)
Definition: conf_mgmt.c:1426
char * spls_name
Definition: spiel.h:927
int m0_spiel_tx_dump(struct m0_spiel_tx *tx, uint64_t ver_forced, const char *filename)
Definition: conf_mgmt.c:2205
int m0_spiel_drive_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent)
Definition: conf_mgmt.c:1562
int m0_spiel_process_reconfig(struct m0_spiel *spl, const struct m0_fid *proc_fid)
Definition: cmd.c:788
uint64_t sbk_user_id
Definition: spiel.h:1262
M0_INTERNAL int m0_spiel__fs_stats_fetch(struct m0_spiel_core *spc, struct m0_fs_stats *stats)
Definition: cmd.c:2315
void m0_spiel_tx_open(struct m0_spiel *spiel, struct m0_spiel_tx *tx)
Definition: conf_mgmt.c:105
int m0_spiel_pver_formulaic_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, uint32_t index, const struct m0_fid *base_pver, uint32_t *allowance, uint32_t allowance_len)
Definition: conf_mgmt.c:1659
void m0_spiel_fini(struct m0_spiel *spiel)
Definition: spiel.c:59
struct m0_confc * spc_confc
Definition: spiel.h:210
struct m0_mutex spt_lock
Definition: spiel.h:266
static char * proc_fid
Definition: m0hsm.c:45
Definition: reqh.h:94
int m0_spiel_profile_add(struct m0_spiel_tx *tx, const struct m0_fid *fid)
Definition: conf_mgmt.c:1236
enum m0_cm_status srs_state
Definition: spiel.h:168
int m0_spiel_init(struct m0_spiel *spiel, struct m0_reqh *reqh)
Definition: spiel.c:44
int m0_spiel_pver_actual_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_pdclust_attr *attrs, uint32_t *tolerance, uint32_t tolerance_len)
Definition: conf_mgmt.c:1601
int m0_spiel_sns_repair_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_repreb_status **statuses)
Definition: cmd.c:1465
int m0_spiel_pool_rebalance_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1525
int m0_spiel_tx_validate(struct m0_spiel_tx *tx)
Definition: conf_mgmt.c:136
int m0_spiel_rconfc_start(struct m0_spiel *spiel, m0_rconfc_cb_t expired_cb)
Definition: spiel.c:66
m0_cfg_storage_device_media_type
Definition: schema.h:136
int m0_spiel_enclosure_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *node)
Definition: conf_mgmt.c:1470
int m0_spiel_dix_repair_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1421
int m0_spiel_sns_repair_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1411
int m0_spiel_process_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, struct m0_bitmap *cores, uint64_t memlimit_as, uint64_t memlimit_rss, uint64_t memlimit_stack, uint64_t memlimit_memlock, const char *endpoint)
Definition: conf_mgmt.c:1033
int m0_spiel_device_detach(struct m0_spiel *spl, const struct m0_fid *dev_fid)
Definition: cmd.c:658
int m0_spiel_service_start(struct m0_spiel *spl, const struct m0_fid *svc_fid)
Definition: cmd.c:516
static struct m0_pool pool
Definition: iter_ut.c:58
struct m0_fid sss_fid
Definition: spiel.h:176
uint64_t sbr_byte_count
Definition: spiel.h:1266
int m0_spiel_dix_rebalance_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1549
int m0_spiel_sns_rebalance_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1504
m0_cfg_storage_device_interface_type
Definition: schema.h:120
struct m0_reqh reqh
Definition: rm_foms.c:48
static struct m0_fid profile
Definition: rconfc.c:49
int m0_spiel_service_quiesce(struct m0_spiel *spl, const struct m0_fid *svc_fid)
Definition: cmd.c:546
int m0_spiel_pool_rebalance_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_sns_status **statuses)
Definition: cmd.c:1623
struct m0_conf_cache spt_cache
Definition: spiel.h:264
int m0_spiel_controller_v_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *real)
Definition: conf_mgmt.c:1864
int m0_spiel_pool_repair_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1405
Definition: fid.h:38
int m0_spiel_confstr(struct m0_spiel *spl, char **out)
Definition: cmd.c:2380
int m0_spiel_pool_version_done(struct m0_spiel_tx *tx, const struct m0_fid *fid)
Definition: conf_mgmt.c:2075
struct m0_spiel * spt_spiel
Definition: spiel.h:262
m0_bcount_t fs_avail_disk
Definition: spiel.h:1325
int m0_spiel_sns_repair_start(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1357
int m0_spiel_dix_rebalance_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1641
Definition: beck.c:130
int m0_spiel_dix_repair_continue(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1394
int m0_spiel_tx_to_str(struct m0_spiel_tx *tx, uint64_t ver_forced, char **str)
Definition: conf_mgmt.c:2174
enum m0_sns_cm_status sss_state
Definition: spiel.h:178
struct m0_spiel spiel
Definition: spiel_conf_ut.c:42
m0_bcount_t fs_free_disk
Definition: spiel.h:1324
m0_sns_cm_status
Definition: cm.h:119
Definition: common.h:34
int m0_spiel_device_attach(struct m0_spiel *spl, const struct m0_fid *dev_fid)
Definition: cmd.c:641
m0_bcount_t size
Definition: di.c:39
int m0_spiel_conf_pver_status(struct m0_spiel *spl, struct m0_fid *fid, struct m0_conf_pver_info *out_info)
Definition: cmd.c:2397
int m0_spiel_proc_counters_fetch(struct m0_spiel *spl, struct m0_fid *proc_fid, struct m0_proc_counter *count_stats)
Definition: cmd.c:2211
int m0_spiel_pool_repair_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_sns_status **statuses)
Definition: cmd.c:1496
int m0_spiel_pool_rebalance_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1587
int m0_spiel_sns_repair_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1438
struct m0_fid spls_fid
Definition: spiel.h:925
void m0_spiel_tx_close(struct m0_spiel_tx *tx)
Definition: conf_mgmt.c:171
int m0_spiel_pool_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, uint32_t pver_policy)
Definition: conf_mgmt.c:1339
struct m0_rconfc spl_rconfc
Definition: spiel.h:213
uint32_t fs_svc_replied
Definition: spiel.h:1328
int m0_spiel_device_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_fid *drive, uint32_t dev_idx, enum m0_cfg_storage_device_interface_type iface, enum m0_cfg_storage_device_media_type media, uint32_t bsize, uint64_t size, uint64_t last_state, uint64_t flags, const char *filename)
Definition: conf_mgmt.c:1156
enum m0_conf_service_type svi_type
Definition: spiel.h:440
struct m0_fid pc_proc_fid
Definition: spiel.h:1280
#define out(...)
Definition: gen.c:41
char * spt_buffer
Definition: spiel.h:272
struct m0_spiel_wlock_ctx * spl_wlock_ctx
Definition: spiel.h:215
int m0_spiel_dix_repair_abort(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1448
void m0_spiel_tx_str_free(char *str)
Definition: conf_mgmt.c:2182
uint64_t sbr_object_count
Definition: spiel.h:1267
Definition: mutex.h:47
int m0_spiel_filesystem_stats_fetch(struct m0_spiel *spl, struct m0_fs_stats *stats)
Definition: cmd.c:2374
int m0_spiel_element_del(struct m0_spiel_tx *tx, const struct m0_fid *fid)
Definition: conf_mgmt.c:2124
int m0_spiel_process_lib_load(struct m0_spiel *spl, const struct m0_fid *proc_fid, const char *libname)
Definition: cmd.c:892
int m0_spiel_service_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, const struct m0_fid *parent, const struct m0_spiel_service_info *service_info)
Definition: conf_mgmt.c:1101
int m0_spiel_sns_rebalance_quiesce(struct m0_spiel *spl, const struct m0_fid *pool_fid)
Definition: cmd.c:1566
int m0_spiel_node_add(struct m0_spiel_tx *tx, const struct m0_fid *fid, uint32_t memsize, uint32_t nr_cpu, uint64_t last_state, uint64_t flags)
Definition: conf_mgmt.c:974
int m0_spiel_dix_rebalance_status(struct m0_spiel *spl, const struct m0_fid *pool_fid, struct m0_spiel_repreb_status **statuses)
Definition: cmd.c:1608