diff --git a/pkg/pmem-device-manager/pmd-lvm.go b/pkg/pmem-device-manager/pmd-lvm.go index 592b2fabe1..ec72579284 100644 --- a/pkg/pmem-device-manager/pmd-lvm.go +++ b/pkg/pmem-device-manager/pmd-lvm.go @@ -105,6 +105,15 @@ func (lvm *pmemLvm) CreateDevice(name string, size uint64, nsmode string) error if _, err := pmemexec.RunCommand("lvcreate", "-L", strSz, "-n", name, vg.name); err != nil { glog.Infof("lvcreate failed with error: %v, trying for next free region", err) } else { + // clear start of device to avoid old data being recognized as file system + device, err := lvm.GetDevice(name) + if err != nil { + return err + } + err = clearDevice(device, false) + if err != nil { + return err + } return nil } } diff --git a/pkg/pmem-device-manager/pmd-ndctl.go b/pkg/pmem-device-manager/pmd-ndctl.go index b93479bf87..d8799659f7 100644 --- a/pkg/pmem-device-manager/pmd-ndctl.go +++ b/pkg/pmem-device-manager/pmd-ndctl.go @@ -64,6 +64,15 @@ func (pmem *pmemNdctl) CreateDevice(name string, size uint64, nsmode string) err } data, _ := ns.MarshalJSON() //nolint: gosec glog.Infof("Namespace created: %s", data) + // clear start of device to avoid old data being recognized as file system + device, err := pmem.GetDevice(name) + if err != nil { + return err + } + err = clearDevice(device, false) + if err != nil { + return err + } return nil }