# Be quiet and do not echo the cmd Q = @ # Try to use bash as shell for make SHELL := $(shell if [ -x /bin/bash ]; then echo /bin/bash; else echo /bin/sh; fi) # Compiler related stuff CC = gcc LD = $(Q)echo -e " LD\t$@" && $(CCACHE) $(CROSS_COMPILE)$(CC) CCNQ = $(CCACHE) $(CROSS_COMPILE)$(CC) CCQ = $(Q)echo -e " CC\t$<" && $(CCNQ) ifeq ($(DEBUG), 1) STRIP = $(Q)true else STRIP = $(Q)echo -e " STRIP\t$@" && $(CROSS_COMPILE)strip endif # sparse related ifeq ($(C), 1) CHECK = $(Q)echo -e " CHECK\t$<" && sparse else CHECK = $(Q)true endif # Flex/bison related LEX = $(Q)echo -e " LEX\t$<" && flex YAAC = $(Q)echo -e " YAAC\t$<" && bison # Installation related INST = echo -e " INST\t$(1)" && install -d $(2) && \ install --mode=644 -DC $(1) $(2)/$(shell basename $(1)) ifeq ("$(origin PREFIX)", "command line") INSTX = echo -e " INST\t$(1)" && install -d $(2) && \ install -C $(1) $(2)/$(shell basename $(1)) else INSTX = echo -e " INST\t$(1)" && install -C $(1) $(2)/$(shell basename $(1)) endif MKDIR = echo -e " MKDIR\t$(1)" && mkdir -p $(1) RM = echo -e " RM\t$(1)" && rm -rf $(1) RMDIR = echo -e " RM\t$(1)" && rmdir --ignore-fail-on-non-empty $(1) 2> /dev/null || true GZIP = gzip --best -c # Git related GIT_LAST_TAG = git describe --abbrev=0 v$(VERSION_SHORT)^ GIT_ARCHIVE = git archive --prefix=netsniff-ng-$(VERSION_SHORT)/ v$(VERSION_SHORT) | \ $(1) > ../netsniff-ng-$(VERSION_SHORT).tar.$(2) GIT_TAG = git tag -a v$(VERSION_SHORT) -s -m "$(VERSION_SHORT) release" GIT_LOG = git shortlog -n $(shell $(GIT_LAST_TAG))..HEAD GIT_REM = git ls-files -o | xargs rm -rf GIT_PEOPLE = git log --no-merges $(shell $(GIT_LAST_TAG))..HEAD | grep Author: | cut -d: -f2 | \ cut -d\< -f1 | sort | uniq -c | sort -nr GIT_VERSION = git describe --always # GPG related GPG_SIGN = gpg -a --output ../netsniff-ng-$(VERSION_SHORT).tar.$(1).sign --detach-sig \ ../netsniff-ng-$(VERSION_SHORT).tar.$(1) 157a37e3945'>treecommitdiff
diff options
context:
space:
mode:
authorKashyap Desai <kashyap.desai@broadcom.com>2016-10-21 06:33:32 -0700
committerMartin K. Petersen <martin.petersen@oracle.com>2016-10-24 21:31:43 -0400
commit1e793f6fc0db920400574211c48f9157a37e3945 (patch)
tree5c2b23a174bd21b90c81e34f7ebfe265e8468077
parent77f18a87186a87cab2a027335758a7244896084c (diff)
scsi: megaraid_sas: Fix data integrity failure for JBOD (passthrough) devices
Commit 02b01e010afe ("megaraid_sas: return sync cache call with success") modified the driver to successfully complete SYNCHRONIZE_CACHE commands without passing them to the controller. Disk drive caches are only explicitly managed by controller firmware when operating in RAID mode. So this commit effectively disabled writeback cache flushing for any drives used in JBOD mode, leading to data integrity failures. [mkp: clarified patch description] Fixes: 02b01e010afeeb49328d35650d70721d2ca3fd59 CC: stable@vger.kernel.org Signed-off-by: Kashyap Desai <kashyap.desai@broadcom.com> Signed-off-by: Sumit Saxena <sumit.saxena@broadcom.com> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Reviewed-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Ewan D. Milne <emilne@redhat.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat