Update atomic mode support check

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
This commit is contained in:
Robert Baldyga 2020-12-11 22:44:55 +01:00
parent 1810010093
commit bcd6f4831c
2 changed files with 17 additions and 5 deletions

View File

@ -3,6 +3,8 @@
* SPDX-License-Identifier: BSD-3-Clause-Clear * SPDX-License-Identifier: BSD-3-Clause-Clear
*/ */
#if defined(CAS_NVME_PARTIAL)
#include "cas_cache.h" #include "cas_cache.h"
#include "utils_nvme.h" #include "utils_nvme.h"
#include "utils_blk.h" #include "utils_blk.h"
@ -62,3 +64,5 @@ out:
cas_vm_munmap(buffer, sizeof(*ns)); cas_vm_munmap(buffer, sizeof(*ns));
return ret; return ret;
} }
#endif

View File

@ -32,28 +32,28 @@ NVME_FULL = 0
SLES ?= $(shell cat /etc/SuSE-release 2>/dev/null) SLES ?= $(shell cat /etc/SuSE-release 2>/dev/null)
ifneq ($(SLES),) ifneq ($(SLES),)
EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME_IOCTL EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME_IOCTL
EXTRA_CFLAGS += -DCAS_NVME_PARTIAL
EXTRA_CFLAGS += -DCAS_SLES EXTRA_CFLAGS += -DCAS_SLES
SLES_VERSION := $(shell cat /etc/os-release |\ SLES_VERSION := $(shell cat /etc/os-release |\
sed -n 's/VERSION="\([0-9]\+\)-\(.\+\)"/\1\2/p') sed -n 's/VERSION="\([0-9]\+\)-\(.\+\)"/\1\2/p')
EXTRA_CFLAGS += -DCAS_SLES$(SLES_VERSION) EXTRA_CFLAGS += -DCAS_SLES$(SLES_VERSION)
INCDIR = "" INCDIR = ""
NVME_PARTIAL = 1
endif endif
ifeq ($(call check_header,$(INCDIR)/uapi/nvme.h), 1) ifeq ($(call check_header,$(INCDIR)/uapi/nvme.h), 1)
EXTRA_CFLAGS += -DCAS_UAPI_NVME_IOCTL EXTRA_CFLAGS += -DCAS_UAPI_NVME_IOCTL
EXTRA_CFLAGS += -DCAS_UAPI_NVME EXTRA_CFLAGS += -DCAS_UAPI_NVME
EXTRA_CFLAGS += -DCAS_NVME_PARTIAL NVME_PARTIAL = 1
endif endif
ifeq ($(call check_header,$(INCDIR)/uapi/linux/nvme.h), 1) ifeq ($(call check_header,$(INCDIR)/uapi/linux/nvme.h), 1)
EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME
EXTRA_CFLAGS += -DCAS_NVME_PARTIAL NVME_PARTIAL = 1
endif endif
ifeq ($(call check_header,$(INCDIR)/uapi/linux/nvme_ioctl.h), 1) ifeq ($(call check_header,$(INCDIR)/uapi/linux/nvme_ioctl.h), 1)
EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME_IOCTL EXTRA_CFLAGS += -DCAS_UAPI_LINUX_NVME_IOCTL
EXTRA_CFLAGS += -DCAS_NVME_PARTIAL NVME_PARTIAL = 1
ifeq ($(shell cat /etc/redhat-release 2>/dev/null | grep "\(Red Hat\|CentOS\) [a-zA-Z ]* 7\.[45]" | wc -l), 1) ifeq ($(shell cat /etc/redhat-release 2>/dev/null | grep "\(Red Hat\|CentOS\) [a-zA-Z ]* 7\.[45]" | wc -l), 1)
NVME_FULL = 1 NVME_FULL = 1
endif endif
@ -62,10 +62,18 @@ endif
KERNEL_VERSION = $(shell echo $(KERNELRELEASE) | cut -d'.' -f1) KERNEL_VERSION = $(shell echo $(KERNELRELEASE) | cut -d'.' -f1)
KERNEL_MAJOR = $(shell echo $(KERNELRELEASE) | cut -d'.' -f2) KERNEL_MAJOR = $(shell echo $(KERNELRELEASE) | cut -d'.' -f2)
ifeq ($(shell expr $(KERNEL_VERSION) \>= 4 \& $(KERNEL_MAJOR) \> 11),1) ifeq ($(shell expr $(KERNEL_VERSION) \> 4 \| $(KERNEL_VERSION) \== 4 \& $(KERNEL_MAJOR) \> 11),1)
NVME_FULL = 0 NVME_FULL = 0
endif endif
ifeq ($(shell expr $(KERNEL_VERSION) \> 5 \| $(KERNEL_VERSION) \== 5 \& $(KERNEL_MAJOR) \> 7),1)
NVME_PARTIAL = 0
endif
ifeq ($(NVME_PARTIAL),1)
EXTRA_CFLAGS += -DCAS_NVME_PARTIAL
endif
ifeq ($(NVME_FULL),1) ifeq ($(NVME_FULL),1)
EXTRA_CFLAGS += -DCAS_NVME_FULL EXTRA_CFLAGS += -DCAS_NVME_FULL
endif endif