1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-02-21 05:57:48 +03:00

device: Mark read-only device buffers const.

This commit is contained in:
Alasdair G Kergon 2018-01-10 19:50:53 +00:00
parent c350f96c09
commit 6210c1ec28
11 changed files with 42 additions and 42 deletions

View File

@ -1102,7 +1102,7 @@ next:
}
/* Track the number of outstanding label reads */
static void _process_label_data(int failed, void *context, void *data)
static void _process_label_data(int failed, void *context, const void *data)
{
int *nr_labels_outstanding = context;
@ -1996,7 +1996,7 @@ int lvmcache_add_orphan_vginfo(const char *vgname, struct format_type *fmt)
return _lvmcache_update_vgname(NULL, vgname, vgname, 0, "", fmt);
}
int lvmcache_update_vgname_and_id(struct lvmcache_info *info, struct lvmcache_vgsummary *vgsummary)
int lvmcache_update_vgname_and_id(struct lvmcache_info *info, const struct lvmcache_vgsummary *vgsummary)
{
const char *vgname = vgsummary->vgname;
const char *vgid = (char *)&vgsummary->vgid;

View File

@ -85,7 +85,7 @@ void lvmcache_del(struct lvmcache_info *info);
/* Update things */
int lvmcache_update_vgname_and_id(struct lvmcache_info *info,
struct lvmcache_vgsummary *vgsummary);
const struct lvmcache_vgsummary *vgsummary);
int lvmcache_update_vg(struct volume_group *vg, unsigned precommitted);
void lvmcache_lock_vgname(const char *vgname, int read_only);

View File

