| Top |
| void | bd_dm_close () |
| gboolean | bd_dm_init () |
| GQuark | bd_dm_error_quark () |
| gboolean | bd_dm_create_linear () |
| gboolean | bd_dm_remove () |
| gchar * | bd_dm_name_from_node () |
| gchar * | bd_dm_node_from_name () |
| gboolean | bd_dm_map_exists () |
| gchar * | bd_dm_get_subsystem_from_name () |
| BDDMThinPoolStats * | bd_dm_get_thin_pool_stats () |
| BDDMThinPoolStats * | bd_dm_thin_pool_stats_copy () |
| void | bd_dm_thin_pool_stats_free () |
| gboolean | bd_dm_is_tech_avail () |
| #define | BD_DM_ERROR |
| enum | BDDMError |
| BDDMThinPoolStats | |
| enum | BDDMTech |
| enum | BDDMTechMode |
void
bd_dm_close (void);
Cleans up after the plugin. **This function is called automatically by the library's functions that unload it.**
gboolean
bd_dm_init (void);
Initializes the plugin. **This function is called automatically by the library's initialization functions.**
gboolean bd_dm_create_linear (const gchar *map_name,const gchar *device,guint64 length,const gchar *uuid,GError **error);
map_name |
name of the map |
|
device |
device to create map for |
|
length |
length of the mapping in sectors |
|
uuid |
UUID for the new dev mapper device or |
[nullable] |
error |
place to store error (if any). |
[out][optional] |
whether the new linear mapping map_name
was successfully created
for the device
or not
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_CREATE_ACTIVATE
gboolean bd_dm_remove (const gchar *map_name,GError **error);
whether the map_name
map was successfully removed or not
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_REMOVE_DEACTIVATE
gchar * bd_dm_name_from_node (const gchar *dm_node,GError **error);
dm_node |
name of the DM node (e.g. "dm-0") |
|
error |
place to store error (if any). |
[out][optional] |
map name of the map providing the dm_node
device or NULL
(error
) contains the error in such cases
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_QUERY
gchar * bd_dm_node_from_name (const gchar *map_name,GError **error);
DM node name for the map_name
map or NULL (error
) contains
the error in such cases
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_QUERY
gboolean bd_dm_map_exists (const gchar *map_name,gboolean live_only,gboolean active_only,GError **error);
map_name |
name of the queried map |
|
live_only |
whether to go through the live maps only or not |
|
active_only |
whether to ignore suspended maps or not |
|
error |
place to store error (if any). |
[out][optional] |
whether the given map_name
exists (and is live if live_only
is
TRUE (and is active if active_only
is TRUE)). If FALSE is returned,
error
indicates whether error appeared (non-NULL) or not (NULL).
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_QUERY
gchar * bd_dm_get_subsystem_from_name (const gchar *device_name,GError **error);
BDDMThinPoolStats * bd_dm_get_thin_pool_stats (const gchar *map_name,GError **error);
map_name |
name of the DM map (thin pool) to get stats for |
|
error |
place to store error (if any). |
[out][optional] |
physical usage stats for the thin pool map_name
or
NULL in case of error (error
is set). This works for any device mapper thin
pool, it doesn't have to be managed by LVM.
Tech category: BD_DM_TECH_MAP-BD_DM_TECH_MODE_QUERY.
[transfer full]
BDDMThinPoolStats *
bd_dm_thin_pool_stats_copy (BDDMThinPoolStats *data);
Creates a new copy of data
.
[skip]
void
bd_dm_thin_pool_stats_free (BDDMThinPoolStats *data);
Frees data
.
[skip]
gboolean bd_dm_is_tech_avail (BDDMTech tech,guint64 mode,GError **error);
tech |
the queried tech |
|
mode |
a bit mask of queried modes of operation (BDDMTechMode) for |
|
error |
place to store error (details about why the |
[out][optional] |
typedef struct {
guint64 used_metadata_blocks;
guint64 total_metadata_blocks;
guint64 used_data_blocks;
guint64 total_data_blocks;
gboolean read_only;
gboolean fail;
gboolean out_of_data_space;
gboolean needs_check;
} BDDMThinPoolStats;
The block sizes are not reported by the device mapper thin pool status, only the numbers of blocks. To get the space usage as a percentage divide the used blocks by the total blocks.