Print this page
11506 smatch resync

@@ -21,18 +21,12 @@
 
 #
 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
-# Copyright (c) 2018, Joyent, Inc.
-
+# Copyright 2019 Joyent, Inc.
 #
-#       This makefile drives the production of the generic
-#       unix kernel module.
-#
-#       x86 implementation architecture dependent
-#
 
 #
 #       Path to the base of the uts directory tree (usually /usr/src/uts).
 #
 UTSBASE = ../..

@@ -44,13 +38,10 @@
 GENUNIX         = $(OBJS_DIR)/$(MODULE)
 
 OBJECTS         = $(GENUNIX_OBJS:%=$(OBJS_DIR)/%) \
                   $(NOT_YET_KMODS:%=$(OBJS_DIR)/%)
 
-LINTS           = $(GENUNIX_OBJS:%.o=$(LINTS_DIR)/%.ln) \
-                  $(NOT_YET_KMODS:%.o=$(LINTS_DIR)/%.ln)
-
 ROOTMODULE      = $(ROOT_KERN_DIR)/$(MODULE)
 
 LIBGEN          = $(OBJS_DIR)/libgenunix.so
 LIBSTUBS        = $(GENSTUBS_OBJS:%=$(OBJS_DIR)/%)
 

@@ -61,11 +52,10 @@
 
 #
 #       Define targets
 #
 ALL_TARGET      = $(LIBGEN) $(GENUNIX)
-LINT_TARGET     = $(MODULE).lint
 INSTALL_TARGET  = $(LIBGEN) $(GENUNIX) $(ROOTMODULE)
 
 #
 #       Overrides
 #

@@ -86,22 +76,10 @@
 CPPFLAGS        += -I$(SRC)/common
 CPPFLAGS        += -I$(SRC)/uts/common/fs/zfs
 
 CPPFLAGS        += -I$(UTSBASE)/i86pc
 
-#
-# For now, disable these lint checks; maintainers should endeavor
-# to investigate and remove these for maximum lint coverage.
-# Please do not carry these forward to new Makefiles.
-#
-LINTTAGS        += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS        += -erroff=E_BAD_PTR_CAST_ALIGN
-LINTTAGS        += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
-LINTTAGS        += -erroff=E_STATIC_UNUSED
-LINTTAGS        += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS        += -erroff=E_ASSIGN_NARROW_CONV
-
 CERRWARN        += -_gcc=-Wno-unused-label
 CERRWARN        += -_gcc=-Wno-unused-variable
 CERRWARN        += -_gcc=-Wno-unused-value
 CERRWARN        += -_gcc=-Wno-unused-function
 CERRWARN        += -_gcc=-Wno-parentheses

@@ -109,10 +87,13 @@
 CERRWARN        += -_gcc=-Wno-type-limits
 CERRWARN        += -_gcc=-Wno-uninitialized
 CERRWARN        += -_gcc=-Wno-clobbered
 CERRWARN        += -_gcc=-Wno-empty-body
 
+# very hairy
+$(OBJS_DIR)/u8_textprep.o := SMATCH=off
+
 # false positives
 SMOFF += index_overflow
 $(OBJS_DIR)/seg_vn.o := SMOFF += deref_check
 $(OBJS_DIR)/ddi_intr_irm.o := SMOFF += deref_check
 

@@ -128,16 +109,10 @@
 
 # definitely wrong
 $(OBJS_DIR)/acl_common.o := SMOFF += or_vs_and
 
 #
-# Ensure that lint sees 'struct cpu' containing a fully declared
-# embedded 'struct machcpu'
-#
-LINTFLAGS       += -D_MACHDEP -I../../i86pc
-
-#
 #       Default build targets.
 #
 .KEEP_STATE:
 
 def:            $(DEF_DEPS)

@@ -146,16 +121,10 @@
 
 clean:          $(CLEAN_DEPS)
 
 clobber:        $(CLOBBER_DEPS)
 
-lint:           $(LINT_DEPS)
-
-modlintlib:     $(MODLINTLIB_DEPS)
-
-clean.lint:     $(CLEAN_LINT_DEPS)
-
 install:        $(INSTALL_DEPS)
 
 # Due to what seems to be an issue in GCC 4 generated DWARF containing
 # symbolic relocations against non-allocatable .debug sections, libgenunix.so
 # must be built from a stripped object, thus we create an intermediary

@@ -188,10 +157,5 @@
 #       Software workarounds for hardware "features".
 #
 include $(UTSBASE)/i86pc/Makefile.workarounds
 
 ALL_DEFS += $(WORKAROUND_DEFS)
-
-#
-# Override.
-#
-$(MODULE).lint := GEN_LINT_LIB =