@ -506,10 +506,10 @@ struct process_config_file_params {
int ret;
};
static void _process_config_file_buffer(int failed, void *context, void *data)
static void _process_config_file_buffer(int failed, void *context, const void *data)
{
struct process_config_file_params *pcfp = context;
char *fb = data, *fe;
const char *fb = data, *fe;
if (failed) {
pcfp->ret = 0;
@ -552,7 +552,7 @@ int config_file_read_fd(struct dm_pool *mem, struct dm_config_tree *cft, struct
char *fb;
int r = 0;
off_t mmap_offset = 0;
char *buf = NULL;
const char *buf = NULL;
unsigned circular = size2 ? 1 : 0; /* Wrapped around end of disk metadata buffer? */
struct config_source *cs = dm_config_get_custom(cft);
struct process_config_file_params *pcfp;
@ -609,7 +609,7 @@ int config_file_read_fd(struct dm_pool *mem, struct dm_config_tree *cft, struct
if (!(buf = dev_read_circular(dev, (uint64_t) offset, size, (uint64_t) offset2, size2, reason)))
goto_out;
_process_config_file_buffer(0, pcfp, buf);
dm_free(buf);
dm_free((void *)buf);
} else if (!dev_read_callback(dev, (uint64_t) offset, size, reason, _process_config_file_buffer, pcfp))
goto_out;
r = pcfp->ret;

View File

@ -834,7 +834,7 @@ static int _dev_read(struct device *dev, uint64_t offset, size_t len, dev_io_rea
}
/* Returns pointer to read-only buffer. Caller does not free it. */
char *dev_read(struct device *dev, uint64_t offset, size_t len, dev_io_reason_t reason)
const char *dev_read(struct device *dev, uint64_t offset, size_t len, dev_io_reason_t reason)
{
if (!_dev_read(dev, offset, len, reason)) {
log_error("Read from %s failed", dev_name(dev));
@ -881,7 +881,7 @@ int dev_read_buf(struct device *dev, uint64_t offset, size_t len, dev_io_reason_
* Read from 'dev' in 2 distinct regions, denoted by (offset,len) and (offset2,len2).
* Caller is responsible for dm_free().
*/
char *dev_read_circular(struct device *dev, uint64_t offset, size_t len,
const char *dev_read_circular(struct device *dev, uint64_t offset, size_t len,
uint64_t offset2, size_t len2, dev_io_reason_t reason)
{
char *buf = NULL;

View File

@ -37,7 +37,7 @@
* When provided, callback functions are called exactly once.
* If failed is set, data cannot be accessed.
*/
typedef void (*lvm_callback_fn_t)(int failed, void *context, void *data);
typedef void (*lvm_callback_fn_t)(int failed, void *context, const void *data);
/*
* Support for external device info.
@ -63,7 +63,7 @@ struct device_area {
};
struct device_buffer {
void *data; /* Location of start of requested data (inside buf) */
const void *data; /* Location of start of requested data (inside buf) */
/* Private */
void *malloc_address; /* Start of allocated memory */
@ -171,9 +171,9 @@ int dev_fd(struct device *dev);
const char *dev_name(const struct device *dev);
/* Returns a read-only buffer */
char *dev_read(struct device *dev, uint64_t offset, size_t len, dev_io_reason_t reason);
char *dev_read_circular(struct device *dev, uint64_t offset, size_t len,
uint64_t offset2, size_t len2, dev_io_reason_t reason);
const char *dev_read(struct device *dev, uint64_t offset, size_t len, dev_io_reason_t reason);
const char *dev_read_circular(struct device *dev, uint64_t offset, size_t len,
uint64_t offset2, size_t len2, dev_io_reason_t reason);
/* Passes the data to dev_read_callback_fn */
int dev_read_callback(struct device *dev, uint64_t offset, size_t len, dev_io_reason_t reason,

View File

@ -182,7 +182,7 @@ static int _pv_analyze_mda_raw (const struct format_type * fmt,
uint64_t offset2;
size_t size;
size_t size2;
char *buf = NULL;
const char *buf = NULL;
struct device_area *area;
struct mda_context *mdac;
unsigned circular = 0;
@ -273,14 +273,14 @@ static int _pv_analyze_mda_raw (const struct format_type * fmt,
}
}
if (circular)
dm_free(buf);
dm_free((void *)buf);
buf = NULL;
}
r = 1;
out:
if (circular)
dm_free(buf);
dm_free((void *)buf);
if (!dev_close(area->dev))
stack;
return r;
@ -334,7 +334,7 @@ struct process_raw_mda_header_params {
int ret;
};
static void _process_raw_mda_header(int failed, void *context, void *data)
static void _process_raw_mda_header(int failed, void *context, const void *data)
{
struct process_raw_mda_header_params *prmp = context;
struct mda_header *mdah = prmp->mdah;
@ -472,7 +472,7 @@ static struct raw_locn *_find_vg_rlocn(struct device_area *dev_area,
.vgname = FMT_TEXT_ORPHAN_VG_NAME,
};
int rlocn_was_ignored;
char *buf;
const char *buf;
memcpy(&vgsummary_orphan.vgid, FMT_TEXT_ORPHAN_VG_NAME, sizeof(FMT_TEXT_ORPHAN_VG_NAME));
@ -1348,7 +1348,7 @@ static int _scan_file(const struct format_type *fmt, const char *vgname)
struct vgname_from_mda_params{
const struct format_type *fmt;
struct mda_header *mdah;
const struct mda_header *mdah;
struct device_area *dev_area;
int primary_mda;
struct lvmcache_vgsummary *vgsummary;
@ -1360,14 +1360,14 @@ struct vgname_from_mda_params{
int ret;
};
static void _vgname_from_mda_process(int failed, void *context, void *data)
static void _vgname_from_mda_process(int failed, void *context, const void *data)
{
struct vgname_from_mda_params *vfmp = context;
struct mda_header *mdah = vfmp->mdah;
const struct mda_header *mdah = vfmp->mdah;
struct device_area *dev_area = vfmp->dev_area;
struct lvmcache_vgsummary *vgsummary = vfmp->vgsummary;
uint64_t *mda_free_sectors = vfmp->mda_free_sectors;
struct raw_locn *rlocn = mdah->raw_locns;
const struct raw_locn *rlocn = mdah->raw_locns;
uint64_t buffer_size, current_usage;
if (failed) {
@ -1406,15 +1406,15 @@ out:
vfmp->update_vgsummary_fn(0, vfmp->update_vgsummary_context, vfmp->vgsummary);
}
static void _vgname_from_mda_validate(int failed, void *context, void *data)
static void _vgname_from_mda_validate(int failed, void *context, const void *data)
{
struct vgname_from_mda_params *vfmp = context;
char *buffer = data;
const char *buffer = data;
const struct format_type *fmt = vfmp->fmt;
struct mda_header *mdah = vfmp->mdah;
const struct mda_header *mdah = vfmp->mdah;
struct device_area *dev_area = vfmp->dev_area;
struct lvmcache_vgsummary *vgsummary = vfmp->vgsummary;
struct raw_locn *rlocn = mdah->raw_locns;
const struct raw_locn *rlocn = mdah->raw_locns;
unsigned len = 0;
char buf[NAME_LEN + 1] __attribute__((aligned(8)));
@ -1471,11 +1471,11 @@ out:
}
int vgname_from_mda(const struct format_type *fmt,
struct mda_header *mdah, int primary_mda, struct device_area *dev_area,
const struct mda_header *mdah, int primary_mda, struct device_area *dev_area,
struct lvmcache_vgsummary *vgsummary, uint64_t *mda_free_sectors,
lvm_callback_fn_t update_vgsummary_fn, void *update_vgsummary_context)
{
struct raw_locn *rlocn;
const struct raw_locn *rlocn;
struct vgname_from_mda_params *vfmp;
if (mda_free_sectors)

View File

@ -43,7 +43,7 @@ struct import_vgsummary_params {
int ret;
};
static void _import_vgsummary(int failed, void *context, void *data)
static void _import_vgsummary(int failed, void *context, const void *data)
{
struct import_vgsummary_params *ivsp = context;
struct text_vg_version_ops **vsn;
@ -150,7 +150,7 @@ struct import_vg_params {
char **desc;
};
static void _import_vg(int failed, void *context, void *data)
static void _import_vg(int failed, void *context, const void *data)
{
struct import_vg_params *ivp = context;
struct text_vg_version_ops **vsn;

View File

@ -107,7 +107,7 @@ struct mda_context {
#define MDA_ORIGINAL_ALIGNMENT 512 /* Original alignment used for start of VG metadata content */
#define MDA_ALIGNMENT 4096 /* Default alignment in bytes since 2.02.177 for start of VG metadata content. */
int vgname_from_mda(const struct format_type *fmt, struct mda_header *mdah, int primary_mda,
int vgname_from_mda(const struct format_type *fmt, const struct mda_header *mdah, int primary_mda,
struct device_area *dev_area, struct lvmcache_vgsummary *vgsummary,
uint64_t *mda_free_sectors,
lvm_callback_fn_t update_vgsummary_callback_fn, void *update_vgsummary_callback_context);

View File

@ -336,10 +336,10 @@ struct process_mda_header_params {
int ret;
};
static void _process_vgsummary(int failed, void *context, void *data)
static void _process_vgsummary(int failed, void *context, const void *data)
{
struct process_mda_header_params *pmp = context;
struct lvmcache_vgsummary *vgsummary = data;
const struct lvmcache_vgsummary *vgsummary = data;
--pmp->umb->nr_outstanding_mdas;
@ -357,10 +357,10 @@ out:
stack;
}
static void _process_mda_header(int failed, void *context, void *data)
static void _process_mda_header(int failed, void *context, const void *data)
{
struct process_mda_header_params *pmp = context;
struct mda_header *mdah = data;
const struct mda_header *mdah = data;
struct update_mda_baton *umb = pmp->umb;
const struct format_type *fmt = umb->label->labeller->fmt;
struct metadata_area *mda = pmp->mda;

View File

@ -131,7 +131,7 @@ struct find_labeller_params {
int ret;
};
static void _set_label_read_result(int failed, void *context, void *data)
static void _set_label_read_result(int failed, void *context, const void *data)
{
struct find_labeller_params *flp = context;
struct label **result = flp->result;
@ -154,17 +154,17 @@ out:
flp->process_label_data_fn(0, flp->process_label_data_context, NULL);
}
static void _find_labeller(int failed, void *context, void *data)
static void _find_labeller(int failed, void *context, const void *data)
{
struct find_labeller_params *flp = context;
char *readbuf = data;
const char *readbuf = data;
struct device *dev = flp->dev;
uint64_t scan_sector = flp->scan_sector;
struct label **result = flp->result;
char labelbuf[LABEL_SIZE] __attribute__((aligned(8)));
struct labeller_i *li;
struct labeller *l = NULL; /* Set when a labeller claims the label */
struct label_header *lh;
const struct label_header *lh;
struct lvmcache_info *info;
uint64_t sector;
@ -246,7 +246,7 @@ int label_remove(struct device *dev)
struct labeller_i *li;
struct label_header *lh;
struct lvmcache_info *info;
char *readbuf = NULL;
const char *readbuf = NULL;
memset(labelbuf, 0, LABEL_SIZE);

View File

@ -97,7 +97,7 @@ int label_remove(struct device *dev);
int label_read(struct device *dev, struct label **result,
uint64_t scan_sector);
int label_read_callback(struct dm_pool *mem, struct device *dev, uint64_t scan_sector,
lvm_callback_fn_t process_label_data_fn, void *process_label_data_context);
lvm_callback_fn_t process_label_data_fn, void *process_label_data_context);
int label_write(struct device *dev, struct label *label);
struct label *label_create(struct labeller *labeller);
void label_destroy(struct label *label);