summaryrefslogtreecommitdiffstats
path: root/lib/activate
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2011-11-18 19:31:09 +0000
committerZdenek Kabelac <zkabelac@redhat.com>2011-11-18 19:31:09 +0000
commit900f5f8187030573502818dbb4d0c579164a2b28 (patch)
tree3ff6198ee83027fb48b748ddd33429e1e5a012de /lib/activate
parent8deeeb07ea7b6c178791e7b57d45d8484b87b28a (diff)
downloadlvm2-900f5f8187030573502818dbb4d0c579164a2b28.tar.gz
lvm2-900f5f8187030573502818dbb4d0c579164a2b28.tar.xz
lvm2-900f5f8187030573502818dbb4d0c579164a2b28.zip
Replace dynamic buffer allocations for PATH_MAX
Use static buffer instead of stack allocated buffer. This reduces stack size usage of lvm tool and the change is very simple. Since the whole library is not thread safe - it should not add any new problems - and if there will be some conversion it's easy to convert this to use some preallocated buffer.
Diffstat (limited to 'lib/activate')
-rw-r--r--lib/activate/activate.c4
-rw-r--r--lib/activate/fs.c12
2 files changed, 8 insertions, 8 deletions
diff --git a/lib/activate/activate.c b/lib/activate/activate.c
index 0541c559..c0e8beae 100644
--- a/lib/activate/activate.c
+++ b/lib/activate/activate.c
@@ -38,7 +38,7 @@
int lvm1_present(struct cmd_context *cmd)
{
- char path[PATH_MAX];
+ static char path[PATH_MAX];
if (dm_snprintf(path, sizeof(path), "%s/lvm/global", cmd->proc_dir)
< 0) {
@@ -294,7 +294,7 @@ static int _passes_activation_filter(struct cmd_context *cmd,
const struct dm_config_node *cn;
const struct dm_config_value *cv;
const char *str;
- char path[PATH_MAX];
+ static char path[PATH_MAX];
if (!(cn = find_config_tree_node(cmd, "activation/volume_list"))) {
log_verbose("activation/volume_list configuration setting "
diff --git a/lib/activate/fs.c b/lib/activate/fs.c
index f9eb2808..2edd81e6 100644
--- a/lib/activate/fs.c
+++ b/lib/activate/fs.c
@@ -36,7 +36,7 @@ static int _fs_create = 0;
static int _mk_dir(const char *dev_dir, const char *vg_name)
{
- char vg_path[PATH_MAX];
+ static char vg_path[PATH_MAX];
mode_t old_umask;
if (dm_snprintf(vg_path, sizeof(vg_path), "%s%s",
@@ -67,7 +67,7 @@ static int _mk_dir(const char *dev_dir, const char *vg_name)
static int _rm_dir(const char *dev_dir, const char *vg_name)
{
- char vg_path[PATH_MAX];
+ static char vg_path[PATH_MAX];
if (dm_snprintf(vg_path, sizeof(vg_path), "%s%s",
dev_dir, vg_name) == -1) {
@@ -87,7 +87,7 @@ static int _rm_dir(const char *dev_dir, const char *vg_name)
static void _rm_blks(const char *dir)
{
const char *name;
- char path[PATH_MAX];
+ static char path[PATH_MAX];
struct dirent *dirent;
struct stat buf;
DIR *d;
@@ -124,8 +124,8 @@ static void _rm_blks(const char *dir)
static int _mk_link(const char *dev_dir, const char *vg_name,
const char *lv_name, const char *dev, int check_udev)
{
- char lv_path[PATH_MAX], link_path[PATH_MAX], lvm1_group_path[PATH_MAX];
- char vg_path[PATH_MAX];
+ static char lv_path[PATH_MAX], link_path[PATH_MAX], lvm1_group_path[PATH_MAX];
+ static char vg_path[PATH_MAX];
struct stat buf, buf_lp;
if (dm_snprintf(vg_path, sizeof(vg_path), "%s%s",
@@ -226,7 +226,7 @@ static int _rm_link(const char *dev_dir, const char *vg_name,
const char *lv_name, int check_udev)
{
struct stat buf;
- char lv_path[PATH_MAX];
+ static char lv_path[PATH_MAX];
if (dm_snprintf(lv_path, sizeof(lv_path), "%s%s/%s",
dev_dir, vg_name, lv_name) == -1) {