Changeset e0bbecb in mainline for uspace/lib/device/include/hr.h


Ignore:
Timestamp:
2025-06-09T20:01:03Z (7 weeks ago)
Author:
Miroslav Cimerman <mc@…>
Children:
e2a8fd2
Parents:
431b513
Message:

hr: move state printing to hrctl

One IPC call is for short volume states printing
and other one for specific volume detailed info
printing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/device/include/hr.h

    r431b513 re0bbecb  
    8282} hr_ext_state_t;
    8383
     84typedef enum {
     85        HR_METADATA_NATIVE = 0,
     86        HR_METADATA_GEOM_MIRROR,
     87        HR_METADATA_GEOM_STRIPE,
     88        HR_METADATA_SOFTRAID,
     89        HR_METADATA_LAST_DUMMY
     90} hr_metadata_type_t;
     91
    8492typedef struct hr {
    8593        async_sess_t *sess;
     
    98106} hr_extent_t;
    99107
     108typedef struct hr_pair_vol_state {
     109        service_id_t svc_id;
     110        hr_vol_state_t state;
     111} hr_pair_vol_state_t;
     112
    100113typedef struct hr_vol_info {
     114        char devname[HR_DEVNAME_LEN];
     115        service_id_t svc_id;
     116        hr_level_t level;
    101117        hr_extent_t extents[HR_MAX_EXTENTS];
    102118        hr_extent_t hotspares[HR_MAX_HOTSPARES];
    103119        size_t extent_no;
    104120        size_t hotspare_no;
    105         service_id_t svc_id;
    106         hr_level_t level;
    107         uint64_t nblocks;
     121        uint64_t data_blkno;
    108122        uint32_t strip_size;
    109123        size_t bsize;
    110124        hr_vol_state_t state;
    111         uint8_t layout;
     125        hr_layout_t layout;
     126        hr_metadata_type_t meta_type;
     127        /* TODO: add rebuild pos */
    112128} hr_vol_info_t;
    113 
    114 typedef enum {
    115         HR_METADATA_NATIVE = 0,
    116         HR_METADATA_GEOM_MIRROR,
    117         HR_METADATA_GEOM_STRIPE,
    118         HR_METADATA_SOFTRAID,
    119         HR_METADATA_LAST_DUMMY
    120 } hr_metadata_type_t;
    121129
    122130extern errno_t hr_sess_init(hr_t **);
     
    129137extern errno_t hr_fail_extent(hr_t *, const char *, unsigned long);
    130138extern errno_t hr_add_hotspare(hr_t *, const char *, const char *);
    131 extern errno_t hr_print_state(hr_t *);
     139extern errno_t hr_get_vol_states(hr_t *, hr_pair_vol_state_t **, size_t *);
     140extern errno_t hr_get_vol_info(hr_t *, service_id_t, hr_vol_info_t *);
    132141extern const char *hr_get_vol_state_str(hr_vol_state_t);
    133142extern const char *hr_get_ext_state_str(hr_ext_state_t);
    134143extern const char *hr_get_layout_str(hr_layout_t);
     144extern const char *hr_get_level_str(hr_level_t);
    135145extern const char *hr_get_metadata_type_str(hr_metadata_type_t);
    136146
Note: See TracChangeset for help on using the changeset viewer.