Index: rf_alloclist.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_alloclist.c,v retrieving revision 1.26 diff -u -u -r1.26 rf_alloclist.c --- rf_alloclist.c 15 Mar 2009 17:17:23 -0000 1.26 +++ rf_alloclist.c 9 Feb 2019 03:12:50 -0000 @@ -125,6 +125,6 @@ RF_AllocListElem_t *p; p = pool_get(&rf_pools.alloclist, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_AllocListElem_t)); + memset(p, 0, sizeof(*p)); return (p); } Index: rf_chaindecluster.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_chaindecluster.c,v retrieving revision 1.15 diff -u -u -r1.15 rf_chaindecluster.c --- rf_chaindecluster.c 16 Nov 2006 01:33:23 -0000 1.15 +++ rf_chaindecluster.c 9 Feb 2019 03:12:50 -0000 @@ -70,7 +70,7 @@ RF_RowCol_t i; /* create a Chained Declustering configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_ChaindeclusterConfigInfo_t), (RF_ChaindeclusterConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; Index: rf_compat32.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_compat32.c,v retrieving revision 1.4 diff -u -u -r1.4 rf_compat32.c --- rf_compat32.c 6 Feb 2019 15:39:41 -0000 1.4 +++ rf_compat32.c 9 Feb 2019 03:12:50 -0000 @@ -88,7 +88,7 @@ RF_Config_t32 *k_cfg32; int rv; - RF_Malloc(k_cfg32, sizeof(RF_Config_t32), (RF_Config_t32 *)); + k_cfg32 = RF_Malloc(sizeof(*k_cfg32)); if (k_cfg32 == NULL) return ENOMEM; @@ -98,7 +98,7 @@ return ENOMEM; } - RF_Malloc(k_cfg, sizeof(RF_Config_t), (RF_Config_t *)); + k_cfg = RF_Malloc(sizeof(*k_cfg)); if (k_cfg == NULL) { RF_Free(k_cfg32, sizeof(RF_Config_t32)); RF_Free(k_cfg, sizeof(RF_Config_t)); @@ -132,8 +132,7 @@ int retcode; void *ucfgp = NETBSD32PTR64(*(netbsd32_pointer_t *)data); - RF_DeviceConfig_t *d_cfg; - RF_Malloc(d_cfg, sizeof(RF_DeviceConfig_t), (RF_DeviceConfig_t *)); + RF_DeviceConfig_t *d_cfg = RF_Malloc(sizeof(*d_cfg)); if (d_cfg == NULL) return ENOMEM; Index: rf_compat50.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_compat50.c,v retrieving revision 1.8 diff -u -u -r1.8 rf_compat50.c --- rf_compat50.c 5 Feb 2019 23:28:02 -0000 1.8 +++ rf_compat50.c 9 Feb 2019 03:12:50 -0000 @@ -123,18 +123,18 @@ /* data points to a pointer to the configuration structure */ u50_cfg = *((RF_Config50_t **) data); - RF_Malloc(k50_cfg, sizeof(RF_Config50_t), (RF_Config50_t *)); + k50_cfg = RF_Malloc(sizeof(*k50_cfg)); if (k50_cfg == NULL) return ENOMEM; - error = copyin(u50_cfg, k50_cfg, sizeof(RF_Config50_t)); + error = copyin(u50_cfg, k50_cfg, sizeof(*k50_cfg)); if (error) { - RF_Free(k50_cfg, sizeof(RF_Config50_t)); + RF_Free(k50_cfg, sizeof(*k50_cfg)); return error; } - RF_Malloc(k_cfg, sizeof(RF_Config_t), (RF_Config_t *)); + k_cfg = RF_Malloc(sizeof(*k_cfg)); if (k_cfg == NULL) { - RF_Free(k50_cfg, sizeof(RF_Config50_t)); + RF_Free(k50_cfg, sizeof(*k50_cfg)); return ENOMEM; } @@ -171,7 +171,7 @@ k_cfg->layoutSpecific = k50_cfg->layoutSpecific; k_cfg->force = k50_cfg->force; - RF_Free(k50_cfg, sizeof(RF_Config50_t)); + RF_Free(k50_cfg, sizeof(*k50_cfg)); return rf_construct(rs, k_cfg); } @@ -185,7 +185,7 @@ if (!raidPtr->valid) return ENODEV; - RF_Malloc(d_cfg, sizeof(RF_DeviceConfig50_t), (RF_DeviceConfig50_t *)); + d_cfg = RF_Malloc(sizeof(*d_cfg)); if (d_cfg == NULL) return ENOMEM; @@ -211,10 +211,10 @@ for (j = d_cfg->cols, i = 0; i < d_cfg->nspares; i++, j++) rf_disk_to_disk50(&d_cfg->spares[i], &raidPtr->Disks[j]); - error = copyout(d_cfg, *ucfgp, sizeof(RF_DeviceConfig50_t)); + error = copyout(d_cfg, *ucfgp, sizeof(**ucfgp)); out: - RF_Free(d_cfg, sizeof(RF_DeviceConfig50_t)); + RF_Free(d_cfg, sizeof(*d_cfg)); return error; } Index: rf_compat80.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_compat80.c,v retrieving revision 1.11 diff -u -u -r1.11 rf_compat80.c --- rf_compat80.c 5 Feb 2019 23:28:02 -0000 1.11 +++ rf_compat80.c 9 Feb 2019 03:12:50 -0000 @@ -119,7 +119,7 @@ RF_ProgressInfo_t info, **infoPtr = data; rf_check_recon_status_ext(raidPtr, &info); - return copyout(&info, *infoPtr, sizeof info); + return copyout(&info, *infoPtr, sizeof(info)); } static int @@ -128,7 +128,7 @@ RF_ProgressInfo_t info, **infoPtr = data; rf_check_parityrewrite_status_ext(raidPtr, &info); - return copyout(&info, *infoPtr, sizeof info); + return copyout(&info, *infoPtr, sizeof(info)); } static int @@ -137,7 +137,7 @@ RF_ProgressInfo_t info, **infoPtr = data; rf_check_copyback_status_ext(raidPtr, &info); - return copyout(&info, *infoPtr, sizeof info); + return copyout(&info, *infoPtr, sizeof(info)); } static void @@ -145,7 +145,7 @@ { /* Be sure the padding areas don't have kernel memory. */ - memset(disk80, 0, sizeof *disk80); + memset(disk80, 0, sizeof(*disk80)); memcpy(disk80->devname, disk->devname, sizeof(disk80->devname)); disk80->status = disk->status; disk80->spareRow = 0; @@ -164,13 +164,13 @@ RF_DeviceConfig_t80 *config80, **configPtr80 = data; int rv; - RF_Malloc(config, sizeof *config, (RF_DeviceConfig_t *)); + config = RF_Malloc(sizeof(*config)); if (config == NULL) - return (ENOMEM); - RF_Malloc(config80, sizeof *config80, (RF_DeviceConfig_t80 *)); + return ENOMEM; + config80 = RF_Malloc(sizeof(*config80)); if (config80 == NULL) { - RF_Free(config, sizeof(RF_DeviceConfig_t)) - return (ENOMEM); + RF_Free(config, sizeof(*config)); + return ENOMEM; } rv = rf_get_info(raidPtr, config); if (rv == 0) { @@ -186,10 +186,10 @@ rf_copy_raiddisk80(&config->spares[i], &config80->spares[i]); } - rv = copyout(config80, *configPtr80, sizeof *config80); + rv = copyout(config80, *configPtr80, sizeof(*config80)); } - RF_Free(config, sizeof(RF_DeviceConfig_t)); - RF_Free(config80, sizeof(RF_DeviceConfig_t80)); + RF_Free(config, sizeof(*config)); + RF_Free(config80, sizeof(*config80)); return rv; } @@ -205,7 +205,7 @@ * Perhaps there should be an option to skip the in-core * copy and hit the disk, as with disklabel(8). */ - RF_Malloc(clabel, sizeof(*clabel), (RF_ComponentLabel_t *)); + clabel = RF_Malloc(sizeof(*clabel)); if (clabel == NULL) return ENOMEM; retcode = copyin(*clabel_ptr, clabel, sizeof(*clabel)); @@ -240,18 +240,18 @@ /* data points to a pointer to the configuration structure */ u80_cfg = *((RF_Config_t80 **) data); - RF_Malloc(k80_cfg, sizeof(RF_Config_t80), (RF_Config_t80 *)); + k80_cfg = RF_Malloc(sizeof(*k80_cfg)); if (k80_cfg == NULL) return ENOMEM; - error = copyin(u80_cfg, k80_cfg, sizeof(RF_Config_t80)); + error = copyin(u80_cfg, k80_cfg, sizeof(*k80_cfg)); if (error) { - RF_Free(k80_cfg, sizeof(RF_Config_t80)); + RF_Free(k80_cfg, sizeof(*k80_cfg)); return error; } - RF_Malloc(k_cfg, sizeof(RF_Config_t), (RF_Config_t *)); + k_cfg = RF_Malloc(sizeof(*k_cfg)); if (k_cfg == NULL) { - RF_Free(k80_cfg, sizeof(RF_Config_t80)); + RF_Free(k80_cfg, sizeof(*k80_cfg)); return ENOMEM; } @@ -288,7 +288,7 @@ k_cfg->layoutSpecific = k80_cfg->layoutSpecific; k_cfg->force = k80_cfg->force; - RF_Free(k80_cfg, sizeof(RF_Config_t80)); + RF_Free(k80_cfg, sizeof(*k80_cfg)); return rf_construct(rs, k_cfg); } Index: rf_copyback.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_copyback.c,v retrieving revision 1.50 diff -u -u -r1.50 rf_copyback.c --- rf_copyback.c 14 Jun 2014 07:39:00 -0000 1.50 +++ rf_copyback.c 9 Feb 2019 03:12:50 -0000 @@ -185,10 +185,11 @@ return; } /* get a buffer to hold one SU */ - RF_Malloc(databuf, rf_RaidAddressToByte(raidPtr, raidPtr->Layout.sectorsPerStripeUnit), (char *)); + databuf = RF_Malloc(rf_RaidAddressToByte(raidPtr, + raidPtr->Layout.sectorsPerStripeUnit)); /* create a descriptor */ - RF_Malloc(desc, sizeof(*desc), (RF_CopybackDesc_t *)); + desc = RF_Malloc(sizeof(*desc)); desc->raidPtr = raidPtr; desc->status = 0; desc->fcol = fcol; Index: rf_cvscan.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_cvscan.c,v retrieving revision 1.16 diff -u -u -r1.16 rf_cvscan.c --- rf_cvscan.c 31 Aug 2011 18:31:02 -0000 1.16 +++ rf_cvscan.c 9 Feb 2019 03:12:50 -0000 @@ -326,8 +326,7 @@ long range = 2; /* Currently no mechanism to change these */ long penalty = sectPerDisk / 5; - RF_MallocAndAdd(hdr, sizeof(RF_CvscanHeader_t), (RF_CvscanHeader_t *), clList); - memset((char *) hdr, 0, sizeof(RF_CvscanHeader_t)); + hdr = RF_MallocAndAdd(sizeof(*hdr), clList); hdr->range_for_avg = RF_MAX(range, 1); hdr->change_penalty = RF_MAX(penalty, 0); hdr->direction = rf_cvscan_RIGHT; Index: rf_dagdegrd.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_dagdegrd.c,v retrieving revision 1.29 diff -u -u -r1.29 rf_dagdegrd.c --- rf_dagdegrd.c 15 Sep 2013 12:13:56 -0000 1.29 +++ rf_dagdegrd.c 9 Feb 2019 03:12:51 -0000 @@ -605,7 +605,7 @@ useMirror = RF_TRUE; /* total number of nodes = 1 + (block + commit + terminator) */ - RF_MallocAndAdd(nodes, 4 * sizeof(RF_DagNode_t), (RF_DagNode_t *), allocList); + nodes = RF_MallocAndAdd(4 * sizeof(*nodes), allocList); i = 0; rdNode = &nodes[i]; i++; @@ -724,17 +724,19 @@ fone_start = rf_StripeUnitOffset(layoutPtr, fone->startSector); fone_end = fone_start + fone->numSector; +#define BUF_ALLOC(num) \ + RF_MallocAndAdd(rf_RaidAddressToByte(raidPtr, num), allocList) #define CONS_PDA(if,start,num) \ pda_p->col = asmap->if->col; \ pda_p->startSector = ((asmap->if->startSector / secPerSU) * secPerSU) + start; \ pda_p->numSector = num; \ pda_p->next = NULL; \ - RF_MallocAndAdd(pda_p->bufPtr,rf_RaidAddressToByte(raidPtr,num),(char *), allocList) + pda_p->bufPtr = BUF_ALLOC(num) if (asmap->numDataFailed == 1) { PDAPerDisk = 1; state = 1; - RF_MallocAndAdd(*pqpdap, 2 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(2 * sizeof(**pqpdap), allocList); pda_p = *pqpdap; /* build p */ CONS_PDA(parityInfo, fone_start, fone->numSector); @@ -749,7 +751,7 @@ if (fone->numSector + ftwo->numSector > secPerSU) { PDAPerDisk = 1; state = 2; - RF_MallocAndAdd(*pqpdap, 2 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(2 * sizeof(**pqpdap), allocList); pda_p = *pqpdap; CONS_PDA(parityInfo, 0, secPerSU); pda_p->type = RF_PDA_TYPE_PARITY; @@ -760,7 +762,7 @@ PDAPerDisk = 2; state = 3; /* four of them, fone, then ftwo */ - RF_MallocAndAdd(*pqpdap, 4 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(4 * sizeof(**pqpdap), allocList); pda_p = *pqpdap; CONS_PDA(parityInfo, fone_start, fone->numSector); pda_p->type = RF_PDA_TYPE_PARITY; @@ -819,8 +821,7 @@ /* allocate up our list of pda's */ - RF_MallocAndAdd(pda_p, napdas * sizeof(RF_PhysDiskAddr_t), - (RF_PhysDiskAddr_t *), allocList); + pda_p = RF_MallocAndAdd(napdas * sizeof(*pdap), allocList); *pdap = pda_p; /* linkem together */ @@ -844,17 +845,17 @@ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; case 2: /* full stripe */ pda_p->numSector = secPerSU; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, secPerSU), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(secPerSU); break; case 3: /* two slabs */ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; pda_p->type = RF_PDA_TYPE_DATA; pda_p->raidAddress = sosAddr + (i * secPerSU); @@ -862,7 +863,7 @@ pda_p->numSector = ftwo->numSector; pda_p->raidAddress += ftwo_start; pda_p->startSector += ftwo_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; default: RF_PANIC(); @@ -885,7 +886,7 @@ pda_p->numSector = suoff - fone_start; pda_p->raidAddress = sosAddr + (i * secPerSU) + fone_start; (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; } if (suend < fone_end) { @@ -895,7 +896,7 @@ pda_p->numSector = fone_end - suend; pda_p->raidAddress = sosAddr + (i * secPerSU) + suend; /* off by one? */ (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; } break; @@ -906,14 +907,15 @@ pda_p->numSector = secPerSU - suend; pda_p->raidAddress = sosAddr + (i * secPerSU) + suend; /* off by one? */ (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; } else if (suoff > 0) { /* short at front */ pda_p->numSector = suoff; pda_p->raidAddress = sosAddr + (i * secPerSU); (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = + BUF_ALLOC(pda_p->numSector); pda_p++; } break; @@ -927,7 +929,8 @@ pda_p->numSector = suoff - fone_start; pda_p->raidAddress = sosAddr + (i * secPerSU) + fone_start; (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = + BUF_ALLOC(pda_p->numSector); pda_p++; } if (suend < fone_end) { @@ -937,7 +940,8 @@ pda_p->numSector = fone_end - suend; pda_p->raidAddress = sosAddr + (i * secPerSU) + suend; /* off by one? */ (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = + BUF_ALLOC(pda_p->numSector); pda_p++; } } @@ -950,7 +954,8 @@ pda_p->numSector = suoff - ftwo_start; pda_p->raidAddress = sosAddr + (i * secPerSU) + ftwo_start; (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = + BUF_ALLOC(pda_p->numSector); pda_p++; } if (suend < ftwo_end) { @@ -960,7 +965,8 @@ pda_p->numSector = ftwo_end - suend; pda_p->raidAddress = sosAddr + (i * secPerSU) + suend; /* off by one? */ (raidPtr->Layout.map->MapSector) (raidPtr, pda_p->raidAddress, &(pda_p->col), &(pda_p->startSector), 0); - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = + BUF_ALLOC(pda_p->numSector); pda_p++; } } @@ -985,17 +991,17 @@ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; case 2: /* full stripe */ pda_p->numSector = secPerSU; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, secPerSU), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(secPerSU); break; case 3: /* two slabs */ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; pda_p->type = RF_PDA_TYPE_DATA; pda_p->raidAddress = sosAddr + (i * secPerSU); @@ -1003,7 +1009,7 @@ pda_p->numSector = ftwo->numSector; pda_p->raidAddress += ftwo_start; pda_p->startSector += ftwo_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; default: RF_PANIC(); @@ -1058,7 +1064,7 @@ nReadNodes = nRrdNodes + nRudNodes + 2 * nPQNodes; nNodes = 4 /* block, unblock, recovery, term */ + nReadNodes; - RF_MallocAndAdd(nodes, nNodes * sizeof(RF_DagNode_t), (RF_DagNode_t *), allocList); + nodes = RF_MallocAndAdd(nNodes * sizeof(*nodes), allocList); i = 0; blockNode = &nodes[i]; i += 1; Index: rf_dagdegwr.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_dagdegwr.c,v retrieving revision 1.33 diff -u -u -r1.33 rf_dagdegwr.c --- rf_dagdegwr.c 23 Mar 2014 03:42:39 -0000 1.33 +++ rf_dagdegwr.c 9 Feb 2019 03:12:51 -0000 @@ -116,6 +116,8 @@ * * DAG creation code begins here */ +#define BUF_ALLOC(num) \ + RF_MallocAndAdd(rf_RaidAddressToByte(raidPtr, num), allocList) @@ -380,8 +382,8 @@ /* fill in the Wnq Node */ if (nfaults == 2) { { - RF_MallocAndAdd(parityPDA, sizeof(RF_PhysDiskAddr_t), - (RF_PhysDiskAddr_t *), allocList); + parityPA = RF_MallocAndAdd(sizeof(*parityPA), + allocList); parityPDA->col = asmap->qInfo->col; parityPDA->startSector = ((asmap->qInfo->startSector / sectorsPerSU) * sectorsPerSU) + (failedPDA->startSector % sectorsPerSU); @@ -390,8 +392,7 @@ rf_InitNode(wnqNode, rf_wait, RF_FALSE, rf_DiskWriteFunc, rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnq", allocList); wnqNode->params[0].p = parityPDA; - RF_MallocAndAdd(xorNode->results[1], - rf_RaidAddressToByte(raidPtr, failedPDA->numSector), (char *), allocList); + xorNode->results[1] = BUF_ALLOC(failedPDA->numSector); wnqNode->params[1].p = xorNode->results[1]; wnqNode->params[2].v = parityStripeID; wnqNode->params[3].v = RF_CREATE_PARAM3(RF_IO_NORMAL_PRIORITY, which_ru); @@ -564,7 +565,7 @@ pda_p->startSector = ((asmap->if->startSector / secPerSU) * secPerSU) + start; \ pda_p->numSector = num; \ pda_p->next = NULL; \ - RF_MallocAndAdd(pda_p->bufPtr,rf_RaidAddressToByte(raidPtr,num),(char *), allocList) + pda_p->bufPtr = BUF_ALLOC(num) #if (RF_INCLUDE_PQ > 0) || (RF_INCLUDE_EVENODD > 0) void rf_WriteGenerateFailedAccessASMs( @@ -596,7 +597,7 @@ if (asmap->numDataFailed == 1) { PDAPerDisk = 1; state = 1; - RF_MallocAndAdd(*pqpdap, 2 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(2 * sizeof(**pqpdap), allocList); pda_p = *pqpdap; /* build p */ CONS_PDA(parityInfo, fone_start, fone->numSector); @@ -610,7 +611,8 @@ if (fone->numSector + ftwo->numSector > secPerSU) { PDAPerDisk = 1; state = 2; - RF_MallocAndAdd(*pqpdap, 2 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(2 * sizeof(**pqpdap), + allocList); pda_p = *pqpdap; CONS_PDA(parityInfo, 0, secPerSU); pda_p->type = RF_PDA_TYPE_PARITY; @@ -621,7 +623,8 @@ PDAPerDisk = 2; state = 3; /* four of them, fone, then ftwo */ - RF_MallocAndAdd(*pqpdap, 4 * sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t *), allocList); + *pqpdap = RF_MallocAndAdd(4 * sizeof(*pqpdap), + allocList); pda_p = *pqpdap; CONS_PDA(parityInfo, fone_start, fone->numSector); pda_p->type = RF_PDA_TYPE_PARITY; @@ -646,8 +649,7 @@ /* allocate up our list of pda's */ - RF_MallocAndAdd(pda_p, napdas * sizeof(RF_PhysDiskAddr_t), - (RF_PhysDiskAddr_t *), allocList); + pda_p = RF_MallocAndAdd(napdas * sizeof(*pda_p), allocList); *pdap = pda_p; /* linkem together */ @@ -669,17 +671,17 @@ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; case 2: /* full stripe */ pda_p->numSector = secPerSU; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, secPerSU), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(secPerSU); break; case 3: /* two slabs */ pda_p->numSector = fone->numSector; pda_p->raidAddress += fone_start; pda_p->startSector += fone_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); pda_p++; pda_p->type = RF_PDA_TYPE_DATA; pda_p->raidAddress = sosAddr + (i * secPerSU); @@ -687,7 +689,7 @@ pda_p->numSector = ftwo->numSector; pda_p->raidAddress += ftwo_start; pda_p->startSector += ftwo_start; - RF_MallocAndAdd(pda_p->bufPtr, rf_RaidAddressToByte(raidPtr, pda_p->numSector), (char *), allocList); + pda_p->bufPtr = BUF_ALLOC(pda_p->numSector); break; default: RF_PANIC(); @@ -750,7 +752,7 @@ nWriteNodes = nWudNodes + 2 * nPQNodes; nNodes = 4 + nReadNodes + nWriteNodes; - RF_MallocAndAdd(nodes, nNodes * sizeof(RF_DagNode_t), (RF_DagNode_t *), allocList); + nodes = RF_MallocAndAdd(nNodes * sizeof(*nodes), allocList); blockNode = nodes; unblockNode = blockNode + 1; termNode = unblockNode + 1; Index: rf_dagffwr.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_dagffwr.c,v retrieving revision 1.34 diff -u -u -r1.34 rf_dagffwr.c --- rf_dagffwr.c 15 Sep 2013 12:41:17 -0000 1.34 +++ rf_dagffwr.c 9 Feb 2019 03:12:51 -0000 @@ -125,6 +125,8 @@ * * DAG creation code begins here */ +#define BUF_ALLOC(num) \ + RF_MallocAndAdd(rf_RaidAddressToByte(raidPtr, num), allocList) /****************************************************************************** @@ -382,9 +384,8 @@ * to get smashed during the P and Q calculation, guaranteeing * one would be wrong. */ - RF_MallocAndAdd(xorNode->results[1], - rf_RaidAddressToByte(raidPtr, raidPtr->Layout.sectorsPerStripeUnit), - (void *), allocList); + xorNode->results[1] = + BUF_ALLOC(raidPtr->Layout.sectorsPerStripeUnit); rf_InitNode(wnqNode, rf_wait, RF_FALSE, rf_DiskWriteFunc, rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnq", allocList); Index: rf_dagutils.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_dagutils.c,v retrieving revision 1.54 diff -u -u -r1.54 rf_dagutils.c --- rf_dagutils.c 7 Jan 2016 21:57:00 -0000 1.54 +++ rf_dagutils.c 9 Feb 2019 03:12:51 -0000 @@ -142,8 +142,7 @@ node->big_dag_ptrs = rf_AllocDAGPCache(); ptrs = (void **) node->big_dag_ptrs; } else { - RF_MallocAndAdd(ptrs, nptrs * sizeof(void *), - (void **), alist); + ptrs = RF_MallocAndAdd(nptrs * sizeof(*ptrs), alist); } node->succedents = (nSucc) ? (RF_DagNode_t **) ptrs : NULL; node->antecedents = (nAnte) ? (RF_DagNode_t **) (ptrs + nSucc) : NULL; @@ -157,9 +156,8 @@ node->big_dag_params = rf_AllocDAGPCache(); node->params = node->big_dag_params; } else { - RF_MallocAndAdd(node->params, - nParam * sizeof(RF_DagParam_t), - (RF_DagParam_t *), alist); + node->params = RF_MallocAndAdd( + nParam * sizeof(*node->params), alist); } } else { node->params = NULL; @@ -259,7 +257,7 @@ RF_DagHeader_t *dh; dh = pool_get(&rf_pools.dagh, PR_WAITOK); - memset((char *) dh, 0, sizeof(RF_DagHeader_t)); + memset(dh, 0, sizeof(*dh)); return (dh); } @@ -275,7 +273,7 @@ RF_DagNode_t *node; node = pool_get(&rf_pools.dagnode, PR_WAITOK); - memset(node, 0, sizeof(RF_DagNode_t)); + memset(node, 0, sizeof(*node)); return (node); } @@ -297,7 +295,7 @@ RF_DagList_t *dagList; dagList = pool_get(&rf_pools.daglist, PR_WAITOK); - memset(dagList, 0, sizeof(RF_DagList_t)); + memset(dagList, 0, sizeof(*dagList)); return (dagList); } @@ -330,7 +328,7 @@ RF_FuncList_t *funcList; funcList = pool_get(&rf_pools.funclist, PR_WAITOK); - memset(funcList, 0, sizeof(RF_FuncList_t)); + memset(funcList, 0, sizeof(*funcList)); return (funcList); } @@ -853,10 +851,9 @@ unvisited = dag_h->succedents[0]->visited; - RF_Malloc(scount, nodecount * sizeof(int), (int *)); - RF_Malloc(acount, nodecount * sizeof(int), (int *)); - RF_Malloc(nodes, nodecount * sizeof(RF_DagNode_t *), - (RF_DagNode_t **)); + scount = RF_Malloc(nodecount * sizeof(*scount)); + acount = RF_Malloc(nodecount * sizeof(*acount)); + nodes = RF_Malloc(nodecount * sizeof(*nodes)); for (i = 0; i < dag_h->numSuccedents; i++) { if ((dag_h->succedents[i]->visited == unvisited) && rf_ValidateBranch(dag_h->succedents[i], scount, Index: rf_debugMem.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_debugMem.c,v retrieving revision 1.21 diff -u -u -r1.21 rf_debugMem.c --- rf_debugMem.c 1 May 2011 06:49:43 -0000 1.21 +++ rf_debugMem.c 9 Feb 2019 03:12:51 -0000 @@ -44,16 +44,16 @@ #if RF_DEBUG_MEM -static long tot_mem_in_use = 0; +static size_t tot_mem_in_use = 0; /* Hash table of information about memory allocations */ #define RF_MH_TABLESIZE 1000 struct mh_struct { void *address; - int size; - int line; - const char *filen; + size_t size; + const char *file; + uint32_t line; char allocated; struct mh_struct *next; }; @@ -61,56 +61,63 @@ static rf_declare_mutex2(rf_debug_mem_mutex); static int mh_table_initialized = 0; -static void memory_hash_insert(void *addr, int size, int line, const char *filen); -static int memory_hash_remove(void *addr, int sz); +static void memory_hash_insert(void *, size_t, const char *, uint32_t); +static int memory_hash_remove(void *, size_t); void -rf_record_malloc(void *p, int size, int line, const char *filen) +rf_record_malloc(void *p, size_t size, const char *file, uint32_t line) { RF_ASSERT(size != 0); /* rf_lock_mutex2(rf_debug_mem_mutex); */ - memory_hash_insert(p, size, line, filen); + memory_hash_insert(p, size, file, line); tot_mem_in_use += size; /* rf_unlock_mutex2(rf_debug_mem_mutex); */ - if ((long) p == rf_memDebugAddress) { - printf("Allocate: debug address allocated from line %d file %s\n", line, filen); + if ((intptr_t)p == rf_memDebugAddress) { + printf("%s,%d: %s: Debug address allocated\n", file, line, + __func__); } } void -rf_unrecord_malloc(void *p, int sz) +rf_unrecord_malloc(void *p, size_t sz) { - int size; + size_t size; /* rf_lock_mutex2(rf_debug_mem_mutex); */ size = memory_hash_remove(p, sz); tot_mem_in_use -= size; /* rf_unlock_mutex2(rf_debug_mem_mutex); */ - if ((long) p == rf_memDebugAddress) { - printf("Free: Found debug address\n"); /* this is really only a - * flag line for gdb */ + if ((intptr_t) p == rf_memDebugAddress) { + /* this is really only a flag line for gdb */ + printf("%s: Found debug address\n", __func__); } } void rf_print_unfreed(void) { - int i, foundone = 0; + size_t i; + int foundone = 0; struct mh_struct *p; for (i = 0; i < RF_MH_TABLESIZE; i++) { - for (p = mh_table[i]; p; p = p->next) - if (p->allocated) { - if (!foundone) - printf("\n\nThere are unfreed memory locations at program shutdown:\n"); - foundone = 1; - printf("Addr 0x%lx Size %d line %d file %s\n", - (long) p->address, p->size, p->line, p->filen); + for (p = mh_table[i]; p; p = p->next) { + if (!p->allocated) + continue; + if (foundone) { + printf("\n\n:%s: There are unfreed memory" + " locations at program shutdown:\n", + __func__); } + foundone = 1; + printf("%s: @%s,%d: addr %p size %zu\n", __func__, + p->file, p->line, p->address, p->size); + } } if (tot_mem_in_use) { - printf("%ld total bytes in use\n", tot_mem_in_use); + printf("%s: %zu total bytes in use\n", + __func__, tot_mem_in_use); } } #endif /* RF_DEBUG_MEM */ @@ -127,7 +134,7 @@ rf_ConfigureDebugMem(RF_ShutdownList_t **listp) { #if RF_DEBUG_MEM - int i; + size_t i; rf_init_mutex2(rf_debug_mem_mutex, IPL_VM); if (rf_memDebug) { @@ -142,20 +149,21 @@ #if RF_DEBUG_MEM -#define HASHADDR(_a_) ( (((unsigned long) _a_)>>3) % RF_MH_TABLESIZE ) +#define HASHADDR(a) ((size_t)((((uintptr_t)a) >> 3) % RF_MH_TABLESIZE)) static void -memory_hash_insert(void *addr, int size, int line, const char *filen) +memory_hash_insert(void *addr, size_t size, const char *file, uint32_t line) { - unsigned long bucket = HASHADDR(addr); + size_t bucket = (size_t)HASHADDR(addr); struct mh_struct *p; RF_ASSERT(mh_table_initialized); /* search for this address in the hash table */ - for (p = mh_table[bucket]; p && (p->address != addr); p = p->next); + for (p = mh_table[bucket]; p && (p->address != addr); p = p->next) + continue; if (!p) { - RF_Malloc(p, sizeof(struct mh_struct), (struct mh_struct *)); + p = RF_Malloc(sizeof(*p)); RF_ASSERT(p); p->next = mh_table[bucket]; mh_table[bucket] = p; @@ -163,40 +171,48 @@ p->allocated = 0; } if (p->allocated) { - printf("ERROR: reallocated address 0x%lx from line %d, file %s without intervening free\n", (long) addr, line, filen); - printf(" last allocated from line %d file %s\n", p->line, p->filen); + printf("%s: @%s,%u: ERROR: Reallocated addr %p without free\n", + __func__, file, line, addr); + printf("%s: last allocated @%s,%u\n", + __func__, p->file, p->line); RF_ASSERT(0); } p->size = size; p->line = line; - p->filen = filen; + p->file = file; p->allocated = 1; } static int -memory_hash_remove(void *addr, int sz) +memory_hash_remove(void *addr, size_t sz) { - unsigned long bucket = HASHADDR(addr); + size_t bucket = HASHADDR(addr); struct mh_struct *p; RF_ASSERT(mh_table_initialized); - for (p = mh_table[bucket]; p && (p->address != addr); p = p->next); + for (p = mh_table[bucket]; p && (p->address != addr); p = p->next) + continue; if (!p) { - printf("ERROR: freeing never-allocated address 0x%lx\n", (long) addr); + printf("%s: ERROR: Freeing never-allocated address %p\n", + __func__, addr); RF_PANIC(); } if (!p->allocated) { - printf("ERROR: freeing unallocated address 0x%lx. Last allocation line %d file %s\n", (long) addr, p->line, p->filen); + printf("%s: ERROR: Freeing unallocated address %p." + " Last allocation @%s,%u\n", + __func__, addr, p->file, p->line); RF_PANIC(); } if (sz > 0 && p->size != sz) { /* you can suppress this error by * using a negative value as the size * to free */ - printf("ERROR: incorrect size at free for address 0x%lx: is %d should be %d. Alloc at line %d of file %s\n", (unsigned long) addr, sz, p->size, p->line, p->filen); + printf("%s: ERROR: Incorrect size (%zu should be %zu) at" + " free for address %p. Allocated @%s,%u\n", __func__, + sz, p->size, addr, p->file, p->line); RF_PANIC(); } p->allocated = 0; - return (p->size); + return p->size; } #endif /* RF_DEBUG_MEM */ Index: rf_debugMem.h =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_debugMem.h,v retrieving revision 1.13 diff -u -u -r1.13 rf_debugMem.h --- rf_debugMem.h 1 May 2011 06:49:43 -0000 1.13 +++ rf_debugMem.h 9 Feb 2019 03:12:51 -0000 @@ -42,47 +42,54 @@ #include <sys/types.h> #include <sys/malloc.h> -#ifndef RF_DEBUG_MEM -#define RF_DEBUG_MEM 0 -#endif +int rf_ConfigureDebugMem(RF_ShutdownList_t **); -#if RF_DEBUG_MEM -#define RF_Malloc(_p_, _size_, _cast_) \ - { \ - _p_ = _cast_ malloc((u_long)_size_, M_RAIDFRAME, M_WAITOK); \ - memset((char *)_p_, 0, _size_); \ - if (rf_memDebug) rf_record_malloc(_p_, _size_, __LINE__, __FILE__); \ - } +#ifndef RF_DEBUG_MEM +# define RF_DEBUG_MEM 0 +# define RF_Malloc(s) malloc(s, M_RAIDFRAME, M_WAITOK | M_ZERO) +# define RF_Free(p, s) free(p, M_RAIDFRAME) +# define RF_MallocAndAdd(s, l) _RF_MallocAndAdd(s, l) #else -#define RF_Malloc(_p_, _size_, _cast_) \ - { \ - _p_ = _cast_ malloc((u_long)_size_, M_RAIDFRAME, M_WAITOK); \ - memset((char *)_p_, 0, _size_); \ - } -#endif +extern long rf_memDebug; + +void rf_record_malloc(void *, size_t, const char *, uint32_t); +void rf_unrecord_malloc(void *, size_t); +void rf_print_unfreed(void); -#define RF_MallocAndAdd(__p_, __size_, __cast_, __alist_) \ - { \ - RF_Malloc(__p_, __size_, __cast_); \ - if (__alist_) rf_AddToAllocList(__alist_, __p_, __size_); \ +# define RF_Malloc(s) _RF_Malloc(s, __FILE__, __LINE__) +# define RF_MallocAndAdd(s, l) \ + _RF_MallocAndAdd(s, l, __FILE__, __LINE__) + +static __inline void * +_RF_Malloc(size_t size, const char *file, uint32_t line) +{ + void *p = malloc(size, M_RAIDFRAME, M_WAITOK | M_ZERO); + if (rf_memDebug) rf_record_malloc(p, size, file, line); + return p; +} + +static __inline void +RF_Free(void *p, size_t size) +{ + free(p, M_RAIDFRAME); + if (rf_memDebug) rf_unrecord_malloc(p, size); } +#endif +static __inline void * +_RF_MallocAndAdd(size_t size, RF_AllocListElem_t *l #if RF_DEBUG_MEM -#define RF_Free(_p_, _sz_) \ - { \ - free((void *)(_p_), M_RAIDFRAME); \ - if (rf_memDebug) rf_unrecord_malloc(_p_, (u_int32_t) (_sz_)); \ - } -#else -#define RF_Free(_p_, _sz_) \ - { \ - free((void *)(_p_), M_RAIDFRAME); \ - } + , const char *file, uint32_t line +#endif +) +{ + void *p = malloc(size, M_RAIDFRAME, M_WAITOK | M_ZERO); +#if RF_DEBUG_MEM + if (rf_memDebug) rf_record_malloc(p, size, file, line); #endif + if (l) rf_AddToAllocList(l, p, size); + return p; +} -void rf_record_malloc(void *p, int size, int line, const char *filen); -void rf_unrecord_malloc(void *p, int sz); -void rf_print_unfreed(void); -int rf_ConfigureDebugMem(RF_ShutdownList_t ** listp); #endif /* !_RF__RF_DEBUGMEM_H_ */ Index: rf_decluster.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_decluster.c,v retrieving revision 1.25 diff -u -u -r1.25 rf_decluster.c --- rf_decluster.c 18 Jan 2018 00:32:49 -0000 1.25 +++ rf_decluster.c 9 Feb 2019 03:12:51 -0000 @@ -89,7 +89,7 @@ numCompleteSpareRegionsPerDisk = 0; /* 1. create layout specific structure */ - RF_MallocAndAdd(info, sizeof(RF_DeclusteredConfigInfo_t), (RF_DeclusteredConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; @@ -614,7 +614,7 @@ RF_SparetWait_t *req; int retcode; - RF_Malloc(req, sizeof(*req), (RF_SparetWait_t *)); + req = RF_Malloc(sizeof(*req)); req->C = raidPtr->numCol; req->G = raidPtr->Layout.numDataCol + raidPtr->Layout.numParityCol; req->fcol = fcol; @@ -643,20 +643,23 @@ /* what we need to copyin is a 2-d array, so first copyin the user * pointers to the rows in the table */ - RF_Malloc(ptrs, info->TablesPerSpareRegion * sizeof(RF_SpareTableEntry_t *), (RF_SpareTableEntry_t **)); - retcode = copyin((void *) data, (void *) ptrs, info->TablesPerSpareRegion * sizeof(RF_SpareTableEntry_t *)); + size_t ptrslen = info->TablesPerSpareRegion * sizeof(*ptrs); + ptrs = RF_Malloc(ptrslen); + retcode = copyin(data, ptrs, ptrslen); if (retcode) return (retcode); /* now allocate kernel space for the row pointers */ - RF_Malloc(info->SpareTable, info->TablesPerSpareRegion * sizeof(RF_SpareTableEntry_t *), (RF_SpareTableEntry_t **)); + info->SpareTable = RF_Malloc(info->TablesPerSpareRegion * + sizeof(*info->SpareTable)); /* now allocate kernel space for each row in the table, and copy it in * from user space */ + size_t len = info->BlocksPerTable * sizeof(**info->SpareTable); for (i = 0; i < info->TablesPerSpareRegion; i++) { - RF_Malloc(info->SpareTable[i], info->BlocksPerTable * sizeof(RF_SpareTableEntry_t), (RF_SpareTableEntry_t *)); - retcode = copyin(ptrs[i], info->SpareTable[i], info->BlocksPerTable * sizeof(RF_SpareTableEntry_t)); + info->SpareTable[i] = RF_Malloc(len); + retcode = copyin(ptrs[i], info->SpareTable[i], len); if (retcode) { info->SpareTable = NULL; /* blow off the memory * we've allocated */ @@ -665,7 +668,7 @@ } /* free up the temporary array we used */ - RF_Free(ptrs, info->TablesPerSpareRegion * sizeof(RF_SpareTableEntry_t *)); + RF_Free(ptrs, ptrslen); return (0); } Index: rf_declusterPQ.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_declusterPQ.c,v retrieving revision 1.16 diff -u -u -r1.16 rf_declusterPQ.c --- rf_declusterPQ.c 23 Mar 2014 09:30:59 -0000 1.16 +++ rf_declusterPQ.c 9 Feb 2019 03:12:51 -0000 @@ -87,7 +87,7 @@ return (EINVAL); } /* 1. create layout specific structure */ - RF_MallocAndAdd(info, sizeof(RF_DeclusteredConfigInfo_t), (RF_DeclusteredConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; Index: rf_diskqueue.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_diskqueue.c,v retrieving revision 1.53 diff -u -u -r1.53 rf_diskqueue.c --- rf_diskqueue.c 5 May 2011 06:04:09 -0000 1.53 +++ rf_diskqueue.c 9 Feb 2019 03:12:51 -0000 @@ -225,10 +225,9 @@ } raidPtr->qType = p; - RF_MallocAndAdd(diskQueues, - (raidPtr->numCol + RF_MAXSPARE) * - sizeof(RF_DiskQueue_t), (RF_DiskQueue_t *), - raidPtr->cleanupList); + diskQueues = RF_MallocAndAdd( + (raidPtr->numCol + RF_MAXSPARE) * sizeof(*diskQueues), + raidPtr->cleanupList); if (diskQueues == NULL) return (ENOMEM); raidPtr->Queues = diskQueues; @@ -372,7 +371,7 @@ if (p == NULL) return (NULL); - memset(p, 0, sizeof(RF_DiskQueueData_t)); + memset(p, 0, sizeof(*p)); if (waitflag == PR_WAITOK) { p->bp = getiobuf(NULL, true); } else { Index: rf_disks.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_disks.c,v retrieving revision 1.90 diff -u -u -r1.90 rf_disks.c --- rf_disks.c 8 Feb 2019 13:37:46 -0000 1.90 +++ rf_disks.c 9 Feb 2019 03:12:51 -0000 @@ -321,19 +321,17 @@ /* We allocate RF_MAXSPARE on the first row so that we have room to do hot-swapping of spares */ - RF_MallocAndAdd(raidPtr->Disks, (raidPtr->numCol + RF_MAXSPARE) * - sizeof(RF_RaidDisk_t), (RF_RaidDisk_t *), - raidPtr->cleanupList); + raidPtr->Disks = RF_MallocAndAdd((raidPtr->numCol + RF_MAXSPARE) * + sizeof(*raidPtr->Disks), raidPtr->cleanupList); if (raidPtr->Disks == NULL) { ret = ENOMEM; goto fail; } /* get space for device specific stuff.. */ - RF_MallocAndAdd(raidPtr->raid_cinfo, - (raidPtr->numCol + RF_MAXSPARE) * - sizeof(struct raidcinfo), (struct raidcinfo *), - raidPtr->cleanupList); + raidPtr->raid_cinfo = RF_MallocAndAdd( + (raidPtr->numCol + RF_MAXSPARE) * sizeof(*raidPtr->raid_cinfo), + raidPtr->cleanupList); if (raidPtr->raid_cinfo == NULL) { ret = ENOMEM; Index: rf_driver.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_driver.c,v retrieving revision 1.134 diff -u -u -r1.134 rf_driver.c --- rf_driver.c 8 Jan 2019 07:18:18 -0000 1.134 +++ rf_driver.c 9 Feb 2019 03:12:51 -0000 @@ -587,7 +587,7 @@ desc->status = 0; desc->numRetries = 0; #if RF_ACC_TRACE > 0 - memset((char *) &desc->tracerec, 0, sizeof(RF_AccTraceEntry_t)); + memset(&desc->tracerec, 0, sizeof(desc->tracerec)); #endif desc->callbackFunc = NULL; desc->callbackArg = NULL; Index: rf_evenodd.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_evenodd.c,v retrieving revision 1.21 diff -u -u -r1.21 rf_evenodd.c --- rf_evenodd.c 23 Mar 2014 09:30:59 -0000 1.21 +++ rf_evenodd.c 9 Feb 2019 03:12:51 -0000 @@ -74,7 +74,7 @@ RF_EvenOddConfigInfo_t *info; RF_RowCol_t i, j, startdisk; - RF_MallocAndAdd(info, sizeof(RF_EvenOddConfigInfo_t), (RF_EvenOddConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); layoutPtr->layoutSpecificInfo = (void *) info; info->stripeIdentifier = rf_make_2d_array(raidPtr->numCol, raidPtr->numCol, raidPtr->cleanupList); @@ -358,10 +358,12 @@ mcpair = rf_AllocMCPair(); rf_MakeAllocList(alloclist); - RF_MallocAndAdd(buf, numbytes * (layoutPtr->numDataCol + layoutPtr->numParityCol), (char *), alloclist); - RF_MallocAndAdd(pbuf, numbytes, (char *), alloclist); + buf = RF_MallocAndAdd( + numbytes * (layoutPtr->numDataCol + layoutPtr->numParityCol), + alloclist); + pbuf = RF_MallocAndAdd(numbytes, alloclist); end_p = buf + bytesPerStripe; - RF_MallocAndAdd(redundantbuf2, numbytes, (char *), alloclist); + redundantbuf2 = RF_MallocAndAdd(numbytes, alloclist); rd_dag_h = rf_MakeSimpleDAG(raidPtr, stripeWidth, numbytes, buf, rf_DiskReadFunc, rf_DiskReadUndoFunc, "Rod", alloclist, flags, RF_IO_NORMAL_PRIORITY); @@ -401,7 +403,7 @@ blockNode->succedents[layoutPtr->numDataCol + 1]->params[0].p = asmap->qInfo; /* fire off the DAG */ - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); rd_dag_h->tracerec = &tracerec; #if RF_DEBUG_VALIDATE_DAG @@ -463,7 +465,7 @@ wrBlock->succedents[0]->params[0].p = asmap->parityInfo; wrBlock->succedents[0]->params[2].v = psID; wrBlock->succedents[0]->params[3].v = RF_CREATE_PARAM3(RF_IO_NORMAL_PRIORITY, which_ru); - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); wr_dag_h->tracerec = &tracerec; #if RF_DEBUG_VALIDATE_DAG if (rf_verifyParityDebug) { @@ -493,7 +495,7 @@ wrBlock->succedents[0]->params[0].p = asmap->qInfo; wrBlock->succedents[0]->params[2].v = psID; wrBlock->succedents[0]->params[3].v = RF_CREATE_PARAM3(RF_IO_NORMAL_PRIORITY, which_ru); - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); wr_dag_h->tracerec = &tracerec; #if RF_DEBUG_VALIDATE_DAG if (rf_verifyParityDebug) { Index: rf_evenodd_dagfuncs.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_evenodd_dagfuncs.c,v retrieving revision 1.22 diff -u -u -r1.22 rf_evenodd_dagfuncs.c --- rf_evenodd_dagfuncs.c 23 Mar 2014 09:30:59 -0000 1.22 +++ rf_evenodd_dagfuncs.c 9 Feb 2019 03:12:51 -0000 @@ -411,7 +411,7 @@ RF_AccTraceEntry_t *tracerec = node->dagHdr->tracerec; RF_Etimer_t timer; - memset((char *) node->results[0], 0, + memset(node->results[0], 0, rf_RaidAddressToByte(raidPtr, failedPDA->numSector)); if (node->dagHdr->status == rf_enable) { RF_ETIMER_START(timer); @@ -482,8 +482,6 @@ short *P; RF_ASSERT(bytesPerEU % sizeof(short) == 0); - RF_Malloc(P, bytesPerEU, (short *)); - RF_Malloc(temp, bytesPerEU, (short *)); #elif RF_EO_MATRIX_DIM == 17 int longsPerEU = bytesPerEU / sizeof(long); long *rrdbuf_current, *pbuf_current, *ebuf_current; @@ -492,13 +490,11 @@ long *P; RF_ASSERT(bytesPerEU % sizeof(long) == 0); - RF_Malloc(P, bytesPerEU, (long *)); - RF_Malloc(temp, bytesPerEU, (long *)); #endif + P = RF_Malloc(bytesPerEU); + temp = RF_Malloc(bytesPerEU); RF_ASSERT(*((long *) dest[0]) == 0); RF_ASSERT(*((long *) dest[1]) == 0); - memset((char *) P, 0, bytesPerEU); - memset((char *) temp, 0, bytesPerEU); RF_ASSERT(*P == 0); /* calculate the 'P' parameter, which, not parity, is the Xor of all * elements in the last two column, ie. 'E' and 'parity' colume, see @@ -680,11 +676,11 @@ ndataParam = i; break; } - RF_Malloc(buf, numDataCol * sizeof(char *), (char **)); + buf = RF_Malloc(numDataCol * sizeof(*buf)); if (ndataParam != 0) { - RF_Malloc(suoff, ndataParam * sizeof(long), (long *)); - RF_Malloc(suend, ndataParam * sizeof(long), (long *)); - RF_Malloc(prmToCol, ndataParam * sizeof(long), (long *)); + suoff = RF_Malloc(ndataParam * sizeof(*suoff)); + suend = RF_Malloc(ndataParam * sizeof(*suend)); + prmToCol = RF_Malloc(ndataParam * sizeof(*prmToCol)); } if (asmap->failedPDAs[1] && (asmap->failedPDAs[1]->numSector + asmap->failedPDAs[0]->numSector < secPerSU)) { @@ -788,22 +784,19 @@ if (nresults == 1) { dest[0] = (char *)((RF_PhysDiskAddr_t *) node->results[0])->bufPtr + rf_RaidAddressToByte(raidPtr, sector - fsuoff[0]); /* Always malloc temp buffer to dest[1] */ - RF_Malloc(dest[1], bytesPerSector, (char *)); - memset(dest[1], 0, bytesPerSector); + dest[1] = RF_Malloc(bytesPerSector); mallc_two = 1; } else { if (fsuoff[0] <= sector && sector < fsuend[0]) dest[0] = (char *)((RF_PhysDiskAddr_t *) node->results[0])->bufPtr + rf_RaidAddressToByte(raidPtr, sector - fsuoff[0]); else { - RF_Malloc(dest[0], bytesPerSector, (char *)); - memset(dest[0], 0, bytesPerSector); + dest[0] = RF_Malloc(bytesPerSector); mallc_one = 1; } if (fsuoff[1] <= sector && sector < fsuend[1]) dest[1] = (char *)((RF_PhysDiskAddr_t *) node->results[1])->bufPtr + rf_RaidAddressToByte(raidPtr, sector - fsuoff[1]); else { - RF_Malloc(dest[1], bytesPerSector, (char *)); - memset(dest[1], 0, bytesPerSector); + dest[1] = RF_Malloc(bytesPerSector); mallc_two = 1; } RF_ASSERT(mallc_one == 0 || mallc_two == 0); @@ -874,7 +867,7 @@ * case, the other failed SU * is not being accessed */ RF_ETIMER_START(timer); - RF_Malloc(buf, numDataCol * sizeof(char *), (char **)); + buf = RF_Malloc(numDataCol * sizeof(*buf)); ppda = node->results[0];/* Instead of being buffers, node->results[0] * and [1] are Ppda and Epda */ @@ -915,12 +908,10 @@ fcol[1] = i; /* assign temporary space to put recovered failed SU */ numbytes = fpda->numSector * bytesPerSector; - RF_Malloc(olddata[0], numbytes, (char *)); - RF_Malloc(olddata[1], numbytes, (char *)); + olddata[0] = RF_Malloc(numbytes); + olddata[1] = RF_Malloc(numbytes); dest[0] = olddata[0]; dest[1] = olddata[1]; - memset(olddata[0], 0, numbytes); - memset(olddata[1], 0, numbytes); /* Begin the recovery decoding, initially buf[j], ebuf, pbuf, dest[j] * have already pointed at the beginning of each source buffers and * destination buffers */ Index: rf_fifo.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_fifo.c,v retrieving revision 1.15 diff -u -u -r1.15 rf_fifo.c --- rf_fifo.c 16 Nov 2006 01:33:23 -0000 1.15 +++ rf_fifo.c 9 Feb 2019 03:12:51 -0000 @@ -58,8 +58,7 @@ { RF_FifoHeader_t *q; - RF_MallocAndAdd(q, sizeof(RF_FifoHeader_t), - (RF_FifoHeader_t *), clList); + q = RF_MallocAndAdd(sizeof(*q), clList); q->hq_count = q->lq_count = 0; return ((void *) q); } Index: rf_interdecluster.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_interdecluster.c,v retrieving revision 1.14 diff -u -u -r1.14 rf_interdecluster.c --- rf_interdecluster.c 16 Nov 2006 01:33:23 -0000 1.14 +++ rf_interdecluster.c 9 Feb 2019 03:12:51 -0000 @@ -73,8 +73,7 @@ RF_RowCol_t i, tmp, SUs_per_region; /* create an Interleaved Declustering configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_InterdeclusterConfigInfo_t), (RF_InterdeclusterConfigInfo_t *), - raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; Index: rf_map.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_map.c,v retrieving revision 1.47 diff -u -u -r1.47 rf_map.c --- rf_map.c 15 Oct 2016 20:31:15 -0000 1.47 +++ rf_map.c 9 Feb 2019 03:12:51 -0000 @@ -129,7 +129,7 @@ RF_ASSERT(asmList); t_asm = asmList; asmList = asmList->next; - memset((char *) t_asm, 0, sizeof(RF_AccessStripeMap_t)); + memset(t_asm, 0, sizeof(*t_asm)); if (!asm_p) asm_list = asm_p = t_asm; else { @@ -157,7 +157,7 @@ RF_ASSERT(pdaList); t_pda = pdaList; pdaList = pdaList->next; - memset((char *) t_pda, 0, sizeof(RF_PhysDiskAddr_t)); + memset(t_pda, 0, sizeof(*t_pda)); if (!pda_p) asm_p->physInfo = pda_p = t_pda; else { @@ -200,7 +200,7 @@ RF_ASSERT(pdaList); t_pda = pdaList; pdaList = pdaList->next; - memset((char *) t_pda, 0, sizeof(RF_PhysDiskAddr_t)); + memset(t_pda, 0, sizeof(*t_pda)); pda_p = asm_p->parityInfo = t_pda; pda_p->type = RF_PDA_TYPE_PARITY; (layoutPtr->map->MapParity) (raidPtr, rf_RaidAddressOfPrevStripeUnitBoundary(layoutPtr, startAddrWithinStripe), @@ -217,12 +217,12 @@ RF_ASSERT(pdaList && pdaList->next); t_pda = pdaList; pdaList = pdaList->next; - memset((char *) t_pda, 0, sizeof(RF_PhysDiskAddr_t)); + memset(t_pda, 0, sizeof(*t_pda)); pda_p = asm_p->parityInfo = t_pda; pda_p->type = RF_PDA_TYPE_PARITY; t_pda = pdaList; pdaList = pdaList->next; - memset((char *) t_pda, 0, sizeof(RF_PhysDiskAddr_t)); + memset(t_pda, 0, sizeof(*t_pda)); pda_q = asm_p->qInfo = t_pda; pda_q->type = RF_PDA_TYPE_Q; (layoutPtr->map->MapParity) (raidPtr, rf_RaidAddressOfPrevStripeUnitBoundary(layoutPtr, startAddrWithinStripe), @@ -278,8 +278,8 @@ asmap->numParityFailed = 0; asmap->numQFailed = 0; asmap->numFailedPDAs = 0; - memset((char *) asmap->failedPDAs, 0, - RF_MAX_FAILED_PDA * sizeof(RF_PhysDiskAddr_t *)); + memset(asmap->failedPDAs, 0, + RF_MAX_FAILED_PDA * sizeof(*asmap->failedPDAs)); for (pda = asmap->physInfo; pda; pda = pda->next) { if (RF_DEAD_DISK(disks[pda->col].status)) { asmap->numDataFailed++; @@ -379,7 +379,7 @@ RF_AccessStripeMapHeader_t *p; p = pool_get(&rf_pools.asm_hdr, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_AccessStripeMapHeader_t)); + memset(p, 0, sizeof(*p)); return (p); } @@ -397,7 +397,7 @@ RF_VoidFunctionPointerListElem_t *p; p = pool_get(&rf_pools.vfple, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_VoidFunctionPointerListElem_t)); + memset(p, 0, sizeof(*p)); return (p); } @@ -416,7 +416,7 @@ RF_VoidPointerListElem_t *p; p = pool_get(&rf_pools.vple, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_VoidPointerListElem_t)); + memset(p, 0, sizeof(*p)); return (p); } @@ -434,7 +434,7 @@ RF_ASMHeaderListElem_t *p; p = pool_get(&rf_pools.asmhle, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_ASMHeaderListElem_t)); + memset(p, 0, sizeof(*p)); return (p); } @@ -452,7 +452,7 @@ RF_FailedStripe_t *p; p = pool_get(&rf_pools.fss, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_FailedStripe_t)); + memset(p, 0, sizeof(*p)); return (p); } @@ -473,7 +473,7 @@ RF_PhysDiskAddr_t *p; p = pool_get(&rf_pools.pda, PR_WAITOK); - memset((char *) p, 0, sizeof(RF_PhysDiskAddr_t)); + memset(p, 0, sizeof(*p)); return (p); } Index: rf_netbsdkintf.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_netbsdkintf.c,v retrieving revision 1.373 diff -u -u -r1.373 rf_netbsdkintf.c --- rf_netbsdkintf.c 7 Feb 2019 03:03:00 -0000 1.373 +++ rf_netbsdkintf.c 9 Feb 2019 03:12:51 -0000 @@ -1107,7 +1107,7 @@ /* make a copy of the recon request so that we don't rely on * the user's buffer */ - RF_Malloc(rrint, sizeof(*rrint), (struct rf_recon_req_internal *)); + rrint = RF_Malloc(sizeof(*rrint)); if (rrint == NULL) return(ENOMEM); rrint->col = rr->col; @@ -1134,7 +1134,7 @@ } u_char *specific_buf; - RF_Malloc(specific_buf, k_cfg->layoutSpecificSize, (u_char *)); + specific_buf = RF_Malloc(k_cfg->layoutSpecificSize); if (specific_buf == NULL) return ENOMEM; @@ -1163,7 +1163,7 @@ /* copy-in the configuration information */ /* data points to a pointer to the configuration structure */ - RF_Malloc(*k_cfg, sizeof(RF_Config_t), (RF_Config_t *)); + *k_cfg = RF_Malloc(sizeof(**k_cfg)); if (*k_cfg == NULL) { return ENOMEM; } @@ -1358,7 +1358,7 @@ rf_unlock_mutex2(raidPtr->mutex); struct rf_recon_req_internal *rrint; - RF_Malloc(rrint, sizeof(*rrint), (struct rf_recon_req_internal *)); + rrint = RF_Malloc(sizeof(*rrint)); if (rrint == NULL) return ENOMEM; @@ -1516,8 +1516,7 @@ case RAIDFRAME_GET_INFO: ucfgp = *(RF_DeviceConfig_t **)data; - RF_Malloc(d_cfg, sizeof(RF_DeviceConfig_t), - (RF_DeviceConfig_t *)); + d_cfg = RF_Malloc(sizeof(*d_cfg)); if (d_cfg == NULL) return ENOMEM; retcode = rf_get_info(raidPtr, d_cfg); @@ -1680,7 +1679,7 @@ /* wakes up a process waiting on SPARET_WAIT and puts an error * code in it that will cause the dameon to exit */ case RAIDFRAME_ABORT_SPARET_WAIT: - RF_Malloc(waitreq, sizeof(*waitreq), (RF_SparetWait_t *)); + waitreq = RF_Malloc(sizeof(*waitreq)); waitreq->fcol = -1; rf_lock_mutex2(rf_sparet_wait_mutex); waitreq->next = rf_sparet_wait_queue; @@ -1698,7 +1697,7 @@ /* respond to the requestor. the return status of the spare * table installation is passed in the "fcol" field */ - RF_Malloc(waitreq, sizeof(*waitreq), (RF_SparetWait_t *)); + waitred = RF_Malloc(sizeof(*waitreq)); waitreq->fcol = retcode; rf_lock_mutex2(rf_sparet_wait_mutex); waitreq->next = rf_sparet_resp_queue; Index: rf_paritylog.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_paritylog.c,v retrieving revision 1.18 diff -u -u -r1.18 rf_paritylog.c --- rf_paritylog.c 11 May 2011 06:03:06 -0000 1.18 +++ rf_paritylog.c 9 Feb 2019 03:12:51 -0000 @@ -74,7 +74,7 @@ rf_unlock_mutex2(raidPtr->parityLogDiskQueue.mutex); } else { rf_unlock_mutex2(raidPtr->parityLogDiskQueue.mutex); - RF_Malloc(common, sizeof(RF_CommonLogData_t), (RF_CommonLogData_t *)); + common = RF_Malloc(sizeof(*common)); /* destroy is in rf_paritylogging.c */ rf_init_mutex2(common->mutex, IPL_VM); } @@ -114,7 +114,7 @@ rf_unlock_mutex2(raidPtr->parityLogDiskQueue.mutex); } else { rf_unlock_mutex2(raidPtr->parityLogDiskQueue.mutex); - RF_Malloc(data, sizeof(RF_ParityLogData_t), (RF_ParityLogData_t *)); + data = RF_Malloc(sizeof(*data)); } data->next = NULL; data->prev = NULL; Index: rf_paritylogDiskMgr.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_paritylogDiskMgr.c,v retrieving revision 1.28 diff -u -u -r1.28 rf_paritylogDiskMgr.c --- rf_paritylogDiskMgr.c 11 May 2011 06:20:33 -0000 1.28 +++ rf_paritylogDiskMgr.c 9 Feb 2019 03:12:51 -0000 @@ -134,8 +134,6 @@ RF_IO_NORMAL_PRIORITY); /* create and initialize PDA for the core log */ - /* RF_Malloc(*rrd_pda, sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t - * *)); */ *rrd_pda = rf_AllocPDAList(1); rf_MapLogParityLogging(raidPtr, regionID, 0, &((*rrd_pda)->col), &((*rrd_pda)->startSector)); @@ -146,8 +144,7 @@ printf("set rrd_pda->next to NULL\n"); } /* initialize DAG parameters */ - RF_Malloc(tracerec,sizeof(RF_AccTraceEntry_t), (RF_AccTraceEntry_t *)); - memset((char *) tracerec, 0, sizeof(RF_AccTraceEntry_t)); + tracerec = RF_Malloc(sizeof(*tracerec)); (*rrd_dag_h)->tracerec = tracerec; rrd_rdNode = (*rrd_dag_h)->succedents[0]->succedents[0]; rrd_rdNode->params[0].p = *rrd_pda; @@ -187,9 +184,6 @@ rf_DiskWriteFunc, rf_DiskWriteUndoFunc, "Wcl", *fwr_alloclist, RF_DAG_FLAGS_NONE, RF_IO_NORMAL_PRIORITY); - /* create and initialize PDA for the region log */ - /* RF_Malloc(*fwr_pda, sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t - * *)); */ *fwr_pda = rf_AllocPDAList(1); regionOffset = log->diskOffset; rf_MapLogParityLogging(raidPtr, regionID, regionOffset, @@ -198,8 +192,7 @@ (*fwr_pda)->numSector = raidPtr->numSectorsPerLog; /* initialize DAG parameters */ - RF_Malloc(tracerec,sizeof(RF_AccTraceEntry_t), (RF_AccTraceEntry_t *)); - memset((char *) tracerec, 0, sizeof(RF_AccTraceEntry_t)); + tracerec = RF_Malloc(sizeof(*tracerec)); (*fwr_dag_h)->tracerec = tracerec; fwr_wrNode = (*fwr_dag_h)->succedents[0]->succedents[0]; fwr_wrNode->params[0].p = *fwr_pda; @@ -239,8 +232,6 @@ RF_IO_NORMAL_PRIORITY); /* create and initialize PDA for region parity */ - /* RF_Malloc(*prd_pda, sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t - * *)); */ *prd_pda = rf_AllocPDAList(1); rf_MapRegionParity(raidPtr, regionID, &((*prd_pda)->col), &((*prd_pda)->startSector), @@ -253,8 +244,7 @@ printf("set prd_pda->next to NULL\n"); } /* initialize DAG parameters */ - RF_Malloc(tracerec,sizeof(RF_AccTraceEntry_t), (RF_AccTraceEntry_t *)); - memset((char *) tracerec, 0, sizeof(RF_AccTraceEntry_t)); + tracerec = RF_Malloc(sizeof(*tracerec)); (*prd_dag_h)->tracerec = tracerec; prd_rdNode = (*prd_dag_h)->succedents[0]->succedents[0]; prd_rdNode->params[0].p = *prd_pda; @@ -297,16 +287,13 @@ RF_IO_NORMAL_PRIORITY); /* create and initialize PDA for region parity */ - /* RF_Malloc(*pwr_pda, sizeof(RF_PhysDiskAddr_t), (RF_PhysDiskAddr_t - * *)); */ *pwr_pda = rf_AllocPDAList(1); rf_MapRegionParity(raidPtr, regionID, &((*pwr_pda)->col), &((*pwr_pda)->startSector), &((*pwr_pda)->numSector)); /* initialize DAG parameters */ - RF_Malloc(tracerec,sizeof(RF_AccTraceEntry_t), (RF_AccTraceEntry_t *)); - memset((char *) tracerec, 0, sizeof(RF_AccTraceEntry_t)); + tracerec = RF_Malloc(sizeof(*tracerec)); (*pwr_dag_h)->tracerec = tracerec; pwr_wrNode = (*pwr_dag_h)->succedents[0]->succedents[0]; pwr_wrNode->params[0].p = *pwr_pda; Index: rf_paritylogging.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_paritylogging.c,v retrieving revision 1.34 diff -u -u -r1.34 rf_paritylogging.c --- rf_paritylogging.c 11 May 2011 06:20:33 -0000 1.34 +++ rf_paritylogging.c 9 Feb 2019 03:12:51 -0000 @@ -97,9 +97,7 @@ raidPtr->numSectorsPerLog = RF_DEFAULT_NUM_SECTORS_PER_LOG; /* create a parity logging configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_ParityLoggingConfigInfo_t), - (RF_ParityLoggingConfigInfo_t *), - raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; @@ -202,9 +200,8 @@ /* create region information structs */ printf("Allocating %d bytes for in-core parity region info\n", (int) (rf_numParityRegions * sizeof(RF_RegionInfo_t))); - RF_Malloc(raidPtr->regionInfo, - (rf_numParityRegions * sizeof(RF_RegionInfo_t)), - (RF_RegionInfo_t *)); + raidPtr->regionInfo = RF_Malloc( + rf_numParityRegions * sizeof(*raidPtr->regionInfo)); if (raidPtr->regionInfo == NULL) return (ENOMEM); @@ -228,17 +225,17 @@ raidPtr->numParityLogs * raidPtr->numSectorsPerLog * raidPtr->bytesPerSector, raidPtr->numParityLogs); - RF_Malloc(raidPtr->parityLogBufferHeap, raidPtr->numParityLogs * - raidPtr->numSectorsPerLog * raidPtr->bytesPerSector, - (void *)); + raidPtr->parityLogBufferHeap = RF_Malloc(raidPtr->numParityLogs + * raidPtr->numSectorsPerLog * raidPtr->bytesPerSector); if (raidPtr->parityLogBufferHeap == NULL) return (ENOMEM); lHeapPtr = raidPtr->parityLogBufferHeap; rf_init_mutex2(raidPtr->parityLogPool.mutex, IPL_VM); for (i = 0; i < raidPtr->numParityLogs; i++) { if (i == 0) { - RF_Malloc(raidPtr->parityLogPool.parityLogs, - sizeof(RF_ParityLog_t), (RF_ParityLog_t *)); + raidPtr->parityLogPool.parityLogs = + RF_Malloc( + sizeof(*raidPtr->parityLogPool.parityLogs)); if (raidPtr->parityLogPool.parityLogs == NULL) { RF_Free(raidPtr->parityLogBufferHeap, raidPtr->numParityLogs * @@ -248,8 +245,7 @@ } l = raidPtr->parityLogPool.parityLogs; } else { - RF_Malloc(l->next, sizeof(RF_ParityLog_t), - (RF_ParityLog_t *)); + l->next = RF_Malloc(sizeof(*l->next)); if (l->next == NULL) { RF_Free(raidPtr->parityLogBufferHeap, raidPtr->numParityLogs * @@ -270,9 +266,8 @@ l->bufPtr = lHeapPtr; lHeapPtr = (char *)lHeapPtr + raidPtr->numSectorsPerLog * raidPtr->bytesPerSector; - RF_Malloc(l->records, (raidPtr->numSectorsPerLog * - sizeof(RF_ParityLogRecord_t)), - (RF_ParityLogRecord_t *)); + l->records = RF_Malloc(raidPtr->numSectorsPerLog * + sizeof(*l->records)); if (l->records == NULL) { RF_Free(raidPtr->parityLogBufferHeap, raidPtr->numParityLogs * @@ -310,9 +305,9 @@ printf("Allocating %d bytes for regionBufferPool\n", (int) (raidPtr->regionBufferPool.totalBuffers * sizeof(void *))); - RF_Malloc(raidPtr->regionBufferPool.buffers, - raidPtr->regionBufferPool.totalBuffers * sizeof(void *), - (void **)); + raidPtr->regionBufferPool.buffers = RF_Malloc( + raidPtr->regionBufferPool.totalBuffers * + sizeof(*raidPtr->regionBufferPool.buffers)); if (raidPtr->regionBufferPool.buffers == NULL) { return (ENOMEM); } @@ -320,9 +315,8 @@ printf("Allocating %d bytes for regionBufferPool#%d\n", (int) (raidPtr->regionBufferPool.bufferSize * sizeof(char)), i); - RF_Malloc(raidPtr->regionBufferPool.buffers[i], - raidPtr->regionBufferPool.bufferSize * sizeof(char), - (void *)); + raidPtr->regionBufferPool.buffers[i] = + RF_Malloc(raidPtr->regionBufferPool.bufferSize); if (raidPtr->regionBufferPool.buffers[i] == NULL) { for (j = 0; j < i; j++) { RF_Free(raidPtr->regionBufferPool.buffers[i], @@ -360,9 +354,9 @@ (int) (raidPtr->parityBufferPool.totalBuffers * sizeof(void *)), raidPtr->parityBufferPool.totalBuffers ); - RF_Malloc(raidPtr->parityBufferPool.buffers, - raidPtr->parityBufferPool.totalBuffers * sizeof(void *), - (void **)); + raidPtr->parityBufferPool.buffers = RF_Malloc( + raidPtr->parityBufferPool.totalBuffers * + sizeof(*raidPtr->parityBufferPool.buffers)); if (raidPtr->parityBufferPool.buffers == NULL) { return (ENOMEM); } @@ -370,9 +364,8 @@ printf("Allocating %d bytes for parityBufferPool#%d\n", (int) (raidPtr->parityBufferPool.bufferSize * sizeof(char)),i); - RF_Malloc(raidPtr->parityBufferPool.buffers[i], - raidPtr->parityBufferPool.bufferSize * sizeof(char), - (void *)); + raidPtr->parityBufferPool.buffers[i] = RF_Malloc( + raidPtr->parityBufferPool.bufferSize); if (raidPtr->parityBufferPool.buffers == NULL) { for (j = 0; j < i; j++) { RF_Free(raidPtr->parityBufferPool.buffers[i], @@ -443,10 +436,9 @@ printf("Allocating %d bytes for region %d\n", (int) (raidPtr->regionInfo[i].capacity * sizeof(RF_DiskMap_t)), i); - RF_Malloc(raidPtr->regionInfo[i].diskMap, - (raidPtr->regionInfo[i].capacity * - sizeof(RF_DiskMap_t)), - (RF_DiskMap_t *)); + raidPtr->regionInfo[i].diskMap = RF_Malloc( + raidPtr->regionInfo[i].capacity * + sizeof(*raidPtr->regionInfo[i].diskMap)); if (raidPtr->regionInfo[i].diskMap == NULL) { for (j = 0; j < i; j++) FreeRegionInfo(raidPtr, j); Index: rf_parityloggingdags.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_parityloggingdags.c,v retrieving revision 1.21 diff -u -u -r1.21 rf_parityloggingdags.c --- rf_parityloggingdags.c 23 Mar 2014 09:30:59 -0000 1.21 +++ rf_parityloggingdags.c 9 Feb 2019 03:12:51 -0000 @@ -102,8 +102,7 @@ /* alloc the Wnd nodes, the xor node, and the Lpo node */ nWndNodes = asmap->numStripeUnitsAccessed; - RF_MallocAndAdd(nodes, (nWndNodes + 6) * sizeof(RF_DagNode_t), - (RF_DagNode_t *), allocList); + nodes = RF_MallocAndAdd((nWndNodes + 6) * sizeof(*nodes), allocList); i = 0; wndNodes = &nodes[i]; i += nWndNodes; @@ -126,8 +125,8 @@ rf_MapUnaccessedPortionOfStripe(raidPtr, layoutPtr, asmap, dag_h, new_asm_h, &nRodNodes, &sosBuffer, &eosBuffer, allocList); if (nRodNodes > 0) - RF_MallocAndAdd(rodNodes, nRodNodes * sizeof(RF_DagNode_t), - (RF_DagNode_t *), allocList); + rodNodes = RF_MallocAndAdd(nRodNodes * sizeof(*rodNodes), + allocList); /* begin node initialization */ rf_InitNode(blockNode, rf_wait, RF_FALSE, rf_NullNodeFunc, rf_NullNodeUndoFunc, NULL, nRodNodes + 1, 0, 0, 0, dag_h, "Nil", allocList); @@ -186,8 +185,8 @@ if (((RF_PhysDiskAddr_t *) rodNodes[i].params[0].p)->numSector == raidPtr->Layout.sectorsPerStripeUnit) break; if (i == nRodNodes) { - RF_MallocAndAdd(xorNode->results[0], - rf_RaidAddressToByte(raidPtr, raidPtr->Layout.sectorsPerStripeUnit), (void *), allocList); + xorNode->results[0] = RF_MallocAndAdd(rf_RaidAddressToByte( + raidPtr, raidPtr->Layout.sectorsPerStripeUnit), allocList); } else { xorNode->results[0] = rodNodes[i].params[1].p; } @@ -368,8 +367,7 @@ dag_h->numSuccedents = 1; /* Step 2. create the nodes */ - RF_MallocAndAdd(nodes, totalNumNodes * sizeof(RF_DagNode_t), - (RF_DagNode_t *), allocList); + nodes = RF_MallocAndAdd(totalNumNodes * sizeof(*nodes), allocList); i = 0; blockNode = &nodes[i]; i += 1; Index: rf_paritymap.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_paritymap.c,v retrieving revision 1.8 diff -u -u -r1.8 rf_paritymap.c --- rf_paritymap.c 27 Apr 2011 07:55:15 -0000 1.8 +++ rf_paritymap.c 9 Feb 2019 03:12:51 -0000 @@ -231,8 +231,7 @@ rf_paritymap_invalidate(struct rf_paritymap *pm) { mutex_enter(&pm->lock); - memset(pm->disk_boot, ~(unsigned char)0, - sizeof(struct rf_paritymap_ondisk)); + memset(pm->disk_boot, (unsigned char)~0, sizeof(*pm->disk_boot)); mutex_exit(&pm->lock); } @@ -241,8 +240,7 @@ rf_paritymap_forceclean(struct rf_paritymap *pm) { mutex_enter(&pm->lock); - memset(pm->disk_boot, (unsigned char)0, - sizeof(struct rf_paritymap_ondisk)); + memset(pm->disk_boot, 0, sizeof(*pm->disk_boot)); mutex_exit(&pm->lock); } Index: rf_parityscan.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_parityscan.c,v retrieving revision 1.34 diff -u -u -r1.34 rf_parityscan.c --- rf_parityscan.c 1 May 2011 01:09:05 -0000 1.34 +++ rf_parityscan.c 9 Feb 2019 03:12:51 -0000 @@ -220,8 +220,9 @@ mcpair = rf_AllocMCPair(); rf_MakeAllocList(alloclist); - RF_MallocAndAdd(bf, numbytes * (layoutPtr->numDataCol + layoutPtr->numParityCol), (char *), alloclist); - RF_MallocAndAdd(pbuf, numbytes, (char *), alloclist); + bf = RF_MallocAndAdd(numbytes + * (layoutPtr->numDataCol + layoutPtr->numParityCol), alloclist); + pbuf = RF_MallocAndAdd(numbytes, alloclist); end_p = bf + bytesPerStripe; rd_dag_h = rf_MakeSimpleDAG(raidPtr, stripeWidth, numbytes, bf, rf_DiskReadFunc, rf_DiskReadUndoFunc, @@ -253,7 +254,7 @@ /* fire off the DAG */ #if RF_ACC_TRACE > 0 - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); rd_dag_h->tracerec = &tracerec; #endif #if 0 @@ -299,7 +300,7 @@ wrBlock->succedents[0]->params[2].v = psID; wrBlock->succedents[0]->params[3].v = RF_CREATE_PARAM3(RF_IO_NORMAL_PRIORITY, which_ru); #if RF_ACC_TRACE > 0 - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); wr_dag_h->tracerec = &tracerec; #endif #if 0 Index: rf_psstatus.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_psstatus.c,v retrieving revision 1.34 diff -u -u -r1.34 rf_psstatus.c --- rf_psstatus.c 3 May 2011 08:18:43 -0000 1.34 +++ rf_psstatus.c 9 Feb 2019 03:12:51 -0000 @@ -102,9 +102,7 @@ RF_PSStatusHeader_t *pssTable; int i; - RF_Malloc(pssTable, - raidPtr->pssTableSize * sizeof(RF_PSStatusHeader_t), - (RF_PSStatusHeader_t *)); + pssTable = RF_Malloc(raidPtr->pssTableSize * sizeof(*pssTable)); for (i = 0; i < raidPtr->pssTableSize; i++) { rf_init_mutex2(pssTable[i].mutex, IPL_VM); rf_init_cond2(pssTable[i].cond, "rfpsslk"); @@ -272,7 +270,7 @@ RF_ReconParityStripeStatus_t *p; p = pool_get(&rf_pools.pss, PR_WAITOK); - memset(p, 0, sizeof(RF_ReconParityStripeStatus_t)); + memset(p, 0, sizeof(*p)); return (p); } Index: rf_raid0.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_raid0.c,v retrieving revision 1.15 diff -u -u -r1.15 rf_raid0.c --- rf_raid0.c 16 Nov 2006 01:33:23 -0000 1.15 +++ rf_raid0.c 9 Feb 2019 03:12:51 -0000 @@ -60,12 +60,13 @@ RF_RowCol_t i; /* create a RAID level 0 configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_Raid0ConfigInfo_t), (RF_Raid0ConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; - RF_MallocAndAdd(info->stripeIdentifier, raidPtr->numCol * sizeof(RF_RowCol_t), (RF_RowCol_t *), raidPtr->cleanupList); + info->stripeIdentifier = RF_MallocAndAdd(raidPtr->numCol + * sizeof(*info->stripeIdentifier), raidPtr->cleanupList); if (info->stripeIdentifier == NULL) return (ENOMEM); for (i = 0; i < raidPtr->numCol; i++) Index: rf_raid1.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_raid1.c,v retrieving revision 1.35 diff -u -u -r1.35 rf_raid1.c --- rf_raid1.c 15 Sep 2013 12:47:26 -0000 1.35 +++ rf_raid1.c 9 Feb 2019 03:12:51 -0000 @@ -66,7 +66,7 @@ RF_RowCol_t i; /* create a RAID level 1 configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_Raid1ConfigInfo_t), (RF_Raid1ConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; @@ -292,7 +292,7 @@ RF_ASSERT(layoutPtr->numDataCol == layoutPtr->numParityCol); stripeWidth = layoutPtr->numDataCol + layoutPtr->numParityCol; bcount = nbytes * (layoutPtr->numDataCol + layoutPtr->numParityCol); - RF_MallocAndAdd(bf, bcount, (char *), allocList); + bf = RF_MallocAndAdd(bcount, allocList); if (bf == NULL) goto done; #if RF_DEBUG_VERIFYPARITY @@ -368,7 +368,7 @@ RF_ASSERT(pda == NULL); #if RF_ACC_TRACE > 0 - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); rd_dag_h->tracerec = &tracerec; #endif #if 0 @@ -409,7 +409,7 @@ * and column 1 of the array are mirror copies, and are considered * "data column 0" for this purpose). */ - RF_MallocAndAdd(bbufs, layoutPtr->numParityCol * sizeof(int), (int *), + bbufs = RF_MallocAndAdd(layoutPtr->numParityCol * sizeof(*bbufs), allocList); nbad = 0; /* @@ -488,7 +488,7 @@ wrBlock->succedents[i]->params[3].v = RF_CREATE_PARAM3(RF_IO_NORMAL_PRIORITY, which_ru); } #if RF_ACC_TRACE > 0 - memset((char *) &tracerec, 0, sizeof(tracerec)); + memset(&tracerec, 0, sizeof(tracerec)); wr_dag_h->tracerec = &tracerec; #endif #if 0 Index: rf_raid4.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_raid4.c,v retrieving revision 1.12 diff -u -u -r1.12 rf_raid4.c --- rf_raid4.c 16 Nov 2006 01:33:23 -0000 1.12 +++ rf_raid4.c 9 Feb 2019 03:12:51 -0000 @@ -62,13 +62,14 @@ int i; /* create a RAID level 4 configuration structure ... */ - RF_MallocAndAdd(info, sizeof(RF_Raid4ConfigInfo_t), (RF_Raid4ConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; /* ... and fill it in. */ - RF_MallocAndAdd(info->stripeIdentifier, raidPtr->numCol * sizeof(RF_RowCol_t), (RF_RowCol_t *), raidPtr->cleanupList); + info->stripeIdentifier = RF_MallocAndAdd(raidPtr->numCol * + sizeof(*info->stripeIdentifier), raidPtr->cleanupList); if (info->stripeIdentifier == NULL) return (ENOMEM); for (i = 0; i < raidPtr->numCol; i++) Index: rf_raid5.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_raid5.c,v retrieving revision 1.19 diff -u -u -r1.19 rf_raid5.c --- rf_raid5.c 16 Nov 2006 01:33:23 -0000 1.19 +++ rf_raid5.c 9 Feb 2019 03:12:51 -0000 @@ -63,7 +63,7 @@ RF_RowCol_t i, j, startdisk; /* create a RAID level 5 configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_Raid5ConfigInfo_t), (RF_Raid5ConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; Index: rf_raid5_rotatedspare.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_raid5_rotatedspare.c,v retrieving revision 1.13 diff -u -u -r1.13 rf_raid5_rotatedspare.c --- rf_raid5_rotatedspare.c 14 Mar 2009 15:36:20 -0000 1.13 +++ rf_raid5_rotatedspare.c 9 Feb 2019 03:12:51 -0000 @@ -64,7 +64,7 @@ RF_RowCol_t i, j, startdisk; /* create a RAID level 5 configuration structure */ - RF_MallocAndAdd(info, sizeof(RF_Raid5RSConfigInfo_t), (RF_Raid5RSConfigInfo_t *), raidPtr->cleanupList); + info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); if (info == NULL) return (ENOMEM); layoutPtr->layoutSpecificInfo = (void *) info; Index: rf_reconmap.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_reconmap.c,v retrieving revision 1.36 diff -u -u -r1.36 rf_reconmap.c --- rf_reconmap.c 14 Nov 2017 14:27:54 -0000 1.36 +++ rf_reconmap.c 9 Feb 2019 03:12:51 -0000 @@ -88,7 +88,7 @@ RF_ReconMap_t *p; int error; - RF_Malloc(p, sizeof(RF_ReconMap_t), (RF_ReconMap_t *)); + p = RF_Malloc(sizeof(*p)); p->sectorsPerReconUnit = ru_sectors; p->sectorsInDisk = disk_sectors; @@ -100,12 +100,9 @@ p->high_ru = p->status_size - 1; p->head = 0; - RF_Malloc(p->status, p->status_size * sizeof(RF_ReconMapListElem_t *), (RF_ReconMapListElem_t **)); + p->status = RF_Malloc(p->status_size * sizeof(*p->status)); RF_ASSERT(p->status != NULL); - (void) memset((char *) p->status, 0, - p->status_size * sizeof(RF_ReconMapListElem_t *)); - pool_init(&p->elem_pool, sizeof(RF_ReconMapListElem_t), 0, 0, 0, "raidreconpl", NULL, IPL_BIO); if ((error = pool_prime(&p->elem_pool, RF_NUM_RECON_POOL_ELEM)) != 0) Index: rf_reconstruct.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_reconstruct.c,v retrieving revision 1.121 diff -u -u -r1.121 rf_reconstruct.c --- rf_reconstruct.c 14 Nov 2014 14:29:16 -0000 1.121 +++ rf_reconstruct.c 9 Feb 2019 03:12:51 -0000 @@ -169,8 +169,7 @@ RF_RaidReconDesc_t *reconDesc; - RF_Malloc(reconDesc, sizeof(RF_RaidReconDesc_t), - (RF_RaidReconDesc_t *)); + reconDesc = RF_Malloc(sizeof(*reconDesc)); reconDesc->raidPtr = raidPtr; reconDesc->col = col; reconDesc->spareDiskPtr = spareDiskPtr; @@ -579,7 +578,8 @@ raidPtr->accumXorTimeUs = 0; #if RF_ACC_TRACE > 0 /* create one trace record per physical disk */ - RF_Malloc(raidPtr->recon_tracerecs, raidPtr->numCol * sizeof(RF_AccTraceEntry_t), (RF_AccTraceEntry_t *)); + raidPtr->recon_tracerecs = + RF_Malloc(raidPtr->numCol * sizeof(*raidPtr->recon_tracerecs)); #endif /* quiesce the array prior to starting recon. this is needed @@ -1220,7 +1220,7 @@ rbuf->parityStripeID = ctrl->curPSID; rbuf->which_ru = ctrl->ru_count; #if RF_ACC_TRACE > 0 - memset((char *) &raidPtr->recon_tracerecs[col], 0, + memset(&raidPtr->recon_tracerecs[col], 0, sizeof(raidPtr->recon_tracerecs[col])); raidPtr->recon_tracerecs[col].reconacc = 1; RF_ETIMER_START(raidPtr->recon_tracerecs[col].recon_timer); Index: rf_reconutil.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_reconutil.c,v retrieving revision 1.36 diff -u -u -r1.36 rf_reconutil.c --- rf_reconutil.c 18 Jan 2018 00:32:49 -0000 1.36 +++ rf_reconutil.c 9 Feb 2019 03:12:51 -0000 @@ -73,11 +73,11 @@ /* make and zero the global reconstruction structure and the per-disk * structure */ - RF_Malloc(reconCtrlPtr, sizeof(RF_ReconCtrl_t), (RF_ReconCtrl_t *)); + reconCtrlPtr = RF_Malloc(sizeof(*reconCtrlPtr)); /* note: this zeros the perDiskInfo */ - RF_Malloc(reconCtrlPtr->perDiskInfo, raidPtr->numCol * - sizeof(RF_PerDiskReconCtrl_t), (RF_PerDiskReconCtrl_t *)); + reconCtrlPtr->perDiskInfo = RF_Malloc(raidPtr->numCol * + sizeof(*reconCtrlPtr->perDiskInfo)); reconCtrlPtr->reconDesc = reconDesc; reconCtrlPtr->fcol = fcol; reconCtrlPtr->spareCol = scol; @@ -232,7 +232,7 @@ u_int recon_buffer_size = rf_RaidAddressToByte(raidPtr, layoutPtr->SUsPerRU * layoutPtr->sectorsPerStripeUnit); t = pool_get(&rf_pools.reconbuffer, PR_WAITOK); - RF_Malloc(t->buffer, recon_buffer_size, (void *)); + t->buffer = RF_Malloc(recon_buffer_size); t->raidPtr = raidPtr; t->col = col; t->priority = RF_IO_RECON_PRIORITY; Index: rf_sstf.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_sstf.c,v retrieving revision 1.16 diff -u -u -r1.16 rf_sstf.c --- rf_sstf.c 14 Mar 2009 15:36:20 -0000 1.16 +++ rf_sstf.c 9 Feb 2019 03:12:51 -0000 @@ -246,7 +246,7 @@ { RF_Sstf_t *sstfq; - RF_MallocAndAdd(sstfq, sizeof(RF_Sstf_t), (RF_Sstf_t *), cl_list); + sstfq = RF_MallocAndAdd(sizeof(*sstfq), cl_list); sstfq->dir = DIR_EITHER; sstfq->allow_reverse = 1; return ((void *) sstfq); @@ -260,7 +260,7 @@ { RF_Sstf_t *scanq; - RF_MallocAndAdd(scanq, sizeof(RF_Sstf_t), (RF_Sstf_t *), cl_list); + scanq = RF_MallocAndAdd(sizeof(*scanq), cl_list); scanq->dir = DIR_RIGHT; scanq->allow_reverse = 1; return ((void *) scanq); @@ -274,7 +274,7 @@ { RF_Sstf_t *cscanq; - RF_MallocAndAdd(cscanq, sizeof(RF_Sstf_t), (RF_Sstf_t *), cl_list); + cscanq = RF_MallocAndAdd(sizeof(*cscanq), cl_list); cscanq->dir = DIR_RIGHT; return ((void *) cscanq); } Index: rf_stripelocks.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_stripelocks.c,v retrieving revision 1.32 diff -u -u -r1.32 rf_stripelocks.c --- rf_stripelocks.c 5 May 2011 08:21:29 -0000 1.32 +++ rf_stripelocks.c 9 Feb 2019 03:12:51 -0000 @@ -199,9 +199,7 @@ RF_LockTableEntry_t *lockTable; int i; - RF_Malloc(lockTable, - ((int) rf_lockTableSize) * sizeof(RF_LockTableEntry_t), - (RF_LockTableEntry_t *)); + lockTable = RF_Malloc(rf_lockTableSize * sizeof(*lockTable)); if (lockTable == NULL) return (NULL); for (i = 0; i < rf_lockTableSize; i++) { Index: rf_utils.c =================================================================== RCS file: /cvsroot/src/sys/dev/raidframe/rf_utils.c,v retrieving revision 1.16 diff -u -u -r1.16 rf_utils.c --- rf_utils.c 16 Nov 2006 01:33:23 -0000 1.16 +++ rf_utils.c 9 Feb 2019 03:12:51 -0000 @@ -46,10 +46,9 @@ { RF_RowCol_t **retval, i; - RF_MallocAndAdd(retval, b * sizeof(RF_RowCol_t *), (RF_RowCol_t **), allocList); + retval = RF_MallocAndAdd(b * sizeof(*retval), allocList); for (i = 0; i < b; i++) { - RF_MallocAndAdd(retval[i], k * sizeof(RF_RowCol_t), (RF_RowCol_t *), allocList); - (void) memset((char *) retval[i], 0, k * sizeof(RF_RowCol_t)); + retval[i] = RF_MallocAndAdd(k * sizeof(retval[i]), allocList); } return (retval); } @@ -73,8 +72,7 @@ { RF_RowCol_t *retval; - RF_MallocAndAdd(retval, c * sizeof(RF_RowCol_t), (RF_RowCol_t *), allocList); - (void) memset((char *) retval, 0, c * sizeof(RF_RowCol_t)); + retval = RF_MallocAndAdd(c * sizeof(*retval), allocList); return (retval); }