summaryrefslogtreecommitdiff
path: root/usr/src/uts/sun4u
diff options
context:
space:
mode:
authorToomas Soome <tsoome@me.com>2020-01-30 14:19:30 +0200
committerToomas Soome <tsoome@me.com>2020-06-15 20:38:26 +0300
commitae121a1498fc4947aa90fa23f0276b59938ed62e (patch)
treeb88e60a95f7ceedfa5fb1d6b034bdd969ee70e29 /usr/src/uts/sun4u
parentb30f02def0d29c7f2398666939cf35cf81f809f1 (diff)
downloadillumos-joyent-ae121a1498fc4947aa90fa23f0276b59938ed62e.tar.gz
12571 pcisch: NULL pointer errors
Reviewed by: Yuri Pankov <ypankov@tintri.com> Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src/uts/sun4u')
-rw-r--r--usr/src/uts/sun4u/io/pci/pci_counters.c36
-rw-r--r--usr/src/uts/sun4u/io/pci/pcisch.c82
-rw-r--r--usr/src/uts/sun4u/pcisch/Makefile19
3 files changed, 56 insertions, 81 deletions
diff --git a/usr/src/uts/sun4u/io/pci/pci_counters.c b/usr/src/uts/sun4u/io/pci/pci_counters.c
index f284d49d33..3ad672f80d 100644
--- a/usr/src/uts/sun4u/io/pci/pci_counters.c
+++ b/usr/src/uts/sun4u/io/pci/pci_counters.c
@@ -24,8 +24,6 @@
* All rights reserved.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/async.h>
#include <sys/sunddi.h>
@@ -69,7 +67,7 @@ pci_create_name_kstat(char *name, pci_ksinfo_t *pp, pci_kev_mask_t *ev)
for (i = 0; i < NUM_OF_PICS; i++) {
pp->pic_name_ksp[i] = pci_create_picN_kstat(name,
- i, pp->pic_shift[i], pp->pic_no_evs, ev);
+ i, pp->pic_shift[i], pp->pic_no_evs, ev);
if (pp->pic_name_ksp[i] == NULL) {
cmn_err(CE_WARN, "pci: unable to create name kstat");
@@ -97,7 +95,7 @@ pci_delete_name_kstat(pci_ksinfo_t *pp)
*/
static kstat_t *
pci_create_picN_kstat(char *mod_name, int pic, int pic_shift,
- int num_ev, pci_kev_mask_t *ev_array)
+ int num_ev, pci_kev_mask_t *ev_array)
{
struct kstat_named *pic_named_data;
int inst = 0;
@@ -107,9 +105,9 @@ pci_create_picN_kstat(char *mod_name, int pic, int pic_shift,
(void) sprintf(pic_name, "pic%d", pic);
if ((picN_ksp = kstat_create(mod_name, inst, pic_name,
- "bus", KSTAT_TYPE_NAMED, num_ev, NULL)) == NULL) {
+ "bus", KSTAT_TYPE_NAMED, num_ev, 0)) == NULL) {
cmn_err(CE_WARN, "%s %s : kstat create failed",
- mod_name, pic_name);
+ mod_name, pic_name);
/*
* It is up to the calling function to delete any kstats
@@ -119,8 +117,7 @@ pci_create_picN_kstat(char *mod_name, int pic, int pic_shift,
return (NULL);
}
- pic_named_data = (struct kstat_named *)
- picN_ksp->ks_data;
+ pic_named_data = (struct kstat_named *)picN_ksp->ks_data;
/*
* Write event names and their associated pcr masks. The
@@ -129,22 +126,20 @@ pci_create_picN_kstat(char *mod_name, int pic, int pic_shift,
*/
for (event = 0; event < num_ev - 1; event++) {
pic_named_data[event].value.ui64 =
- (ev_array[event].pcr_mask << pic_shift);
+ (ev_array[event].pcr_mask << pic_shift);
kstat_named_init(&pic_named_data[event],
- ev_array[event].event_name,
- KSTAT_DATA_UINT64);
+ ev_array[event].event_name, KSTAT_DATA_UINT64);
}
/*
* add the clear_pic entry.
*/
pic_named_data[event].value.ui64 =
- (uint64_t)~(ev_array[event].pcr_mask << pic_shift);
+ (uint64_t)~(ev_array[event].pcr_mask << pic_shift);
kstat_named_init(&pic_named_data[event],
- ev_array[event].event_name,
- KSTAT_DATA_UINT64);
+ ev_array[event].event_name, KSTAT_DATA_UINT64);
kstat_install(picN_ksp);
@@ -171,27 +166,26 @@ kstat_t *pci_create_cntr_kstat(pci_t *pci_p, char *name,
* also contains the %pcr
*/
if ((counters_ksp = kstat_create(name, drv_instance,
- "counters", "bus", KSTAT_TYPE_NAMED,
- num_pics + 1,
- KSTAT_FLAG_WRITABLE)) == NULL) {
+ "counters", "bus", KSTAT_TYPE_NAMED, num_pics + 1,
+ KSTAT_FLAG_WRITABLE)) == NULL) {
cmn_err(CE_WARN, "%s%d counters kstat_create failed",
- drv_name, drv_instance);
+ drv_name, drv_instance);
return (NULL);
}
counters_named_data =
- (struct kstat_named *)(counters_ksp->ks_data);
+ (struct kstat_named *)(counters_ksp->ks_data);
/* initialize the named kstats */
kstat_named_init(&counters_named_data[0],
- "pcr", KSTAT_DATA_UINT64);
+ "pcr", KSTAT_DATA_UINT64);
for (i = 0; i < num_pics; i++) {
(void) sprintf(pic_str, "pic%d", i);
kstat_named_init(&counters_named_data[i+1],
- pic_str, KSTAT_DATA_UINT64);
+ pic_str, KSTAT_DATA_UINT64);
}
/*
diff --git a/usr/src/uts/sun4u/io/pci/pcisch.c b/usr/src/uts/sun4u/io/pci/pcisch.c
index 27916bcc74..5d2981b6c8 100644
--- a/usr/src/uts/sun4u/io/pci/pcisch.c
+++ b/usr/src/uts/sun4u/io/pci/pcisch.c
@@ -647,7 +647,7 @@ pci_intr_dist_cpuid(ib_t *ib_p, ib_ino_info_t *ino_p)
void
pci_cb_teardown(pci_t *pci_p)
{
- cb_t *cb_p = pci_p->pci_cb_p;
+ cb_t *cb_p = pci_p->pci_cb_p;
uint32_t mondo;
if (!pci_buserr_interrupt)
@@ -704,7 +704,7 @@ cb_ino_to_clr_pa(cb_t *cb_p, ib_ino_t ino)
*/
int
cb_remove_xintr(pci_t *pci_p, dev_info_t *dip, dev_info_t *rdip, ib_ino_t ino,
-ib_mondo_t mondo)
+ ib_mondo_t mondo)
{
return (DDI_FAILURE);
}
@@ -1555,8 +1555,8 @@ pci_cb_clear_error(cb_t *cb_p, cb_errstate_t *cb_err_p)
static cb_fm_err_t safari_err_tbl[] = {
SAFARI_BAD_CMD, SCHIZO_CB_ELOG_BAD_CMD, CB_FATAL,
SAFARI_SSM_DIS, SCHIZO_CB_ELOG_SSM_DIS, CB_FATAL,
- SAFARI_BAD_CMD_PCIA, SCHIZO_CB_ELOG_BAD_CMD_PCIA, CB_FATAL,
- SAFARI_BAD_CMD_PCIB, SCHIZO_CB_ELOG_BAD_CMD_PCIB, CB_FATAL,
+ SAFARI_BAD_CMD_PCIA, SCHIZO_CB_ELOG_BAD_CMD_PCIA, CB_FATAL,
+ SAFARI_BAD_CMD_PCIB, SCHIZO_CB_ELOG_BAD_CMD_PCIB, CB_FATAL,
SAFARI_PAR_ERR_INT_PCIB, XMITS_CB_ELOG_PAR_ERR_INT_PCIB, CB_FATAL,
SAFARI_PAR_ERR_INT_PCIA, XMITS_CB_ELOG_PAR_ERR_INT_PCIA, CB_FATAL,
SAFARI_PAR_ERR_INT_SAF, XMITS_CB_ELOG_PAR_ERR_INT_SAF, CB_FATAL,
@@ -1576,7 +1576,7 @@ static cb_fm_err_t safari_err_tbl[] = {
SAFARI_CPU0_PAR_BIDI, SCHIZO_CB_ELOG_CPU0_PAR_BIDI, CB_FATAL,
SAFARI_CPU1_PAR_SINGLE, SCHIZO_CB_ELOG_CPU1_PAR_SINGLE, CB_FATAL,
SAFARI_CPU1_PAR_BIDI, SCHIZO_CB_ELOG_CPU1_PAR_BIDI, CB_FATAL,
- NULL, NULL, NULL,
+ NULL, 0, 0,
};
/*
@@ -1584,7 +1584,7 @@ static cb_fm_err_t safari_err_tbl[] = {
*/
static int
safari_err_handler(dev_info_t *dip, uint64_t fme_ena,
- cb_errstate_t *cb_err_p)
+ cb_errstate_t *cb_err_p)
{
int i;
int fatal = 0;
@@ -1665,7 +1665,7 @@ static cb_fm_err_t jbus_err_tbl[] = {
JBUS_TO_EXP_ERR, TOMATILLO_CB_ELOG_TO_EXP_ERR, CB_NONFATAL,
JBUS_TO_ERR, SCHIZO_CB_ELOG_TO_ERR, CB_NONFATAL,
JBUS_BUS_ERR, SCHIZO_CB_ELOG_BUS_ERR, CB_NONFATAL,
- NULL, NULL, NULL,
+ NULL, 0, 0,
};
/*
@@ -1791,39 +1791,39 @@ static ecc_fm_err_t ecc_err_tbl[] = {
ACC_HANDLE,
PCI_ECC_SEC_PIO_UE, COMMON_ECC_AFSR_E_PIO, CBNINTR_UE,
- PBM_SECONDARY, NULL, NULL, ACC_HANDLE,
+ PBM_SECONDARY, 0, 0, ACC_HANDLE,
PCI_ECC_PIO_CE, COMMON_ECC_AFSR_E_PIO, CBNINTR_CE,
- PBM_PRIMARY, NULL, NULL, ACC_HANDLE,
+ PBM_PRIMARY, 0, 0, ACC_HANDLE,
PCI_ECC_SEC_PIO_CE, COMMON_ECC_AFSR_E_PIO, CBNINTR_CE,
- PBM_SECONDARY, NULL, NULL, ACC_HANDLE,
+ PBM_SECONDARY, 0, 0, ACC_HANDLE,
PCI_ECC_DRD_UE, COMMON_ECC_AFSR_E_DRD, CBNINTR_UE,
- PBM_PRIMARY, NULL, NULL, DMA_HANDLE,
+ PBM_PRIMARY, 0, 0, DMA_HANDLE,
PCI_ECC_SEC_DRD_UE, COMMON_ECC_AFSR_E_DRD, CBNINTR_UE,
- PBM_SECONDARY, NULL, NULL, DMA_HANDLE,
+ PBM_SECONDARY, 0, 0, DMA_HANDLE,
PCI_ECC_DRD_CE, COMMON_ECC_AFSR_E_DRD, CBNINTR_CE,
- PBM_PRIMARY, NULL, NULL, DMA_HANDLE,
+ PBM_PRIMARY, 0, 0, DMA_HANDLE,
PCI_ECC_SEC_DRD_CE, COMMON_ECC_AFSR_E_DRD, CBNINTR_CE,
- PBM_SECONDARY, NULL, NULL, DMA_HANDLE,
+ PBM_SECONDARY, 0, 0, DMA_HANDLE,
PCI_ECC_DWR_UE, COMMON_ECC_AFSR_E_DWR, CBNINTR_UE,
- PBM_PRIMARY, NULL, NULL, DMA_HANDLE,
+ PBM_PRIMARY, 0, 0, DMA_HANDLE,
PCI_ECC_SEC_DWR_UE, COMMON_ECC_AFSR_E_DWR, CBNINTR_UE,
- PBM_SECONDARY, NULL, NULL, DMA_HANDLE,
+ PBM_SECONDARY, 0, 0, DMA_HANDLE,
PCI_ECC_DWR_CE, COMMON_ECC_AFSR_E_DWR, CBNINTR_CE,
- PBM_PRIMARY, NULL, NULL, DMA_HANDLE,
+ PBM_PRIMARY, 0, 0, DMA_HANDLE,
PCI_ECC_SEC_DWR_CE, COMMON_ECC_AFSR_E_DWR, CBNINTR_CE,
- PBM_SECONDARY, NULL, NULL, DMA_HANDLE,
+ PBM_SECONDARY, 0, 0, DMA_HANDLE,
- NULL, NULL, NULL, NULL, NULL, NULL,
+ NULL, 0, 0, 0, 0, 0,
};
/*
@@ -1919,8 +1919,8 @@ pcix_err_tbl_t pcix_split_errs_tbl[] = {
* Tables for the PCI-X error status messages
*/
pcix_err_msg_rec_t pcix_stat_errs[] = {
- {XMITS_PCIX_STAT_SC_DSCRD, "pcix", "discard" },
- {XMITS_PCIX_STAT_SC_TTO, "xmits.pbmx", "tato" },
+ {XMITS_PCIX_STAT_SC_DSCRD, "pcix", "discard" },
+ {XMITS_PCIX_STAT_SC_TTO, "xmits.pbmx", "tato" },
{XMITS_PCIX_STAT_SMMU, "xmits.pbmx", "stmmu" },
{XMITS_PCIX_STAT_SDSTAT, "xmits.pbmx", "stdst" },
{XMITS_PCIX_STAT_CMMU, "xmits.pbmx", "cnmmu" },
@@ -1942,7 +1942,7 @@ pcix_err_tbl_t pcix_stat_errs_tbl =
*/
static int
pcix_lookup_err_msgs(dev_info_t *dip, uint64_t ena, pcix_err_tbl_t t,
- pbm_errstate_t *pbm_err_p)
+ pbm_errstate_t *pbm_err_p)
{
uint32_t err_bits = pbm_err_p->pbm_err & XMITS_PCIX_MSG_INDEX_MASK;
int nerr = 0;
@@ -2093,8 +2093,8 @@ static pbm_fm_err_t pbm_err_tbl[] = {
PCI_SEC_SCH_BUS_UNUSABLE_ERR, SCHIZO_PCI_AFSR_E_UNUSABLE, PBM_SECONDARY,
FM_LOG_PBM, NULL,
- NULL, NULL, NULL,
- NULL, NULL,
+ NULL, 0, 0,
+ 0, NULL,
};
@@ -2283,16 +2283,16 @@ pci_check_error(pci_t *pci_p)
static pbm_fm_err_t pci_pbm_err_tbl[] = {
PCI_PBM_RETRY, SCHIZO_PCI_CTRL_PCI_RTRY_ERR,
- NULL, PBM_NONFATAL, PCI_PBM_TARG_RETRY,
+ 0, PBM_NONFATAL, PCI_PBM_TARG_RETRY,
PCI_PBM_TTO, SCHIZO_PCI_CTRL_PCI_TTO_ERR,
- NULL, PBM_NONFATAL, PCI_PBM_TARG_TTO,
+ 0, PBM_NONFATAL, PCI_PBM_TARG_TTO,
PCI_SCH_BUS_UNUSABLE_ERR, SCHIZO_PCI_CTRL_BUS_UNUSABLE,
- NULL, PBM_NONFATAL, NULL,
+ 0, PBM_NONFATAL, NULL,
- NULL, NULL,
- NULL, NULL, NULL
+ NULL, 0,
+ 0, 0, NULL
};
/*
@@ -2303,7 +2303,7 @@ static pbm_fm_err_t pci_pbm_err_tbl[] = {
*/
int
pci_pbm_err_handler(dev_info_t *dip, ddi_fm_error_t *derr,
- const void *impl_data, int caller)
+ const void *impl_data, int caller)
{
int fatal = 0;
int nonfatal = 0;
@@ -2731,15 +2731,15 @@ pci_format_addr(dev_info_t *dip, uint64_t *afar, uint64_t afsr)
}
static ecc_format_t ecc_format_tbl[] = {
- SCH_REG_UPA, NULL, NULL,
+ SCH_REG_UPA, 0, 0,
SCH_REG_PCIA_REG, SCHIZO_PCI_AFSR_CONF_SPACE, PCI_SIDEA,
SCH_REG_PCIA_MEM, SCHIZO_PCI_AFSR_MEM_SPACE, PCI_SIDEA,
SCH_REG_PCIA_CFGIO, SCHIZO_PCI_AFSR_IO_SPACE, PCI_SIDEA,
SCH_REG_PCIB_REG, SCHIZO_PCI_AFSR_CONF_SPACE, PCI_SIDEB,
SCH_REG_PCIB_MEM, SCHIZO_PCI_AFSR_MEM_SPACE, PCI_SIDEB,
SCH_REG_PCIB_CFGIO, SCHIZO_PCI_AFSR_IO_SPACE, PCI_SIDEB,
- SCH_REG_SAFARI_REGS, NULL, NULL,
- NULL, NULL, NULL,
+ SCH_REG_SAFARI_REGS, 0, 0,
+ 0, 0, 0,
};
/*
@@ -2773,7 +2773,7 @@ pci_format_ecc_addr(dev_info_t *dip, uint64_t *afar, ecc_region_t region)
schizo_base = pa - PBM_CTRL_OFFSET;
- for (i = 0; ecc_format_tbl[i].ecc_region != NULL; i++) {
+ for (i = 0; ecc_format_tbl[i].ecc_region != 0; i++) {
if (region == ecc_format_tbl[i].ecc_region) {
flag = ecc_format_tbl[i].ecc_space;
if (ecc_format_tbl[i].ecc_side != pci_side)
@@ -3083,11 +3083,11 @@ schizo_saf_events[] = {
{"saf_bus_cycles", 0x1}, {"saf_pause_asserted_cycles", 0x2},
{"saf_frn_coherent_cmds", 0x3}, {"saf_frn_coherent_hits", 0x4},
{"saf_my_coherent_cmds", 0x5}, {"saf_my_coherent_hits", 0x6},
- {"saf_frn_io_cmds", 0x7}, {"saf_frn_io_hits", 0x8},
- {"merge_buffer", 0x9}, {"interrupts", 0xa},
- {"csr_pios", 0xc}, {"upa_pios", 0xd},
- {"pcia_pios", 0xe}, {"pcib_pios", 0xf},
- {"saf_pause_seen_cycles", 0x11}, {"dvma_reads", 0x12},
+ {"saf_frn_io_cmds", 0x7}, {"saf_frn_io_hits", 0x8},
+ {"merge_buffer", 0x9}, {"interrupts", 0xa},
+ {"csr_pios", 0xc}, {"upa_pios", 0xd},
+ {"pcia_pios", 0xe}, {"pcib_pios", 0xf},
+ {"saf_pause_seen_cycles", 0x11}, {"dvma_reads", 0x12},
{"dvma_writes", 0x13}, {"saf_orq_full_cycles", 0x14},
{"saf_data_in_cycles", 0x15}, {"saf_data_out_cycles", 0x16},
{"clear_pic", 0x1f}
@@ -3099,7 +3099,7 @@ schizo_saf_events[] = {
*/
pci_kev_mask_t
schizo_pci_events[] = {
- {"dvma_stream_rd", 0x0}, {"dvma_stream_wr", 0x1},
+ {"dvma_stream_rd", 0x0}, {"dvma_stream_wr", 0x1},
{"dvma_const_rd", 0x2}, {"dvma_const_wr", 0x3},
{"dvma_stream_buf_mis", 0x4}, {"dvma_cycles", 0x5},
{"dvma_wd_xfr", 0x6}, {"pio_cycles", 0x7},
@@ -3577,7 +3577,7 @@ pci_reloc_getkey(void)
static void
tm_vmem_free(ddi_dma_impl_t *mp, iommu_t *iommu_p, dvma_addr_t dvma_pg,
- int npages)
+ int npages)
{
uint32_t dur_max, dur_base;
dvma_unbind_req_t *req_p, *req_max_p;
diff --git a/usr/src/uts/sun4u/pcisch/Makefile b/usr/src/uts/sun4u/pcisch/Makefile
index dbfb75fb27..50414236bf 100644
--- a/usr/src/uts/sun4u/pcisch/Makefile
+++ b/usr/src/uts/sun4u/pcisch/Makefile
@@ -40,7 +40,6 @@ UTSBASE = ../..
#
MODULE = pcisch
OBJECTS = $(SCHIZO_PCI_OBJS:%=$(OBJS_DIR)/%)
-LINTS = $(SCHIZO_PCI_OBJS:%.o=$(LINTS_DIR)/%.ln)
ROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
#
@@ -52,7 +51,6 @@ include $(UTSBASE)/sun4u/Makefile.sun4u
# Define targets
#
ALL_TARGET = $(BINARY)
-LINT_TARGET = $(MODULE).lint
INSTALL_TARGET = $(BINARY) $(ROOTMODULE)
#
@@ -65,17 +63,6 @@ CFLAGS += $(CCVERBOSE)
#
CFLAGS += -dalign
-#
-# 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_BAD_PTR_CAST_ALIGN
-LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
-LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
-LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
-LINTTAGS += -erroff=E_STATIC_UNUSED
-
CERRWARN += -_gcc=-Wno-parentheses
CERRWARN += $(CNOWARN_UNINIT)
CERRWARN += -_gcc=-Wno-unused-function
@@ -94,12 +81,6 @@ clean: $(CLEAN_DEPS)
clobber: $(CLOBBER_DEPS)
-lint: $(LINT_DEPS)
-
-modlintlib: $(MODLINTLIB_DEPS)
-
-clean.lint: $(CLEAN_LINT_DEPS)
-
install: $(INSTALL_DEPS)
#