#ifndef _LINUX_DEVICE_MAPPER_H
#define _LINUX_DEVICE_MAPPER_H
-#ifdef __KERNEL__
-
struct dm_target;
struct dm_table;
struct dm_dev;
-struct mapped_device;
typedef enum { STATUSTYPE_INFO, STATUSTYPE_TABLE } status_type_t;
struct target_type {
const char *name;
struct module *module;
- unsigned version[3];
+ unsigned version[3];
dm_ctr_fn ctr;
dm_dtr_fn dtr;
dm_map_fn map;
unsigned short hardsect_size;
unsigned int max_segment_size;
unsigned long seg_boundary_mask;
- unsigned char no_cluster; /* inverted so that 0 is default */
};
struct dm_target {
int dm_register_target(struct target_type *t);
int dm_unregister_target(struct target_type *t);
-
-/*-----------------------------------------------------------------
- * Functions for creating and manipulating mapped devices.
- * Drop the reference with dm_put when you finish with the object.
- *---------------------------------------------------------------*/
-
-/*
- * DM_ANY_MINOR chooses the next available minor number.
- */
-#define DM_ANY_MINOR (-1)
-int dm_create(int minor, struct mapped_device **md);
-
-/*
- * Reference counting for md.
- */
-struct mapped_device *dm_get_md(dev_t dev);
-void dm_get(struct mapped_device *md);
-void dm_put(struct mapped_device *md);
-
-/*
- * An arbitrary pointer may be stored alongside a mapped device.
- */
-void dm_set_mdptr(struct mapped_device *md, void *ptr);
-void *dm_get_mdptr(struct mapped_device *md);
-
-/*
- * A device can still be used while suspended, but I/O is deferred.
- */
-int dm_suspend(struct mapped_device *md, int with_lockfs);
-int dm_resume(struct mapped_device *md);
-
-/*
- * Event functions.
- */
-uint32_t dm_get_event_nr(struct mapped_device *md);
-int dm_wait_event(struct mapped_device *md, int event_nr);
-
-/*
- * Info functions.
- */
-const char *dm_device_name(struct mapped_device *md);
-struct gendisk *dm_disk(struct mapped_device *md);
-int dm_suspended(struct mapped_device *md);
-
-/*
- * Geometry functions.
- */
-int dm_get_geometry(struct mapped_device *md, struct hd_geometry *geo);
-int dm_set_geometry(struct mapped_device *md, struct hd_geometry *geo);
-
-
-/*-----------------------------------------------------------------
- * Functions for manipulating device-mapper tables.
- *---------------------------------------------------------------*/
-
-/*
- * First create an empty table.
- */
-int dm_table_create(struct dm_table **result, int mode,
- unsigned num_targets, struct mapped_device *md);
-
-/*
- * Then call this once for each target.
- */
-int dm_table_add_target(struct dm_table *t, const char *type,
- sector_t start, sector_t len, char *params);
-
-/*
- * Finally call this to make the table ready for use.
- */
-int dm_table_complete(struct dm_table *t);
-
-/*
- * Table reference counting.
- */
-struct dm_table *dm_get_table(struct mapped_device *md);
-void dm_table_get(struct dm_table *t);
-void dm_table_put(struct dm_table *t);
-
-/*
- * Queries
- */
-sector_t dm_table_get_size(struct dm_table *t);
-unsigned int dm_table_get_num_targets(struct dm_table *t);
-int dm_table_get_mode(struct dm_table *t);
-struct mapped_device *dm_table_get_md(struct dm_table *t);
-
-/*
- * Trigger an event.
- */
-void dm_table_event(struct dm_table *t);
-
-/*
- * The device must be suspended before calling this method.
- */
-int dm_swap_table(struct mapped_device *md, struct dm_table *t);
-
-/*
- * Prepare a table for a device that will error all I/O.
- * To make it active, call dm_suspend(), dm_swap_table() then dm_resume().
- */
-int dm_create_error_table(struct dm_table **result, struct mapped_device *md);
-
-#endif /* __KERNEL__ */
-#endif /* _LINUX_DEVICE_MAPPER_H */
+#endif /* _LINUX_DEVICE_MAPPER_H */