Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 1 Feb 2020 16:57:04 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r357366 - in head/sys: conf modules/tpm
Message-ID:  <202002011657.011Gv4Bp020121@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sat Feb  1 16:57:04 2020
New Revision: 357366
URL: https://svnweb.freebsd.org/changeset/base/357366

Log:
  Revert r357349, since the clang 10.0.0 warning was actually correct, and
  the ! operator should have been a ~ instead:
  
    Merge r357348 from the clang 10.0.0 import branch:
  
    Disable new clang 10.0.0 warnings about converting the result of
    shift operations to a boolean in tpm(4):
  
    sys/dev/tpm/tpm_crb.c:301:32: error: converting the result of '<<' to a boolean; did you mean '(1 << (0)) != 0'? [-Werror,-Wint-in-bool-context]
  	  WR4(sc, TPM_CRB_CTRL_CANCEL, !TPM_CRB_CTRL_CANCEL_CMD);
  					^
    sys/dev/tpm/tpm_crb.c:73:34: note: expanded from macro 'TPM_CRB_CTRL_CANCEL_CMD'
    #define TPM_CRB_CTRL_CANCEL_CMD         BIT(0)
  					  ^
    sys/dev/tpm/tpm20.h:60:19: note: expanded from macro 'BIT'
    #define BIT(x) (1 << (x))
  		    ^
  
    Such warnings can be useful in C++ contexts, but not so much in kernel
    drivers, where this type of bit twiddling is commonplace.  So disable
    it for this case.
  
  Noticed by:	cem
  MFC after:	3 days

Modified:
  head/sys/conf/files.amd64
  head/sys/conf/kern.mk
  head/sys/modules/tpm/Makefile
Directory Properties:
  head/   (props changed)

Modified: head/sys/conf/files.amd64
==============================================================================
--- head/sys/conf/files.amd64	Sat Feb  1 11:31:45 2020	(r357365)
+++ head/sys/conf/files.amd64	Sat Feb  1 16:57:04 2020	(r357366)
@@ -323,8 +323,7 @@ dev/syscons/scvesactl.c		optional	sc vga vesa
 dev/syscons/scvgarndr.c		optional	sc vga
 dev/tpm/tpm.c			optional	tpm
 dev/tpm/tpm20.c		optional	tpm
-dev/tpm/tpm_crb.c		optional	tpm acpi \
-	compile-with "${NORMAL_C} ${NO_WINT_IN_BOOL_CONTEXT}"
+dev/tpm/tpm_crb.c		optional	tpm acpi
 dev/tpm/tpm_tis.c		optional	tpm acpi
 dev/tpm/tpm_acpi.c		optional	tpm acpi
 dev/tpm/tpm_isa.c		optional	tpm isa

Modified: head/sys/conf/kern.mk
==============================================================================
--- head/sys/conf/kern.mk	Sat Feb  1 11:31:45 2020	(r357365)
+++ head/sys/conf/kern.mk	Sat Feb  1 16:57:04 2020	(r357366)
@@ -37,9 +37,6 @@ CWARNEXTRA+=	-Wno-error-shift-negative-value
 .if ${COMPILER_VERSION} >= 40000
 CWARNEXTRA+=	-Wno-address-of-packed-member
 .endif
-.if ${COMPILER_VERSION} >= 100000
-NO_WINT_IN_BOOL_CONTEXT=	-Wno-int-in-bool-context
-.endif
 .endif
 
 .if ${COMPILER_TYPE} == "gcc"

Modified: head/sys/modules/tpm/Makefile
==============================================================================
--- head/sys/modules/tpm/Makefile	Sat Feb  1 11:31:45 2020	(r357365)
+++ head/sys/modules/tpm/Makefile	Sat Feb  1 16:57:04 2020	(r357366)
@@ -11,5 +11,3 @@ SRCS+=	tpm_isa.c tpm_acpi.c isa_if.h opt_acpi.h acpi_i
 SRCS+=	tpm20.c tpm_crb.c tpm_tis.c opt_tpm.h
 
 .include <bsd.kmod.mk>
-
-CWARNFLAGS.tpm_crb.c+=	${NO_WINT_IN_BOOL_CONTEXT}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202002011657.011Gv4Bp020121>