~ubuntu-branches/debian/sid/lvm2/sid

« back to all changes in this revision

Viewing changes to lib/report/properties.c

  • Committer: Package Import Robot
  • Author(s): Bastian Blank
  • Date: 2014-08-19 15:37:06 UTC
  • mfrom: (1.1.18)
  • Revision ID: package-import@ubuntu.com-20140819153706-i1gaio8lg534dara
Tags: 2.02.109-1
New upstream version.

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
#include "lib.h"
16
16
#include "properties.h"
17
17
#include "activate.h"
18
 
#include "lvm-types.h"
19
18
#include "metadata.h"
20
19
 
21
20
 
48
47
#define GET_PVSEG_STR_PROPERTY_FN(NAME, VALUE) \
49
48
        GET_STR_PROPERTY_FN(NAME, VALUE, pv_segment, pvseg)
50
49
 
51
 
static percent_t _copy_percent(const struct logical_volume *lv)
 
50
static dm_percent_t _copy_percent(const struct logical_volume *lv)
52
51
{
53
 
        percent_t percent;
 
52
        dm_percent_t percent;
54
53
 
55
54
        if (!lv_mirror_percent(lv->vg->cmd, lv, 0, &percent, NULL))
56
 
                percent = PERCENT_INVALID;
 
55
                percent = DM_PERCENT_INVALID;
57
56
 
58
57
        return percent;
59
58
}
92
91
        return first_seg(lv)->max_recovery_rate;
93
92
}
94
93
 
95
 
static percent_t _snap_percent(const struct logical_volume *lv)
 
94
static dm_percent_t _snap_percent(const struct logical_volume *lv)
96
95
{
97
 
        percent_t percent;
 
96
        dm_percent_t percent;
98
97
 
99
98
        if (!lv_is_cow(lv) || !lv_snapshot_percent(lv, &percent))
100
 
                percent = PERCENT_INVALID;
 
99
                percent = DM_PERCENT_INVALID;
101
100
 
102
101
        return percent;
103
102
}
104
103
 
105
 
static percent_t _data_percent(const struct logical_volume *lv)
 
104
static dm_percent_t _data_percent(const struct logical_volume *lv)
106
105
{
107
 
        percent_t percent;
 
106
        dm_percent_t percent;
108
107
 
109
108
        if (lv_is_cow(lv))
110
109
                return _snap_percent(lv);
111
110
 
112
111
        if (lv_is_thin_volume(lv))
113
 
                return lv_thin_percent(lv, 0, &percent) ? percent : PERCENT_INVALID;
 
112
                return lv_thin_percent(lv, 0, &percent) ? percent : DM_PERCENT_INVALID;
114
113
 
115
 
        return lv_thin_pool_percent(lv, 0, &percent) ? percent : PERCENT_INVALID;
 
114
        return lv_thin_pool_percent(lv, 0, &percent) ? percent : DM_PERCENT_INVALID;
116
115
}
117
116
 
118
 
static percent_t _metadata_percent(const struct logical_volume *lv)
 
117
static dm_percent_t _metadata_percent(const struct logical_volume *lv)
119
118
{
120
 
        percent_t percent;
 
119
        dm_percent_t percent;
121
120
 
122
 
        return lv_thin_pool_percent(lv, 1, &percent) ? percent : PERCENT_INVALID;
 
121
        return lv_thin_pool_percent(lv, 1, &percent) ? percent : DM_PERCENT_INVALID;
123
122
}
124
123
 
125
124
/* PV */
160
159
GET_PV_NUM_PROPERTY_FN(pv_ba_size, SECTOR_SIZE * pv->ba_size)
161
160
#define _pv_ba_size_set prop_not_implemented_set
162
161
 
 
162
#define _pv_allocatable_set prop_not_implemented_set
 
163
#define _pv_allocatable_get prop_not_implemented_get
 
164
#define _pv_exported_set prop_not_implemented_set
 
165
#define _pv_exported_get prop_not_implemented_get
 
166
#define _pv_missing_set prop_not_implemented_set
 
167
#define _pv_missing_get prop_not_implemented_get
 
168
 
 
169
#define _vg_permissions_set prop_not_implemented_set
 
170
#define _vg_permissions_get prop_not_implemented_get
 
171
#define _vg_extendable_set prop_not_implemented_set
 
172
#define _vg_extendable_get prop_not_implemented_get
 
173
#define _vg_exported_set prop_not_implemented_set
 
174
#define _vg_exported_get prop_not_implemented_get
 
175
#define _vg_partial_set prop_not_implemented_set
 
176
#define _vg_partial_get prop_not_implemented_get
 
177
#define _vg_allocation_policy_set prop_not_implemented_set
 
178
#define _vg_allocation_policy_get prop_not_implemented_get
 
179
#define _vg_clustered_set prop_not_implemented_set
 
180
#define _vg_clustered_get prop_not_implemented_get
 
181
 
 
182
//#define _lv_volume_type_set prop_not_implemented_set
 
183
//#define _lv_volume_type_get prop_not_implemented_get
 
184
#define _lv_initial_image_sync_set prop_not_implemented_set
 
185
#define _lv_initial_image_sync_get prop_not_implemented_get
 
186
#define _lv_image_synced_get prop_not_implemented_get
 
187
#define _lv_image_synced_set prop_not_implemented_set
 
188
#define _lv_image_synced_get prop_not_implemented_get
 
189
#define _lv_merging_set prop_not_implemented_set
 
190
#define _lv_merging_get prop_not_implemented_get
 
191
#define _lv_converting_set prop_not_implemented_set
 
192
#define _lv_converting_get prop_not_implemented_get
 
193
#define _lv_permissions_set prop_not_implemented_set
 
194
#define _lv_permissions_get prop_not_implemented_get
 
195
#define _lv_allocation_policy_set prop_not_implemented_set
 
196
#define _lv_allocation_policy_get prop_not_implemented_get
 
197
#define _lv_allocation_locked_set prop_not_implemented_set
 
198
#define _lv_allocation_locked_get prop_not_implemented_get
 
199
#define _lv_active_locally_set prop_not_implemented_set
 
200
#define _lv_active_locally_get prop_not_implemented_get
 
201
#define _lv_active_remotely_set prop_not_implemented_set
 
202
#define _lv_active_remotely_get prop_not_implemented_get
 
203
#define _lv_active_exclusively_set prop_not_implemented_set
 
204
#define _lv_active_exclusively_get prop_not_implemented_get
 
205
#define _lv_fixed_minor_set prop_not_implemented_set
 
206
#define _lv_fixed_minor_get prop_not_implemented_get
 
207
#define _lv_merge_failed_set prop_not_implemented_set
 
208
#define _lv_merge_failed_get prop_not_implemented_get
 
209
#define _lv_snapshot_invalid_set prop_not_implemented_set
 
210
#define _lv_snapshot_invalid_get prop_not_implemented_get
 
211
#define _lv_suspended_set prop_not_implemented_set
 
212
#define _lv_suspended_get prop_not_implemented_get
 
213
#define _lv_live_table_set prop_not_implemented_set
 
214
#define _lv_live_table_get prop_not_implemented_get
 
215
#define _lv_inactive_table_set prop_not_implemented_set
 
216
#define _lv_inactive_table_get prop_not_implemented_get
 
217
#define _lv_device_open_set prop_not_implemented_set
 
218
#define _lv_device_open_get prop_not_implemented_get
 
219
//#define _lv_target_type_set prop_not_implemented_set
 
220
//#define _lv_target_type_get prop_not_implemented_get
 
221
#define _lv_health_status_set prop_not_implemented_set
 
222
#define _lv_health_status_get prop_not_implemented_get
 
223
#define _lv_skip_activation_set prop_not_implemented_set
 
224
#define _lv_skip_activation_get prop_not_implemented_get
 
225
 
163
226
/* LV */
164
227
GET_LV_STR_PROPERTY_FN(lv_uuid, lv_uuid_dup(lv))
165
228
#define _lv_uuid_set prop_not_implemented_set
166
229
GET_LV_STR_PROPERTY_FN(lv_name, lv_name_dup(lv->vg->vgmem, lv))
167
230
#define _lv_name_set prop_not_implemented_set
 
231
GET_LV_STR_PROPERTY_FN(lv_full_name, lv_fullname_dup(lv->vg->vgmem, lv))
 
232
#define _lv_full_name_set prop_not_implemented_set
168
233
GET_LV_STR_PROPERTY_FN(lv_path, lv_path_dup(lv->vg->vgmem, lv))
169
234
#define _lv_path_set prop_not_implemented_set
 
235
GET_LV_STR_PROPERTY_FN(lv_dm_path, lv_dmpath_dup(lv->vg->vgmem, lv))
 
236
#define _lv_dm_path_set prop_not_implemented_set
 
237
GET_LV_STR_PROPERTY_FN(lv_parent, lv_parent_dup(lv->vg->vgmem, lv))
 
238
#define _lv_parent_set prop_not_implemented_set
170
239
GET_LV_STR_PROPERTY_FN(lv_attr, lv_attr_dup(lv->vg->vgmem, lv))
171
240
#define _lv_attr_set prop_not_implemented_set
172
241
GET_LV_NUM_PROPERTY_FN(lv_major, lv->major)
335
404
GET_PVSEG_NUM_PROPERTY_FN(pvseg_size, (SECTOR_SIZE * pvseg->len))
336
405
#define _pvseg_size_set prop_not_implemented_set
337
406
 
 
407
 
338
408
struct lvm_property_type _properties[] = {
339
409
#include "columns.h"
340
410
        { 0, "", 0, 0, 0, { .integer = 0 }, prop_not_implemented_get, prop_not_implemented_set },
342
412
 
343
413
#undef STR
344
414
#undef NUM
 
415
#undef BIN
 
416
#undef SIZ
 
417
#undef PCT
 
418
#undef STR_LIST
345
419
#undef FIELD
346
420
 
347
421
int lvseg_get_property(const struct lv_segment *lvseg,