break;
}
- if (cfg.data_len)
- buf = malloc(cfg.data_len);
+ if (cfg.data_len) {
+ if (posix_memalign(&buf, getpagesize(), cfg.data_len))
+ exit(ENOMEM);
+ memset(buf, 0, cfg.data_len);
+ }
err = nvme_get_feature(fd, cfg.namespace_id, cfg.feature_id, cfg.sel, cfg.cdw11,
cfg.data_len, buf, &result);
}
if (cfg.feature_id == NVME_FEAT_LBA_RANGE)
cfg.data_len = 4096;
- if (cfg.data_len)
- buf = malloc(cfg.data_len);
+ if (cfg.data_len) {
+ if (posix_memalign(&buf, getpagesize(), cfg.data_len))
+ exit(ENOMEM);
+ memset(buf, 0, cfg.data_len);
+ }
+
if (buf) {
if (strlen(cfg.file)) {
ffd = open(cfg.file, O_RDONLY);
return EINVAL;
}
- buffer = malloc(cfg.data_size);
- if (!buffer)
+ if (posix_memalign(&buffer, getpagesize(), cfg.data_size))
return ENOMEM;
+ memset(buffer, 0, cfg.data_size);
if (cfg.metadata_size) {
mbuffer = malloc(cfg.metadata_size);