kernel: Use NELEM() where we can.
authorSascha Wildner <saw@online.de>
Mon, 17 Jan 2011 08:03:15 +0000 (09:03 +0100)
committerSascha Wildner <saw@online.de>
Mon, 17 Jan 2011 08:03:37 +0000 (09:03 +0100)
150 files changed:
sys/boot/common/commands.c
sys/bus/cam/scsi/scsi_all.c
sys/bus/isa/i386/isa_compat.h
sys/bus/isa/x86_64/isa_compat.h
sys/bus/pccard/pccard_cis_quirks.c
sys/bus/usb/usb_mem.c
sys/bus/usb/usb_subr.c
sys/ddb/db_variables.c
sys/dev/agp/agp.c
sys/dev/agp/agp_ali.c
sys/dev/agp/agp_x86_64.c
sys/dev/crypto/hifn/hifn7751.c
sys/dev/crypto/rndtest/rndtest.c
sys/dev/disk/advansys/adwlib.c
sys/dev/disk/ahci/ahci_dragonfly.c
sys/dev/disk/aic/aic.c
sys/dev/disk/aic/aic_isa.c
sys/dev/disk/ncr/ncr.c
sys/dev/disk/sym/sym_hipd.c
sys/dev/drm/drmP.h
sys/dev/drm/drm_sysctl.c
sys/dev/misc/kbd/atkbd.c
sys/dev/misc/kbd/atkbdc.c
sys/dev/misc/kbd/kbd.c
sys/dev/misc/kbdmux/kbdmux.c
sys/dev/misc/nsclpcsio/nsclpcsio_isa.c
sys/dev/misc/psm/psm.c
sys/dev/netif/acx/acx100.c
sys/dev/netif/acx/acx111.c
sys/dev/netif/age/if_age.c
sys/dev/netif/ale/if_ale.c
sys/dev/netif/ath/ath/if_ath.c
sys/dev/netif/ath/hal/ath_hal/ah.c
sys/dev/netif/ath/hal/ath_hal/ah_internal.h
sys/dev/netif/ath/hal/ath_hal/ar5210/ar5210_attach.c
sys/dev/netif/ath/hal/ath_hal/ar5211/ar5211_attach.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar2316.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar2317.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar2413.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar2425.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5111.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5112.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5212_attach.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5212_misc.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5212_reset.c
sys/dev/netif/ath/hal/ath_hal/ar5212/ar5413.c
sys/dev/netif/ath/hal/ath_hal/ar5416/ar2133.c
sys/dev/netif/ath/hal/ath_hal/ar5416/ar5416_misc.c
sys/dev/netif/ath/hal/ath_hal/ar5416/ar5416_reset.c
sys/dev/netif/ath/hal/ath_hal/ar5416/ar9280.c
sys/dev/netif/ath/hal/ath_hal/ar5416/ar9285_reset.c
sys/dev/netif/bwi/bwimac.c
sys/dev/netif/bwi/bwiphy.c
sys/dev/netif/bwi/bwirf.c
sys/dev/netif/bwi/if_bwi.c
sys/dev/netif/de/if_de.c
sys/dev/netif/de/if_devar.h
sys/dev/netif/ed/if_ed.c
sys/dev/netif/ed/if_ed_pccard.c
sys/dev/netif/iwi/if_iwi.c
sys/dev/netif/iwn/if_iwn.c
sys/dev/netif/mii_layer/truephy.c
sys/dev/netif/rtw/if_rtw_pci.c
sys/dev/netif/rtw/rtw.c
sys/dev/pccard/cardbus/cardbus_cis.c
sys/dev/powermng/kate/kate.c
sys/dev/powermng/lm/lm78.c
sys/dev/raid/mlx/mlx.c
sys/dev/serial/digi/digi.c
sys/dev/serial/digi/digi_isa.c
sys/dev/sound/pci/als4000.c
sys/dev/sound/pci/atiixp.c
sys/dev/sound/pci/cmi.c
sys/dev/sound/pci/cs4281.c
sys/dev/sound/pci/hda/hdac.c
sys/dev/sound/pci/ich.c
sys/dev/sound/pci/maestro3.c
sys/dev/usbmisc/ukbd/ukbd.c
sys/dev/usbmisc/uplcom/uplcom.c
sys/dev/video/bktr/bktr_core.c
sys/dev/video/fb/fb.c
sys/dev/video/fb/vga.c
sys/dev/video/i386/vesa/vesa.c
sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c
sys/kern/kern_intr.c
sys/kern/kern_slaballoc.c
sys/kern/kern_subr.c
sys/kern/sysv_msg.c
sys/kern/sysv_sem.c
sys/kern/sysv_shm.c
sys/kern/uipc_proto.c
sys/net/bridge/if_bridge.c
sys/net/i4b/capi/capi_l4if.c
sys/net/netisr.c
sys/netbt/bt_proto.c
sys/netbt/hci_socket.c
sys/netgraph/socket/ng_socket.c
sys/netgraph7/atm/ng_atm.c
sys/netgraph7/bluetooth/hci/ng_hci_misc.c
sys/netgraph7/bluetooth/socket/ng_btsocket.c
sys/netgraph7/ng_socket.c
sys/netinet/in_proto.c
sys/netinet6/esp_core.c
sys/netinet6/in6_proto.c
sys/netinet6/ip6_input.c
sys/netproto/802_11/wlan/ieee80211.c
sys/netproto/802_11/wlan/ieee80211_action.c
sys/netproto/802_11/wlan/ieee80211_mesh.c
sys/netproto/802_11/wlan/ieee80211_node.c
sys/netproto/802_11/wlan/ieee80211_phy.c
sys/netproto/802_11/wlan/ieee80211_proto.c
sys/netproto/802_11/wlan/ieee80211_scan_sta.c
sys/netproto/atalk/at_proto.c
sys/netproto/atm/atm_proto.c
sys/netproto/ipsec/key.c
sys/netproto/ipsec/key_var.h
sys/netproto/ipsec/keysock.c
sys/netproto/ipx/ipx_proto.c
sys/netproto/key/key.c
sys/netproto/key/key_var.h
sys/netproto/key/keydb.c
sys/netproto/key/keysock.c
sys/netproto/mpls/mpls_proto.c
sys/netproto/natm/natm_proto.c
sys/platform/pc32/apic/mpapic.c
sys/platform/pc32/i386/autoconf.c
sys/platform/pc32/i386/db_trace.c
sys/platform/pc32/i386/dump_machdep.c
sys/platform/pc32/i386/est.c
sys/platform/pc32/i386/i686_mem.c
sys/platform/pc32/i386/identcpu.c
sys/platform/pc32/i386/p4tcc.c
sys/platform/pc32/i386/sys_machdep.c
sys/platform/pc64/apic/mpapic.c
sys/platform/pc64/x86_64/autoconf.c
sys/platform/pc64/x86_64/db_trace.c
sys/platform/pc64/x86_64/dump_machdep.c
sys/platform/pc64/x86_64/est.c
sys/platform/pc64/x86_64/identcpu.c
sys/platform/pc64/x86_64/machdep.c
sys/platform/vkernel/i386/autoconf.c
sys/platform/vkernel/i386/db_trace.c
sys/platform/vkernel/platform/systimer.c
sys/platform/vkernel64/platform/systimer.c
sys/platform/vkernel64/x86_64/autoconf.c
sys/platform/vkernel64/x86_64/db_trace.c
sys/sys/dtype.h
sys/vfs/gnu/ext2fs/ext2_lookup.c
sys/vfs/procfs/procfs_vnops.c
sys/vm/vm_pager.c

index 7084ee9..8bb58ff 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/boot/common/commands.c,v 1.19 2003/08/25 23:30:41 obrien Exp $
- * $DragonFly: src/sys/boot/common/commands.c,v 1.4 2008/09/02 17:21:12 dillon Exp $
  */
 
 #include <stand.h>
@@ -514,7 +513,7 @@ static int CondIndex;
 static int
 command_ifexists(int argc, char *argv[])
 {
-       if (CondIndex + 1 == sizeof(CondStack)/sizeof(CondStack[0])) {
+       if (CondIndex + 1 == NELEM(CondStack)) {
                sprintf(command_errbuf, "if stack too deep");
                return(-1);
        } else if (argc != 2) {
@@ -541,7 +540,7 @@ COMMAND_SET_COND(ifset, "ifset", "conditional kenv variable present", command_if
 static int
 command_ifset(int argc, char *argv[])
 {
-       if (CondIndex + 1 == sizeof(CondStack)/sizeof(CondStack[0])) {
+       if (CondIndex + 1 == NELEM(CondStack)) {
                sprintf(command_errbuf, "if stack too deep");
                return(-1);
        } else if (argc != 2) {
index 9bf0656..e56f951 100644 (file)
@@ -626,7 +626,7 @@ scsi_op_desc(u_int16_t opcode, struct scsi_inquiry_data *inq_data)
                table[0] = ((struct scsi_op_quirk_entry *)match)->op_table;
                num_ops[0] = ((struct scsi_op_quirk_entry *)match)->num_ops;
                table[1] = scsi_op_codes;
-               num_ops[1] = sizeof(scsi_op_codes)/sizeof(scsi_op_codes[0]);
+               num_ops[1] = NELEM(scsi_op_codes);
                num_tables = 2;
        } else {
                /*      
@@ -637,7 +637,7 @@ scsi_op_desc(u_int16_t opcode, struct scsi_inquiry_data *inq_data)
                        return("Vendor Specific Command");
 
                table[0] = scsi_op_codes;
-               num_ops[0] = sizeof(scsi_op_codes)/sizeof(scsi_op_codes[0]);
+               num_ops[0] = NELEM(scsi_op_codes);
                num_tables = 1;
        }
 
@@ -707,8 +707,7 @@ const struct sense_key_table_entry sense_key_table[] =
        { SSD_KEY_RESERVED, SS_FATAL|EIO, "RESERVED" }
 };
 
-const int sense_key_table_size =
-    sizeof(sense_key_table)/sizeof(sense_key_table[0]);
+const int sense_key_table_size = NELEM(sense_key_table);
 
 static struct asc_table_entry quantum_fireball_entries[] = {
        { SST(0x04, 0x0b, SS_START | SSQ_DECREMENT_COUNT | ENXIO, 
@@ -745,8 +744,7 @@ static struct scsi_sense_quirk_entry sense_quirk_table[] = {
        }
 };
 
-const int sense_quirk_table_size =
-    sizeof(sense_quirk_table)/sizeof(sense_quirk_table[0]);
+const int sense_quirk_table_size = NELEM(sense_quirk_table);
 
 static struct asc_table_entry asc_table[] = {
        /*
@@ -2646,7 +2644,7 @@ static struct asc_table_entry asc_table[] = {
            "Security conflict in translated device") }
 };
 
-const int asc_table_size = sizeof(asc_table)/sizeof(asc_table[0]);
+const int asc_table_size = NELEM(asc_table);
 
 struct asc_key
 {
@@ -3493,7 +3491,7 @@ scsi_calc_syncsrate(u_int period_factor)
                return (3300);
        }
 
-       num_syncrates = sizeof(scsi_syncrates) / sizeof(scsi_syncrates[0]);
+       num_syncrates = NELEM(scsi_syncrates);
        /* See if the period is in the "exception" table */
        for (i = 0; i < num_syncrates; i++) {
 
@@ -3525,7 +3523,7 @@ scsi_calc_syncparam(u_int period)
 
        /* Adjust for exception table being in 100ths. */
        period *= 10;
-       num_syncrates = sizeof(scsi_syncrates) / sizeof(scsi_syncrates[0]);
+       num_syncrates = NELEM(scsi_syncrates);
        /* See if the period is in the "exception" table */
        for (i = 0; i < num_syncrates; i++) {
 
index 4add593..0322056 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/isa/isa_compat.h,v 1.27.2.11 2002/10/05 18:31:48 scottl Exp $
- * $DragonFly: src/sys/bus/isa/i386/isa_compat.h,v 1.13 2008/07/28 01:21:39 swildner Exp $
  */
 
 #include "use_el.h"
@@ -139,5 +138,5 @@ static struct old_isa_driver old_drivers[] = {
 
 };
 
-#define old_drivers_count (sizeof(old_drivers) / sizeof(old_drivers[0]))
+#define old_drivers_count NELEM(old_drivers)
 
index 135f174..3e9ad5d 100644 (file)
@@ -138,5 +138,4 @@ static struct old_isa_driver old_drivers[] = {
 
 };
 
-#define old_drivers_count (sizeof(old_drivers) / sizeof(old_drivers[0]))
-
+#define old_drivers_count NELEM(old_drivers)
index 5b327ce..33c2744 100644 (file)
@@ -1,6 +1,5 @@
 /*     $NetBSD: pcmcia_cis_quirks.c,v 1.6 2000/04/12 21:07:55 scw Exp $ */
 /*     $FreeBSD: src/sys/dev/pccard/pccard_cis_quirks.c,v 1.15 2005/03/26 21:30:49 sam Exp $ */
-/* $DragonFly: src/sys/bus/pccard/pccard_cis_quirks.c,v 1.7 2007/07/05 12:08:53 sephe Exp $ */
 
 #define        PCCARDDEBUG
 
@@ -196,8 +195,7 @@ static struct pccard_cis_quirk pccard_cis_quirks[] = {
          &pccard_ndc_nd5100_func0, &pccard_ndc_nd5100_func0_cfe0 },
 };
        
-static int n_pccard_cis_quirks =
-       sizeof(pccard_cis_quirks)/sizeof(pccard_cis_quirks[0]);
+static int n_pccard_cis_quirks = NELEM(pccard_cis_quirks);
 
 static int
 pccard_cis_quirk_match(struct pccard_softc *sc, struct pccard_cis_quirk *q)
index 0a07287..8e3b4c4 100644 (file)
@@ -1,7 +1,6 @@
 /*
  * $NetBSD: usb_mem.c,v 1.26 2003/02/01 06:23:40 thorpej Exp $
  * $FreeBSD: src/sys/dev/usb/usb_mem.c,v 1.5 2003/10/04 22:13:21 joe Exp $
- * $DragonFly: src/sys/bus/usb/usb_mem.c,v 1.12 2007/06/28 13:55:12 hasso Exp $
  */
 /*
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -166,9 +165,7 @@ usb_block_allocmem(bus_dma_tag_t tag, size_t size, size_t align,
 
        if (bus_dma_tag_create(tag, align, 0,
            BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, NULL, NULL,
-           size, sizeof(p->segs) / sizeof(p->segs[0]), size,
-           BUS_DMA_ALLOCNOW, &p->tag) == ENOMEM)
-       {
+           size, NELEM(p->segs), size, BUS_DMA_ALLOCNOW, &p->tag) == ENOMEM) {
                goto free;
        }
 
index 7f89aed..fbb9839 100644 (file)
@@ -1,6 +1,5 @@
 /*     $NetBSD: usb_subr.c,v 1.99 2002/07/11 21:14:34 augustss Exp $   */
 /*     $FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.76.2.3 2006/03/01 01:59:05 iedowse Exp $       */
-/*     $DragonFly: src/sys/bus/usb/usb_subr.c,v 1.28 2008/05/25 16:38:36 mneumann Exp $        */
 
 /* Also already have from NetBSD:
  *     $NetBSD: usb_subr.c,v 1.102 2003/01/01 16:21:50 augustss Exp $
@@ -1175,7 +1174,7 @@ usbd_fill_deviceinfo(usbd_device_handle dev, struct usb_device_info *di,
 
        if (dev->hub) {
                for (i = 0;
-                    i < sizeof(di->udi_ports) / sizeof(di->udi_ports[0]) &&
+                    i < NELEM(di->udi_ports) &&
                             i < dev->hub->hubdesc.bNbrPorts;
                     i++) {
                        p = &dev->hub->ports[i];
index 04c6a88..ca2b99e 100644 (file)
@@ -24,7 +24,6 @@
  * rights to redistribute these changes.
  *
  * $FreeBSD: src/sys/ddb/db_variables.c,v 1.18 1999/08/28 00:41:11 peter Exp $
- * $DragonFly: src/sys/ddb/db_variables.c,v 1.4 2005/12/23 21:35:44 swildner Exp $
  */
 
 /*
@@ -52,8 +51,7 @@ static struct db_variable db_vars[] = {
        { "maxwidth",   &db_max_width, NULL },
        { "tabstops",   &db_tab_stop_width, NULL },
 };
-static struct db_variable *db_evars = 
-               db_vars + sizeof(db_vars)/sizeof(db_vars[0]);
+static struct db_variable *db_evars = db_vars + NELEM(db_vars);
 
 static int
 db_find_variable(struct db_variable **varp)
index c2c453f..3ce837a 100644 (file)
@@ -178,7 +178,7 @@ static u_int agp_max[][2] = {
        {2048,  1920},
        {4096,  3932}
 };
-#define agp_max_size   (sizeof(agp_max) / sizeof(agp_max[0]))
+#define agp_max_size   NELEM(agp_max)
 
 /**
  * Sets the PCI resource which represents the AGP aperture.
index 18e4167..1dcff33 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  *     $FreeBSD: src/sys/dev/agp/agp_ali.c,v 1.20 2007/11/12 21:51:36 jhb Exp $
- *     $DragonFly: src/sys/dev/agp/agp_ali.c,v 1.8 2008/01/07 01:34:58 corecode Exp $
  */
 
 #include "opt_bus.h"
@@ -172,7 +171,7 @@ static u_int32_t agp_ali_table[] = {
        128*M,                  /* 9 - invalid */
        256*M,                  /* 10 - invalid */
 };
-#define agp_ali_table_size (sizeof(agp_ali_table) / sizeof(agp_ali_table[0]))
+#define agp_ali_table_size NELEM(agp_ali_table)
 
 static u_int32_t
 agp_ali_get_aperture(device_t dev)
index cd90ceb..bd43592 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/agp/agp_amd64.c,v 1.16 2007/11/12 21:51:36 jhb Exp $
- * $DragonFly: src/sys/dev/agp/agp_amd64.c,v 1.3 2008/01/07 01:34:58 corecode Exp $
  */
 
 #include "opt_bus.h"
@@ -277,8 +276,7 @@ static uint32_t agp_amd64_table[] = {
        0x80000000,     /* 2048 MB */
 };
 
-#define AGP_AMD64_TABLE_SIZE \
-       (sizeof(agp_amd64_table) / sizeof(agp_amd64_table[0]))
+#define AGP_AMD64_TABLE_SIZE NELEM(agp_amd64_table)
 
 static uint32_t
 agp_amd64_get_aperture(device_t dev)
index e39aef8..6fcadcc 100644 (file)
@@ -1,5 +1,4 @@
 /* $FreeBSD: src/sys/dev/hifn/hifn7751.c,v 1.5.2.5 2003/06/04 17:56:59 sam Exp $ */
-/* $DragonFly: src/sys/dev/crypto/hifn/hifn7751.c,v 1.14 2007/12/04 09:11:12 hasso Exp $ */
 /* $OpenBSD: hifn7751.c,v 1.120 2002/05/17 00:33:34 deraadt Exp $      */
 
 /*
@@ -1073,7 +1072,7 @@ hifn_enable_crypto(struct hifn_softc *sc)
        u_int32_t dmacfg, ramcfg, encl, addr, i;
        char *offtbl = NULL;
 
-       for (i = 0; i < sizeof(pci2id)/sizeof(pci2id[0]); i++) {
+       for (i = 0; i < NELEM(pci2id); i++) {
                if (pci2id[i].pci_vendor == pci_get_vendor(sc->sc_dev) &&
                    pci2id[i].pci_prod == pci_get_device(sc->sc_dev)) {
                        offtbl = pci2id[i].card_id;
index 8d8b29c..bb8c8e5 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/dev/rndtest/rndtest.c,v 1.1.4.1 2003/06/04 17:10:30 sam Exp $ */
-/*     $DragonFly: src/sys/dev/crypto/rndtest/rndtest.c,v 1.9 2006/12/18 20:41:01 dillon Exp $ */
 /*     $OpenBSD$       */
 
 /*
@@ -70,7 +69,7 @@ static const struct rndtest_testfunc {
        { rndtest_longruns },
 };
 
-#define        RNDTEST_NTESTS  (sizeof(rndtest_funcs)/sizeof(rndtest_funcs[0]))
+#define        RNDTEST_NTESTS  NELEM(rndtest_funcs)
 
 SYSCTL_NODE(_kern, OID_AUTO, rndtest, CTLFLAG_RD, 0, "RNG test parameters");
 
index aa93d29..85cd23b 100644 (file)
@@ -30,7 +30,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/advansys/adwlib.c,v 1.6.2.1 2000/04/14 13:32:50 nyan Exp $
- * $DragonFly: src/sys/dev/disk/advansys/adwlib.c,v 1.6 2006/12/22 23:26:15 swildner Exp $
  */
 /*
  * Ported from:
@@ -158,7 +157,7 @@ const struct adw_syncrate adw_syncrates[] =
        { ADW_MC_SDTR_ASYNC,        0,       "async" }
 };
 
-const int adw_num_syncrates = sizeof(adw_syncrates) / sizeof(adw_syncrates[0]);
+const int adw_num_syncrates = NELEM(adw_syncrates);
 
 static u_int16_t       adw_eeprom_read_16(struct adw_softc *adw, int addr);
 static void            adw_eeprom_write_16(struct adw_softc *adw, int addr,
index c6e087a..d905994 100644 (file)
@@ -174,7 +174,7 @@ ahci_sysctl_link_pwr_state (SYSCTL_HANDLER_ARGS)
        int state;
 
        state = ahci_port_link_pwr_state(ap);
-       if (state < 0 || state >= sizeof(state_names) / sizeof(state_names[0]))
+       if (state < 0 || state >= NELEM(state_names))
                state = 0;
 
        ksnprintf(buf, sizeof(buf), "%s", state_names[state]);
index 617d001..0bb02f5 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/aic/aic.c,v 1.8 2000/01/14 23:42:35 imp Exp $
- * $DragonFly: src/sys/dev/disk/aic/aic.c,v 1.14 2008/05/18 20:30:21 pavalos Exp $
  */
 
 #include <sys/param.h>
@@ -1439,7 +1438,7 @@ aic_init(struct aic_softc *aic)
        aic->chip_type = AIC6260;
        aic_insb(aic, ID, chip_id, sizeof(chip_id) - 1);
        chip_id[sizeof(chip_id) - 1] = '\0';
-       for (i = 0; i < sizeof(aic_chip_ids) / sizeof(aic_chip_ids[0]); i++) {
+       for (i = 0; i < NELEM(aic_chip_ids); i++) {
                if (!strcmp(chip_id, aic_chip_ids[i].idstring)) {
                        aic->chip_type = aic_chip_ids[i].type;
                        break;
index b8f8f94..7ef5720 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/aic/aic_isa.c,v 1.3 2000/01/14 23:42:35 imp Exp $
- * $DragonFly: src/sys/dev/disk/aic/aic_isa.c,v 1.8 2008/01/05 07:27:09 pavalos Exp $
  */
 
 #include <sys/param.h>
@@ -51,7 +50,7 @@ static int aic_isa_probe (device_t);
 static int aic_isa_attach (device_t);
 
 static u_int aic_isa_ports[] = { 0x340, 0x140 };
-#define        AIC_ISA_NUMPORTS (sizeof(aic_isa_ports) / sizeof(aic_isa_ports[0]))
+#define        AIC_ISA_NUMPORTS NELEM(aic_isa_ports)
 #define        AIC_ISA_PORTSIZE 0x20
 
 static struct isa_pnp_id aic_ids[] = {
index 2e9f8ef..448e5f1 100644 (file)
@@ -1,7 +1,6 @@
 /**************************************************************************
 **
 ** $FreeBSD: src/sys/pci/ncr.c,v 1.155.2.3 2001/03/05 13:09:10 obrien Exp $
-** $DragonFly: src/sys/dev/disk/ncr/ncr.c,v 1.22 2008/05/18 20:30:22 pavalos Exp $
 **
 **  Device driver for the   NCR 53C8XX   PCI-SCSI-Controller Family.
 **
@@ -3257,7 +3256,7 @@ static int ncr_chip_lookup(u_long device_id, u_char revision_id)
        int i, found;
        
        found = -1;
-       for (i = 0; i < sizeof(ncr_chip_table)/sizeof(ncr_chip_table[0]); i++) {
+       for (i = 0; i < NELEM(ncr_chip_table); i++) {
                if (device_id   == ncr_chip_table[i].device_id &&
                    ncr_chip_table[i].minrevid <= revision_id) {
                        if (found < 0 || 
index c5116fc..92c982e 100644 (file)
@@ -8799,8 +8799,7 @@ static struct sym_pci_chip sym_pci_dev_table[] = {
  FE_RAM|FE_IO256|FE_LEDC}
 };
 
-#define sym_pci_num_devs \
-       (sizeof(sym_pci_dev_table) / sizeof(sym_pci_dev_table[0]))
+#define sym_pci_num_devs NELEM(sym_pci_dev_table)
 
 /*
  *  Look up the chip table.
index 3dcce54..086258b 100644 (file)
@@ -144,7 +144,7 @@ MALLOC_DECLARE(DRM_MEM_DRAWABLE);
 #define DRM_MAX_CTXBITMAP (PAGE_SIZE * 8)
 
                                /* Internal types and structures */
-#define DRM_ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0]))
+#define DRM_ARRAY_SIZE(x) NELEM(x)
 #define DRM_MIN(a,b) ((a)<(b)?(a):(b))
 #define DRM_MAX(a,b) ((a)>(b)?(a):(b))
 
index e825003..14a7e7c 100644 (file)
@@ -47,7 +47,7 @@ struct drm_sysctl_list {
        {"bufs",    drm_bufs_info},
        {"vblank",    drm_vblank_info},
 };
-#define DRM_SYSCTL_ENTRIES (sizeof(drm_sysctl_list)/sizeof(drm_sysctl_list[0]))
+#define DRM_SYSCTL_ENTRIES NELEM(drm_sysctl_list)
 
 struct drm_sysctl_info {
        struct sysctl_ctx_list ctx;
index 7f85b23..2f0a895 100644 (file)
@@ -26,7 +26,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/kbd/atkbd.c,v 1.25.2.4 2002/04/08 19:21:38 asmodai Exp $
- * $DragonFly: src/sys/dev/misc/kbd/atkbd.c,v 1.14 2007/04/22 10:43:00 y0netan1 Exp $
  */
 /*
  * NOTE: All locks are handled by the kbd wrappers.
@@ -368,15 +367,14 @@ atkbd_init(int unit, keyboard_t **kbdp, void *arg, int flags)
                keymap = &default_keymap;
                accmap = &default_accentmap;
                fkeymap = default_fkeytab;
-               fkeymap_size =
-                       sizeof(default_fkeytab)/sizeof(default_fkeytab[0]);
+               fkeymap_size = NELEM(default_fkeytab);
        } else if (*kbdp == NULL) {
                *kbdp = kbd = kmalloc(sizeof(*kbd), M_DEVBUF, M_WAITOK|M_ZERO);
                state = kmalloc(sizeof(*state), M_DEVBUF, M_WAITOK|M_ZERO);
                keymap = kmalloc(sizeof(key_map), M_DEVBUF, M_WAITOK);
                accmap = kmalloc(sizeof(accent_map), M_DEVBUF, M_WAITOK);
                fkeymap = kmalloc(sizeof(fkey_tab), M_DEVBUF, M_WAITOK);
-               fkeymap_size = sizeof(fkey_tab)/sizeof(fkey_tab[0]);
+               fkeymap_size = NELEM(fkey_tab);
        } else if (KBD_IS_INITIALIZED(*kbdp) && KBD_IS_CONFIGURED(*kbdp)) {
                return 0;
        } else {
@@ -1405,12 +1403,12 @@ typematic(int delay, int rate)
        int value;
        int i;
 
-       for (i = sizeof(delays)/sizeof(delays[0]) - 1; i > 0; --i) {
+       for (i = NELEM(delays) - 1; i > 0; --i) {
                if (delay >= delays[i])
                        break;
        }
        value = i << 5;
-       for (i = sizeof(rates)/sizeof(rates[0]) - 1; i > 0; --i) {
+       for (i = NELEM(rates) - 1; i > 0; --i) {
                if (rate >= rates[i])
                        break;
        }
index 33984a9..c833fea 100644 (file)
@@ -30,7 +30,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/kbd/atkbdc.c,v 1.5.2.2 2002/03/31 11:02:02 murray Exp $
- * $DragonFly: src/sys/dev/misc/kbd/atkbdc.c,v 1.11 2007/04/22 10:54:43 y0netan1 Exp $
  * from kbdio.c,v 1.13 1998/09/25 11:55:46 yokota Exp
  */
 
@@ -112,7 +111,7 @@ atkbdc_get_softc(int unit)
 {
        atkbdc_softc_t *sc;
 
-       if (unit >= sizeof(atkbdc_softc)/sizeof(atkbdc_softc[0]))
+       if (unit >= NELEM(atkbdc_softc))
                return NULL;
        sc = atkbdc_softc[unit];
        if (sc == NULL) {
index bf0c658..b39133e 100644 (file)
@@ -1209,7 +1209,7 @@ get_kbd_type_name(int type)
        };
        int i;
 
-       for (i = 0; i < sizeof(name_table)/sizeof(name_table[0]); ++i) {
+       for (i = 0; i < NELEM(name_table); ++i) {
                if (type == name_table[i].type)
                        return name_table[i].name;
        }
index 4d9d149..ce0a8fa 100644 (file)
@@ -363,7 +363,7 @@ kbdmux_init(int unit, keyboard_t **kbdp, void *arg, int flags)
                keymap = kmalloc(sizeof(key_map), M_KBDMUX, M_NOWAIT);
                accmap = kmalloc(sizeof(accent_map), M_KBDMUX, M_NOWAIT);
                fkeymap = kmalloc(sizeof(fkey_tab), M_KBDMUX, M_NOWAIT);
-               fkeymap_size = sizeof(fkey_tab)/sizeof(fkey_tab[0]);
+               fkeymap_size = NELEM(fkey_tab);
                needfree = 1;
 
                if ((kbd == NULL) || (state == NULL) || (keymap == NULL) ||
@@ -1036,13 +1036,13 @@ kbdmux_ioctl(keyboard_t *kbd, u_long cmd, caddr_t arg)
                        int     i;
 
                        /* lookup delay */
-                       for (i = sizeof(delays)/sizeof(delays[0]) - 1; i > 0; i --)
+                       for (i = NELEM(delays) - 1; i > 0; i --)
                                if (((int *)arg)[0] >= delays[i])
                                        break;
                        mode = i << 5;
 
                        /* lookup rate */
-                       for (i = sizeof(rates)/sizeof(rates[0]) - 1; i > 0; i --)
+                       for (i = NELEM(rates) - 1; i > 0; i --)
                                if (((int *)arg)[1] >= rates[i])
                                        break;
                        mode |= i;
index 85addd5..0f6fa73 100644 (file)
@@ -303,7 +303,7 @@ nsclpcsio_isa_attach(struct  device *dev)
            nsread(sc->sc_iot, sc->sc_ioh, SIO_REG_SRID));
 
        /* Configure all supported logical devices */
-       for (i = 0; i < sizeof(sio_ld) / sizeof(sio_ld[0]); i++) {
+       for (i = 0; i < NELEM(sio_ld); i++) {
                sc->sc_ld_en[sio_ld[i].ld_num] = 0;
 
                /* Select the device and check if it's activated */
index 823a776..e71fbf7 100644 (file)
@@ -2134,7 +2134,7 @@ psmioctl(struct dev_ioctl_args *ap)
        case MOUSE_READSTATE:
        case MOUSE_READDATA:
                data = (mousedata_t *)addr;
-               if (data->len > sizeof(data->buf)/sizeof(data->buf[0]))
+               if (data->len > NELEM(data->buf))
                        return (EINVAL);
 
                error = block_mouse_data(sc, &command_byte);
@@ -3718,7 +3718,7 @@ enable_kmouse(struct psm_softc *sc)
         * The special sequence to enable the third and fourth buttons.
         * Otherwise they behave like the first and second buttons.
         */
-       for (i = 0; i < sizeof(rate)/sizeof(rate[0]); ++i)
+       for (i = 0; i < NELEM(rate); ++i)
                if (set_mouse_sampling_rate(kbdc, rate[i]) != rate[i])
                        return (FALSE);
 
@@ -3813,7 +3813,7 @@ enable_msexplorer(struct psm_softc *sc)
        enable_msintelli(sc);
 
        /* the special sequence to enable the extra buttons and the roller. */
-       for (i = 0; i < sizeof(rate1)/sizeof(rate1[0]); ++i)
+       for (i = 0; i < NELEM(rate1); ++i)
                if (set_mouse_sampling_rate(kbdc, rate1[i]) != rate1[i])
                        return (FALSE);
        /* the device will give the genuine ID only after the above sequence */
@@ -3834,7 +3834,7 @@ enable_msexplorer(struct psm_softc *sc)
         * sequence; it will make the KVM think the mouse is IntelliMouse
         * when it is in fact IntelliMouse Explorer.
         */
-       for (i = 0; i < sizeof(rate0)/sizeof(rate0[0]); ++i)
+       for (i = 0; i < NELEM(rate0); ++i)
                if (set_mouse_sampling_rate(kbdc, rate0[i]) != rate0[i])
                        break;
        id = get_aux_id(kbdc);
@@ -3857,7 +3857,7 @@ enable_msintelli(struct psm_softc *sc)
        int i;
 
        /* the special sequence to enable the third button and the roller. */
-       for (i = 0; i < sizeof(rate)/sizeof(rate[0]); ++i)
+       for (i = 0; i < NELEM(rate); ++i)
                if (set_mouse_sampling_rate(kbdc, rate[i]) != rate[i])
                        return (FALSE);
        /* the device will give the genuine ID only after the above sequence */
@@ -3884,7 +3884,7 @@ enable_4dmouse(struct psm_softc *sc)
        int id;
        int i;
 
-       for (i = 0; i < sizeof(rate)/sizeof(rate[0]); ++i)
+       for (i = 0; i < NELEM(rate); ++i)
                if (set_mouse_sampling_rate(kbdc, rate[i]) != rate[i])
                        return (FALSE);
        id = get_aux_id(kbdc);
@@ -3918,7 +3918,7 @@ enable_4dplus(struct psm_softc *sc)
        static u_char rate[] = { 200, 100, 80, 60, 40, 20 };
        int i;
 
-       for (i = 0; i < sizeof(rate)/sizeof(rate[0]); ++i)
+       for (i = 0; i < NELEM(rate); ++i)
                if (set_mouse_sampling_rate(kbdc, rate[i]) != rate[i])
                        return (FALSE);
        */
index d2b0059..97df586 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/acx/acx100.c,v 1.13 2008/06/08 10:06:05 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -285,13 +283,11 @@ static __inline int
 acx100_check_rate(struct ifnet *ifp, u_int rate, int rate_idx,
                  const char *fname)
 {
-#define N(arr) (sizeof(arr) / sizeof(arr[0]))
-       if (rate >= N(acx100_rate_map)) {
+       if (rate >= NELEM(acx100_rate_map)) {
                if_printf(ifp, "%s rate out of range %u (idx %d)\n",
                          fname, rate, rate_idx);
                return -1;
        }
-#undef N
 
        if (acx100_rate_map[rate] == 0) {
                if_printf(ifp, "%s invalid rate %u (idx %d)\n",
index f80adda..b4955ef 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/acx/acx111.c,v 1.16 2008/06/08 10:06:05 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -339,13 +337,11 @@ static __inline int
 acx111_check_rate(struct ifnet *ifp, u_int rate, int rate_idx,
                  const char *fname)
 {
-#define N(arr) (sizeof(arr) / sizeof(arr[0]))
-       if (rate >= N(acx111_rate_map)) {
+       if (rate >= NELEM(acx111_rate_map)) {
                if_printf(ifp, "%s rate out of range %u (idx %d)\n",
                          fname, rate, rate_idx);
                return -1;
        }
-#undef N
 
        if (acx111_rate_map[rate] == 0) {
                if_printf(ifp, "%s invalid rate %u (idx %d)\n",
index 0aaf7eb..0854195 100644 (file)
@@ -358,8 +358,7 @@ age_probe(device_t dev)
        vendor = pci_get_vendor(dev);
        devid = pci_get_device(dev);
        sp = age_devs;
-       for (i = 0; i < sizeof(age_devs) / sizeof(age_devs[0]);
-            i++, sp++) {
+       for (i = 0; i < NELEM(age_devs); i++, sp++) {
                if (vendor == sp->age_vendorid &&
                    devid == sp->age_deviceid) {
                        device_set_desc(dev, sp->age_name);
index eb53e11..9131272 100644 (file)
@@ -335,7 +335,7 @@ ale_probe(device_t dev)
        vendor = pci_get_vendor(dev);
        devid = pci_get_device(dev);
        sp = ale_devs;
-       for (i = 0; i < sizeof(ale_devs) / sizeof(ale_devs[0]); i++) {
+       for (i = 0; i < NELEM(ale_devs); i++) {
                if (vendor == sp->ale_vendorid &&
                    devid == sp->ale_deviceid) {
                        device_set_desc(dev, sp->ale_name);
index 5c83017..f5fb57d 100644 (file)
@@ -2011,7 +2011,6 @@ static int
 ath_keyset(struct ath_softc *sc, const struct ieee80211_key *k,
        struct ieee80211_node *bss)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        static const u_int8_t ciphermap[] = {
                HAL_CIPHER_WEP,         /* IEEE80211_CIPHER_WEP */
                HAL_CIPHER_TKIP,        /* IEEE80211_CIPHER_TKIP */
@@ -2034,7 +2033,7 @@ ath_keyset(struct ath_softc *sc, const struct ieee80211_key *k,
         * so that rx frames have an entry to match.
         */
        if ((k->wk_flags & IEEE80211_KEY_SWCRYPT) == 0) {
-               KASSERT(cip->ic_cipher < N(ciphermap),
+               KASSERT(cip->ic_cipher < NELEM(ciphermap),
                        ("invalid cipher type %u", cip->ic_cipher));
                hk.kv_type = ciphermap[cip->ic_cipher];
                hk.kv_len = k->wk_keylen;
@@ -2061,7 +2060,6 @@ ath_keyset(struct ath_softc *sc, const struct ieee80211_key *k,
                KEYPRINTF(sc, k->wk_keyix, &hk, mac);
                return ath_hal_keyset(ah, k->wk_keyix, &hk, mac);
        }
-#undef N
 }
 
 /*
@@ -2072,12 +2070,11 @@ static u_int16_t
 key_alloc_2pair(struct ath_softc *sc,
        ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        u_int i, keyix;
 
        KASSERT(sc->sc_splitmic, ("key cache !split"));
        /* XXX could optimize */
-       for (i = 0; i < N(sc->sc_keymap)/4; i++) {
+       for (i = 0; i < NELEM(sc->sc_keymap)/4; i++) {
                u_int8_t b = sc->sc_keymap[i];
                if (b != 0xff) {
                        /*
@@ -2116,7 +2113,6 @@ key_alloc_2pair(struct ath_softc *sc,
        }
        DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of pair space\n", __func__);
        return 0;
-#undef N
 }
 
 /*
@@ -2127,12 +2123,11 @@ static u_int16_t
 key_alloc_pair(struct ath_softc *sc,
        ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        u_int i, keyix;
 
        KASSERT(!sc->sc_splitmic, ("key cache split"));
        /* XXX could optimize */
-       for (i = 0; i < N(sc->sc_keymap)/4; i++) {
+       for (i = 0; i < NELEM(sc->sc_keymap)/4; i++) {
                u_int8_t b = sc->sc_keymap[i];
                if (b != 0xff) {
                        /*
@@ -2164,7 +2159,6 @@ key_alloc_pair(struct ath_softc *sc,
        }
        DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of pair space\n", __func__);
        return 0;
-#undef N
 }
 
 /*
@@ -2174,11 +2168,10 @@ static int
 key_alloc_single(struct ath_softc *sc,
        ieee80211_keyix *txkeyix, ieee80211_keyix *rxkeyix)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        u_int i, keyix;
 
        /* XXX try i,i+32,i+64,i+32+64 to minimize key pair conflicts */
-       for (i = 0; i < N(sc->sc_keymap); i++) {
+       for (i = 0; i < NELEM(sc->sc_keymap); i++) {
                u_int8_t b = sc->sc_keymap[i];
                if (b != 0xff) {
                        /*
@@ -2196,7 +2189,6 @@ key_alloc_single(struct ath_softc *sc,
        }
        DPRINTF(sc, ATH_DEBUG_KEYCACHE, "%s: out of space\n", __func__);
        return 0;
-#undef N
 }
 
 /*
@@ -4100,7 +4092,6 @@ ath_txq_init(struct ath_softc *sc, struct ath_txq *txq, int qnum)
 static struct ath_txq *
 ath_txq_setup(struct ath_softc *sc, int qtype, int subtype)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ath_hal *ah = sc->sc_ah;
        HAL_TXQ_INFO qi;
        int qnum;
@@ -4131,10 +4122,10 @@ ath_txq_setup(struct ath_softc *sc, int qtype, int subtype)
                 */
                return NULL;
        }
-       if (qnum >= N(sc->sc_txq)) {
+       if (qnum >= NELEM(sc->sc_txq)) {
                device_printf(sc->sc_dev,
                        "hal qnum %u out of range, max %zu!\n",
-                       qnum, N(sc->sc_txq));
+                       qnum, NELEM(sc->sc_txq));
                ath_hal_releasetxqueue(ah, qnum);
                return NULL;
        }
@@ -4143,7 +4134,6 @@ ath_txq_setup(struct ath_softc *sc, int qtype, int subtype)
                sc->sc_txqsetup |= 1<<qnum;
        }
        return &sc->sc_txq[qnum];
-#undef N
 }
 
 /*
@@ -4158,12 +4148,11 @@ ath_txq_setup(struct ath_softc *sc, int qtype, int subtype)
 static int
 ath_tx_setup(struct ath_softc *sc, int ac, int haltype)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ath_txq *txq;
 
-       if (ac >= N(sc->sc_ac2q)) {
+       if (ac >= NELEM(sc->sc_ac2q)) {
                device_printf(sc->sc_dev, "AC %u out of range, max %zu!\n",
-                       ac, N(sc->sc_ac2q));
+                       ac, NELEM(sc->sc_ac2q));
                return 0;
        }
        txq = ath_txq_setup(sc, HAL_TX_QUEUE_DATA, haltype);
@@ -4173,7 +4162,6 @@ ath_tx_setup(struct ath_softc *sc, int ac, int haltype)
                return 1;
        } else
                return 0;
-#undef N
 }
 
 /*
@@ -5989,7 +5977,6 @@ ath_rate_setup(struct ath_softc *sc, u_int mode)
 static void
 ath_setcurmode(struct ath_softc *sc, enum ieee80211_phymode mode)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        /* NB: on/off times from the Atheros NDIS driver, w/ permission */
        static const struct {
                u_int           rate;           /* tx/rx 802.11 rate */
@@ -6026,7 +6013,7 @@ ath_setcurmode(struct ath_softc *sc, enum ieee80211_phymode mode)
                        sc->sc_rixmap[ieeerate | IEEE80211_RATE_MCS] = i;
        }
        memset(sc->sc_hwmap, 0, sizeof(sc->sc_hwmap));
-       for (i = 0; i < N(sc->sc_hwmap); i++) {
+       for (i = 0; i < NELEM(sc->sc_hwmap); i++) {
                if (i >= rt->rateCount) {
                        sc->sc_hwmap[i].ledon = (500 * hz) / 1000;
                        sc->sc_hwmap[i].ledoff = (130 * hz) / 1000;
@@ -6041,7 +6028,7 @@ ath_setcurmode(struct ath_softc *sc, enum ieee80211_phymode mode)
                    rt->info[i].phy == IEEE80211_T_OFDM)
                        sc->sc_hwmap[i].txflags |= IEEE80211_RADIOTAP_F_SHORTPRE;
                sc->sc_hwmap[i].rxflags = sc->sc_hwmap[i].txflags;
-               for (j = 0; j < N(blinkrates)-1; j++)
+               for (j = 0; j < NELEM(blinkrates)-1; j++)
                        if (blinkrates[j].rate == sc->sc_hwmap[i].ieeerate)
                                break;
                /* NB: this uses the last entry if the rate isn't found */
@@ -6060,7 +6047,6 @@ ath_setcurmode(struct ath_softc *sc, enum ieee80211_phymode mode)
        else
                sc->sc_protrix = ath_tx_findrix(sc, 2*1);
        /* NB: caller is responsible for reseting rate control state */
-#undef N
 }
 
 #ifdef ATH_DEBUG
index 1289858..80286ae 100644 (file)
@@ -383,21 +383,20 @@ ath_hal_mac_usec(struct ath_hal *ah, u_int clks)
 void
 ath_hal_setupratetable(struct ath_hal *ah, HAL_RATE_TABLE *rt)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        int i;
 
        if (rt->rateCodeToIndex[0] != 0)        /* already setup */
                return;
-       for (i = 0; i < N(rt->rateCodeToIndex); i++)
+       for (i = 0; i < NELEM(rt->rateCodeToIndex); i++)
                rt->rateCodeToIndex[i] = (uint8_t) -1;
        for (i = 0; i < rt->rateCount; i++) {
                uint8_t code = rt->info[i].rateCode;
                uint8_t cix = rt->info[i].controlRate;
 
-               HALASSERT(code < N(rt->rateCodeToIndex));
+               HALASSERT(code < NELEM(rt->rateCodeToIndex));
                rt->rateCodeToIndex[code] = i;
                HALASSERT((code | rt->info[i].shortPreamble) <
-                   N(rt->rateCodeToIndex));
+                   NELEM(rt->rateCodeToIndex));
                rt->rateCodeToIndex[code | rt->info[i].shortPreamble] = i;
                /*
                 * XXX for 11g the control rate to use for 5.5 and 11 Mb/s
@@ -410,7 +409,6 @@ ath_hal_setupratetable(struct ath_hal *ah, HAL_RATE_TABLE *rt)
                rt->info[i].spAckDuration = ath_hal_computetxtime(ah, rt,
                        WLAN_CTRL_FRAME_SIZE, cix, AH_TRUE);
        }
-#undef N
 }
 
 HAL_STATUS
index 742526e..6d86b00 100644 (file)
@@ -758,7 +758,7 @@ typedef struct {
 
 #define HAL_INI_WRITE_ARRAY(ah, regArray, col, regWr) do {                     \
        int r;                                                          \
-       for (r = 0; r < N(regArray); r++) {                             \
+       for (r = 0; r < NELEM(regArray); r++) {                         \
                OS_REG_WRITE(ah, (regArray)[r][0], (regArray)[r][col]); \
                DMA_YIELD(regWr);                                       \
        }                                                               \
@@ -766,7 +766,7 @@ typedef struct {
 
 #define HAL_INI_WRITE_BANK(ah, regArray, bankData, regWr) do {         \
        int r;                                                          \
-       for (r = 0; r < N(regArray); r++) {                             \
+       for (r = 0; r < NELEM(regArray); r++) {                         \
                OS_REG_WRITE(ah, (regArray)[r][0], (bankData)[r]);      \
                DMA_YIELD(regWr);                                       \
        }                                                               \
index b550b7e..9ff5748 100644 (file)
@@ -172,7 +172,6 @@ static struct ath_hal *
 ar5210Attach(uint16_t devid, HAL_SOFTC sc, HAL_BUS_TAG st, HAL_BUS_HANDLE sh,
        HAL_STATUS *status)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ath_hal_5210 *ahp;
        struct ath_hal *ah;
        uint32_t revid, pcicfg;
@@ -280,7 +279,6 @@ bad:
        if (status)
                *status = ecode;
        return AH_NULL;
-#undef N
 }
 
 void
index ce54e14..c00d743 100644 (file)
@@ -191,7 +191,6 @@ static struct ath_hal *
 ar5211Attach(uint16_t devid, HAL_SOFTC sc,
        HAL_BUS_TAG st, HAL_BUS_HANDLE sh, HAL_STATUS *status)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ath_hal_5211 *ahp;
        struct ath_hal *ah;
        uint32_t val;
@@ -354,7 +353,6 @@ bad:
        if (status)
                *status = ecode;
        return AH_NULL;
-#undef N
 }
 
 void
index 8ef4970..d95512f 100644 (file)
@@ -31,8 +31,6 @@
 #define AH_5212_2316
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 typedef        RAW_DATA_STRUCT_2413 RAW_DATA_STRUCT_2316;
 typedef RAW_DATA_PER_CHANNEL_2413 RAW_DATA_PER_CHANNEL_2316;
 #define PWR_TABLE_SIZE_2316 PWR_TABLE_SIZE_2413
@@ -41,11 +39,11 @@ struct ar2316State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE_2316];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_2316)];
-       uint32_t        Bank2Data[N(ar5212Bank2_2316)];
-       uint32_t        Bank3Data[N(ar5212Bank3_2316)];
-       uint32_t        Bank6Data[N(ar5212Bank6_2316)];
-       uint32_t        Bank7Data[N(ar5212Bank7_2316)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_2316)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_2316)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_2316)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_2316)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_2316)];
 
        /*
         * Private state for reduced stack usage.
@@ -168,7 +166,7 @@ ar2316SetRfRegs(struct ath_hal *ah, const struct ieee80211_channel *chan,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_2316); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_2316); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_2316[i][_col];\
 } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
index 21b8256..9e9497f 100644 (file)
@@ -31,8 +31,6 @@
 #define AH_5212_2317
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 typedef        RAW_DATA_STRUCT_2413 RAW_DATA_STRUCT_2317;
 typedef RAW_DATA_PER_CHANNEL_2413 RAW_DATA_PER_CHANNEL_2317;
 #define PWR_TABLE_SIZE_2317 PWR_TABLE_SIZE_2413
@@ -41,11 +39,11 @@ struct ar2317State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE_2317];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_2317)];
-       uint32_t        Bank2Data[N(ar5212Bank2_2317)];
-       uint32_t        Bank3Data[N(ar5212Bank3_2317)];
-       uint32_t        Bank6Data[N(ar5212Bank6_2317)];
-       uint32_t        Bank7Data[N(ar5212Bank7_2317)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_2317)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_2317)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_2317)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_2317)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_2317)];
 
        /*
         * Private state for reduced stack usage.
@@ -146,7 +144,7 @@ ar2317SetRfRegs(struct ath_hal *ah,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_2317); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_2317); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_2317[i][_col];\
 } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
index 34ed4bf..208e6b2 100644 (file)
 #define AH_5212_2413
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar2413State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE_2413];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_2413)];
-       uint32_t        Bank2Data[N(ar5212Bank2_2413)];
-       uint32_t        Bank3Data[N(ar5212Bank3_2413)];
-       uint32_t        Bank6Data[N(ar5212Bank6_2413)];
-       uint32_t        Bank7Data[N(ar5212Bank7_2413)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_2413)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_2413)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_2413)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_2413)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_2413)];
 
        /*
         * Private state for reduced stack usage.
@@ -162,7 +160,7 @@ ar2413SetRfRegs(struct ath_hal *ah,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_2413); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_2413); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_2413[i][_col];\
 } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
index 284e942..b0c5d19 100644 (file)
 #define AH_5212_2417
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar2425State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE_2413];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_2425)];
-       uint32_t        Bank2Data[N(ar5212Bank2_2425)];
-       uint32_t        Bank3Data[N(ar5212Bank3_2425)];
-       uint32_t        Bank6Data[N(ar5212Bank6_2425)]; /* 2417 is same size */
-       uint32_t        Bank7Data[N(ar5212Bank7_2425)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_2425)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_2425)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_2425)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_2425)];     /* 2417 is same size */
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_2425)];
 };
 #define        AR2425(ah)      ((struct ar2425State *) AH5212(ah)->ah_rfHal)
 
@@ -156,7 +154,7 @@ ar2425SetRfRegs(struct ath_hal *ah,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_2425); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_2425); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_2425[i][_col];\
 } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
@@ -202,7 +200,7 @@ ar2425SetRfRegs(struct ath_hal *ah,
        HAL_INI_WRITE_BANK(ah, ar5212Bank2_2425, priv->Bank2Data, regWrites);
        HAL_INI_WRITE_BANK(ah, ar5212Bank3_2425, priv->Bank3Data, regWrites);
        if (IS_2417(ah)) {
-               HALASSERT(N(ar5212Bank6_2425) == N(ar5212Bank6_2417));
+               HALASSERT(NELEM(ar5212Bank6_2425) == NELEM(ar5212Bank6_2417));
                HAL_INI_WRITE_BANK(ah, ar5212Bank6_2417, priv->Bank6Data,
                    regWrites);
        } else
index a216624..63edfc5 100644 (file)
 #define AH_5212_5111
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar5111State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE];
 
-       uint32_t        Bank0Data[N(ar5212Bank0_5111)];
-       uint32_t        Bank1Data[N(ar5212Bank1_5111)];
-       uint32_t        Bank2Data[N(ar5212Bank2_5111)];
-       uint32_t        Bank3Data[N(ar5212Bank3_5111)];
-       uint32_t        Bank6Data[N(ar5212Bank6_5111)];
-       uint32_t        Bank7Data[N(ar5212Bank7_5111)];
+       uint32_t        Bank0Data[NELEM(ar5212Bank0_5111)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_5111)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_5111)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_5111)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_5111)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_5111)];
 };
 #define        AR5111(ah)      ((struct ar5111State *) AH5212(ah)->ah_rfHal)
 
@@ -224,7 +222,7 @@ ar5111SetRfRegs(struct ath_hal *ah, const struct ieee80211_channel *chan,
        const HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom;
        uint16_t rfXpdGainFixed, rfPloSel, rfPwdXpd, gainI;
        uint16_t tempOB, tempDB;
-       uint32_t ob2GHz, db2GHz, rfReg[N(ar5212Bank6_5111)];
+       uint32_t ob2GHz, db2GHz, rfReg[NELEM(ar5212Bank6_5111)];
        int i, regWrites = 0;
 
        HALDEBUG(ah, HAL_DEBUG_RFPARAM, "%s: chan %u/0x%x modesIndex %u\n",
@@ -289,7 +287,7 @@ ar5111SetRfRegs(struct ath_hal *ah, const struct ieee80211_channel *chan,
        HALASSERT(1 <= tempDB && tempDB <= 5);
 
        /* Bank 0 Write */
-       for (i = 0; i < N(ar5212Bank0_5111); i++)
+       for (i = 0; i < NELEM(ar5212Bank0_5111); i++)
                rfReg[i] = ar5212Bank0_5111[i][modesIndex];
        if (IEEE80211_IS_CHAN_2GHZ(chan)) {
                ar5212ModifyRfBuffer(rfReg, ob2GHz, 3, 119, 0);
@@ -307,7 +305,7 @@ ar5111SetRfRegs(struct ath_hal *ah, const struct ieee80211_channel *chan,
        HAL_INI_WRITE_ARRAY(ah, ar5212Bank3_5111, modesIndex, regWrites);
 
        /* Bank 6 Write */
-       for (i = 0; i < N(ar5212Bank6_5111); i++)
+       for (i = 0; i < NELEM(ar5212Bank6_5111); i++)
                rfReg[i] = ar5212Bank6_5111[i][modesIndex];
        if (IEEE80211_IS_CHAN_A(chan)) {        /* NB: CHANNEL_A | CHANNEL_T */
                ar5212ModifyRfBuffer(rfReg, ee->ee_cornerCal.pd84, 1, 51, 3);
@@ -321,7 +319,7 @@ ar5111SetRfRegs(struct ath_hal *ah, const struct ieee80211_channel *chan,
        HAL_INI_WRITE_BANK(ah, ar5212Bank6_5111, rfReg, regWrites);
 
        /* Bank 7 Write */
-       for (i = 0; i < N(ar5212Bank7_5111); i++)
+       for (i = 0; i < NELEM(ar5212Bank7_5111); i++)
                rfReg[i] = ar5212Bank7_5111[i][modesIndex];
        ar5212ModifyRfBuffer(rfReg, gainI, 6, 29, 0);   
        ar5212ModifyRfBuffer(rfReg, rfPloSel, 1, 4, 0);   
index 65d72fd..47ddf6b 100644 (file)
 #define AH_5212_5112
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar5112State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_5112)];
-       uint32_t        Bank2Data[N(ar5212Bank2_5112)];
-       uint32_t        Bank3Data[N(ar5212Bank3_5112)];
-       uint32_t        Bank6Data[N(ar5212Bank6_5112)];
-       uint32_t        Bank7Data[N(ar5212Bank7_5112)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_5112)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_5112)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_5112)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_5112)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_5112)];
 };
 #define        AR5112(ah)      ((struct ar5112State *) AH5212(ah)->ah_rfHal)
 
@@ -182,7 +180,7 @@ ar5112SetRfRegs(struct ath_hal *ah,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_5112); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_5112); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_5112[i][_col];\
 } while (0)
        uint16_t freq = ath_hal_gethwchannel(ah, chan);
index 26b0b25..6e2c39e 100644 (file)
@@ -211,7 +211,6 @@ void
 ar5212InitState(struct ath_hal_5212 *ahp, uint16_t devid, HAL_SOFTC sc,
        HAL_BUS_TAG st, HAL_BUS_HANDLE sh, HAL_STATUS *status)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        static const uint8_t defbssidmask[IEEE80211_ADDR_LEN] =
                { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
        struct ath_hal *ah;
@@ -253,7 +252,6 @@ ar5212InitState(struct ath_hal_5212 *ahp, uint16_t devid, HAL_SOFTC sc,
        ahp->ah_maxTxTrigLev = MAX_TX_FIFO_THRESHOLD,
 
        OS_MEMCPY(&ahp->ah_bssidmask, defbssidmask, IEEE80211_ADDR_LEN);
-#undef N
 }
 
 /*
@@ -262,7 +260,6 @@ ar5212InitState(struct ath_hal_5212 *ahp, uint16_t devid, HAL_SOFTC sc,
 static HAL_BOOL
 ar5212IsMacSupported(uint8_t macVersion, uint8_t macRev)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        static const struct {
                uint8_t version;
                uint8_t revMin, revMax;
@@ -282,12 +279,11 @@ ar5212IsMacSupported(uint8_t macVersion, uint8_t macRev)
        };
        int i;
 
-       for (i = 0; i < N(macs); i++)
+       for (i = 0; i < NELEM(macs); i++)
                if (macs[i].version == macVersion &&
                    macs[i].revMin <= macRev && macRev <= macs[i].revMax)
                        return AH_TRUE;
        return AH_FALSE;
-#undef N
 }
        
 /*
index d14ff9d..86e261d 100644 (file)
@@ -907,7 +907,6 @@ HAL_BOOL
 ar5212SetCapability(struct ath_hal *ah, HAL_CAPABILITY_TYPE type,
        uint32_t capability, uint32_t setting, HAL_STATUS *status)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ath_hal_5212 *ahp = AH5212(ah);
        const HAL_CAPABILITIES *pCap = &AH_PRIVATE(ah)->ah_caps;
        uint32_t v;
@@ -983,7 +982,7 @@ ar5212SetCapability(struct ath_hal *ah, HAL_CAPABILITY_TYPE type,
                        HAL_ANI_FIRSTEP_LEVEL,
                        HAL_ANI_SPUR_IMMUNITY_LEVEL,
                };
-               return capability < N(cmds) ?
+               return capability < NELEM(cmds) ?
                        ar5212AniControl(ah, cmds[capability], setting) :
                        AH_FALSE;
        }
@@ -1000,7 +999,6 @@ ar5212SetCapability(struct ath_hal *ah, HAL_CAPABILITY_TYPE type,
                return ath_hal_setcapability(ah, type, capability,
                                setting, status);
        }
-#undef N
 }
 
 HAL_BOOL
index be73d40..ea8de11 100644 (file)
@@ -109,7 +109,6 @@ ar5212Reset(struct ath_hal *ah, HAL_OPMODE opmode,
        struct ieee80211_channel *chan,
        HAL_BOOL bChannelChange, HAL_STATUS *status)
 {
-#define        N(a)    (sizeof (a) / sizeof (a[0]))
 #define        FAIL(_code)     do { ecode = _code; goto bad; } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
        HAL_CHANNEL_INTERNAL *ichan = AH_NULL;
@@ -686,7 +685,6 @@ bad:
                *status = ecode;
        return AH_FALSE;
 #undef FAIL
-#undef N
 }
 
 /*
@@ -1859,7 +1857,6 @@ ar5212SetTransmitPower(struct ath_hal *ah,
 {
 #define        POW_OFDM(_r, _s)        (((0 & 1)<< ((_s)+6)) | (((_r) & 0x3f) << (_s)))
 #define        POW_CCK(_r, _s)         (((_r) & 0x3f) << (_s))
-#define        N(a)                    (sizeof (a) / sizeof (a[0]))
        static const uint16_t tpcScaleReductionTable[5] =
                { 0, 3, 6, 9, MAX_RATE_POWER };
        struct ath_hal_5212 *ahp = AH5212(ah);
@@ -1901,7 +1898,7 @@ ar5212SetTransmitPower(struct ath_hal *ah,
         * txPowerIndexOffset is set by the SetPowerTable() call -
         *  adjust the rate table 
         */
-       for (i = 0; i < N(ahp->ah_ratesArray); i++) {
+       for (i = 0; i < NELEM(ahp->ah_ratesArray); i++) {
                ahp->ah_ratesArray[i] += ahp->ah_txPowerIndexOffset;
                if (ahp->ah_ratesArray[i] > 63) 
                        ahp->ah_ratesArray[i] = 63;
@@ -1973,7 +1970,6 @@ ar5212SetTransmitPower(struct ath_hal *ah,
                (ahp->ah_tpcEnabled ? AR_PHY_POWER_TX_RATE_MAX_TPC_ENABLE : 0));
 
        return AH_TRUE;
-#undef N
 #undef POW_CCK
 #undef POW_OFDM
 }
@@ -2268,10 +2264,9 @@ ar5212GetChipPowerLimits(struct ath_hal *ah, struct ieee80211_channel *chan)
 static void
 ar5212CorrectGainDelta(struct ath_hal *ah, int twiceOfdmCckDelta)
 {
-#define        N(_a)   (sizeof(_a) / sizeof(_a[0]))
        struct ath_hal_5212 *ahp = AH5212(ah);
        const HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom;
-       int16_t ratesIndex[N(ahp->ah_ratesArray)];
+       int16_t ratesIndex[NELEM(ahp->ah_ratesArray)];
        uint16_t ii, jj, iter;
        int32_t cckIndex;
        int16_t gainDeltaAdjust;
@@ -2334,7 +2329,6 @@ ar5212CorrectGainDelta(struct ath_hal *ah, int twiceOfdmCckDelta)
        /* Override rate per power table with new values */
        for (ii = 8; ii < 15; ii++)
                ahp->ah_ratesArray[ii] = ratesIndex[ii];
-#undef N
 }
 
 /*
index e3d8f22..fdbc281 100644 (file)
 #define AH_5212_5413
 #include "ar5212/ar5212.ini"
 
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar5413State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[PWR_TABLE_SIZE_2413];
 
-       uint32_t        Bank1Data[N(ar5212Bank1_5413)];
-       uint32_t        Bank2Data[N(ar5212Bank2_5413)];
-       uint32_t        Bank3Data[N(ar5212Bank3_5413)];
-       uint32_t        Bank6Data[N(ar5212Bank6_5413)];
-       uint32_t        Bank7Data[N(ar5212Bank7_5413)];
+       uint32_t        Bank1Data[NELEM(ar5212Bank1_5413)];
+       uint32_t        Bank2Data[NELEM(ar5212Bank2_5413)];
+       uint32_t        Bank3Data[NELEM(ar5212Bank3_5413)];
+       uint32_t        Bank6Data[NELEM(ar5212Bank6_5413)];
+       uint32_t        Bank7Data[NELEM(ar5212Bank7_5413)];
 
        /*
         * Private state for reduced stack usage.
@@ -161,7 +159,7 @@ ar5413SetRfRegs(struct ath_hal *ah,
 {
 #define        RF_BANK_SETUP(_priv, _ix, _col) do {                                \
        int i;                                                              \
-       for (i = 0; i < N(ar5212Bank##_ix##_5413); i++)                     \
+       for (i = 0; i < NELEM(ar5212Bank##_ix##_5413); i++)                 \
                (_priv)->Bank##_ix##Data[i] = ar5212Bank##_ix##_5413[i][_col];\
 } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
index 6266785..f53775b 100644 (file)
@@ -28,8 +28,6 @@
 #include "ar5416/ar5416reg.h"
 #include "ar5416/ar5416phy.h"
 
-#define N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar2133State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[1];
index 486cd9a..2118839 100644 (file)
@@ -450,7 +450,6 @@ ar5416DetectMacHang(struct ath_hal *ah)
 static int
 ar5416DetectBBHang(struct ath_hal *ah)
 {
-#define N(a) (sizeof(a)/sizeof(a[0]))
        /*
         * Check the PCU Observation Bus 1 register (0x806c)
         * NUM_STATUS_READS times
@@ -483,7 +482,7 @@ ar5416DetectBBHang(struct ath_hal *ah)
                if (hang_sig != OS_REG_READ(ah, AR_OBSERV_1))
                        return 0;
        }
-       for (i = 0; i < N(hang_list); i++)
+       for (i = 0; i < NELEM(hang_list); i++)
                if ((hang_sig & hang_list[i].mask) == hang_list[i].val) {
                        HALDEBUG(ah, HAL_DEBUG_ANY,
                            "%s BB hang, signature 0x%x, code 0x%x\n",
@@ -495,6 +494,5 @@ ar5416DetectBBHang(struct ath_hal *ah)
            "<0x806c>=0x%x\n", __func__, hang_sig);
 
        return HAL_BB_HANG_UNKNOWN;
-#undef N
 }
 #undef NUM_STATUS_READS
index ed7cda2..624c45e 100644 (file)
@@ -95,7 +95,6 @@ ar5416Reset(struct ath_hal *ah, HAL_OPMODE opmode,
        struct ieee80211_channel *chan,
        HAL_BOOL bChannelChange, HAL_STATUS *status)
 {
-#define        N(a)    (sizeof (a) / sizeof (a[0]))
 #define        FAIL(_code)     do { ecode = _code; goto bad; } while (0)
        struct ath_hal_5212 *ahp = AH5212(ah);
        HAL_CHANNEL_INTERNAL *ichan;
@@ -351,7 +350,6 @@ bad:
                *status = ecode;
        return AH_FALSE;
 #undef FAIL
-#undef N
 }
 
 #if 0
@@ -800,7 +798,6 @@ ar5416SetTransmitPower(struct ath_hal *ah,
        const struct ieee80211_channel *chan, uint16_t *rfXpdGain)
 {
 #define POW_SM(_r, _s)     (((_r) & 0x3f) << (_s))
-#define N(a)            (sizeof (a) / sizeof (a[0]))
 
     MODAL_EEP_HEADER   *pModal;
     struct ath_hal_5212 *ahp = AH5212(ah);
@@ -866,7 +863,7 @@ ar5416SetTransmitPower(struct ath_hal *ah,
      * txPowerIndexOffset is set by the SetPowerTable() call -
      *  adjust the rate table (0 offset if rates EEPROM not loaded)
      */
-    for (i = 0; i < N(ratesArray); i++) {
+    for (i = 0; i < NELEM(ratesArray); i++) {
         ratesArray[i] = (int16_t)(txPowerIndexOffset + ratesArray[i]);
         if (ratesArray[i] > AR5416_MAX_RATE_POWER)
             ratesArray[i] = AR5416_MAX_RATE_POWER;
@@ -955,7 +952,6 @@ ar5416SetTransmitPower(struct ath_hal *ah,
     );
     return AH_TRUE;
 #undef POW_SM
-#undef N
 }
 
 /*
@@ -1325,7 +1321,6 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                            uint16_t twiceMaxRegulatoryPower,
                            uint16_t powerLimit)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
 /* Local defines to distinguish between extension and control CTL's */
 #define EXT_ADDITIVE (0x8000)
 #define CTL_11A_EXT (CTL_11A | EXT_ADDITIVE)
@@ -1409,7 +1404,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
        /* Get target powers from EEPROM - our baseline for TX Power */
        if (IEEE80211_IS_CHAN_2GHZ(chan)) {
                /* Setup for CTL modes */
-               numCtlModes = N(ctlModesFor11g) - SUB_NUM_CTL_MODES_AT_2G_40; /* CTL_11B, CTL_11G, CTL_2GHT20 */
+               numCtlModes = NELEM(ctlModesFor11g) - SUB_NUM_CTL_MODES_AT_2G_40; /* CTL_11B, CTL_11G, CTL_2GHT20 */
                pCtlMode = ctlModesFor11g;
 
                ar5416GetTargetPowersLeg(ah,  chan, pEepData->calTargetPowerCck,
@@ -1420,7 +1415,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                                AR5416_NUM_2G_20_TARGET_POWERS, &targetPowerHt20, 8, AH_FALSE);
 
                if (IEEE80211_IS_CHAN_HT40(chan)) {
-                       numCtlModes = N(ctlModesFor11g);    /* All 2G CTL's */
+                       numCtlModes = NELEM(ctlModesFor11g);    /* All 2G CTL's */
 
                        ar5416GetTargetPowers(ah,  chan, pEepData->calTargetPower2GHT40,
                                AR5416_NUM_2G_40_TARGET_POWERS, &targetPowerHt40, 8, AH_TRUE);
@@ -1432,7 +1427,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                }
        } else {
                /* Setup for CTL modes */
-               numCtlModes = N(ctlModesFor11a) - SUB_NUM_CTL_MODES_AT_5G_40; /* CTL_11A, CTL_5GHT20 */
+               numCtlModes = NELEM(ctlModesFor11a) - SUB_NUM_CTL_MODES_AT_5G_40; /* CTL_11A, CTL_5GHT20 */
                pCtlMode = ctlModesFor11a;
 
                ar5416GetTargetPowersLeg(ah,  chan, pEepData->calTargetPower5G,
@@ -1441,7 +1436,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                                AR5416_NUM_5G_20_TARGET_POWERS, &targetPowerHt20, 8, AH_FALSE);
 
                if (IEEE80211_IS_CHAN_HT40(chan)) {
-                       numCtlModes = N(ctlModesFor11a); /* All 5G CTL's */
+                       numCtlModes = NELEM(ctlModesFor11a); /* All 5G CTL's */
 
                        ar5416GetTargetPowers(ah,  chan, pEepData->calTargetPower5GHT40,
                                AR5416_NUM_5G_40_TARGET_POWERS, &targetPowerHt40, 8, AH_TRUE);
@@ -1496,19 +1491,19 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                /* Apply ctl mode to correct target power set */
                switch(pCtlMode[ctlMode]) {
                case CTL_11B:
-                       for (i = 0; i < N(targetPowerCck.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerCck.tPow2x); i++) {
                                targetPowerCck.tPow2x[i] = (uint8_t)AH_MIN(targetPowerCck.tPow2x[i], minCtlPower);
                        }
                        break;
                case CTL_11A:
                case CTL_11G:
-                       for (i = 0; i < N(targetPowerOfdm.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerOfdm.tPow2x); i++) {
                                targetPowerOfdm.tPow2x[i] = (uint8_t)AH_MIN(targetPowerOfdm.tPow2x[i], minCtlPower);
                        }
                        break;
                case CTL_5GHT20:
                case CTL_2GHT20:
-                       for (i = 0; i < N(targetPowerHt20.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerHt20.tPow2x); i++) {
                                targetPowerHt20.tPow2x[i] = (uint8_t)AH_MIN(targetPowerHt20.tPow2x[i], minCtlPower);
                        }
                        break;
@@ -1521,7 +1516,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                        break;
                case CTL_5GHT40:
                case CTL_2GHT40:
-                       for (i = 0; i < N(targetPowerHt40.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerHt40.tPow2x); i++) {
                                targetPowerHt40.tPow2x[i] = (uint8_t)AH_MIN(targetPowerHt40.tPow2x[i], minCtlPower);
                        }
                        break;
@@ -1538,7 +1533,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
        ratesArray[rate54mb] = targetPowerOfdm.tPow2x[3];
        ratesArray[rateXr] = targetPowerOfdm.tPow2x[0];
 
-       for (i = 0; i < N(targetPowerHt20.tPow2x); i++) {
+       for (i = 0; i < NELEM(targetPowerHt20.tPow2x); i++) {
                ratesArray[rateHt20_0 + i] = targetPowerHt20.tPow2x[i];
        }
 
@@ -1549,7 +1544,7 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
                ratesArray[rate11s] = ratesArray[rate11l] = targetPowerCck.tPow2x[3];
        }
        if (IEEE80211_IS_CHAN_HT40(chan)) {
-               for (i = 0; i < N(targetPowerHt40.tPow2x); i++) {
+               for (i = 0; i < NELEM(targetPowerHt40.tPow2x); i++) {
                        ratesArray[rateHt40_0 + i] = targetPowerHt40.tPow2x[i];
                }
                ratesArray[rateDupOfdm] = targetPowerHt40.tPow2x[0];
@@ -1566,7 +1561,6 @@ ar5416SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom *pEepData,
 #undef CTL_11B_EXT
 #undef SUB_NUM_CTL_MODES_AT_5G_40
 #undef SUB_NUM_CTL_MODES_AT_2G_40
-#undef N
 }
 
 /**************************************************************************
index e048e24..d5ac4fe 100644 (file)
@@ -31,8 +31,6 @@
 #include "ar5416/ar5416reg.h"
 #include "ar5416/ar5416phy.h"
 
-#define N(a)    (sizeof(a)/sizeof(a[0]))
-
 struct ar9280State {
        RF_HAL_FUNCS    base;           /* public state, must be first */
        uint16_t        pcdacTable[1];  /* XXX */
index 36d30a4..5944a7f 100644 (file)
@@ -91,7 +91,6 @@ ar9285SetTransmitPower(struct ath_hal *ah,
        const struct ieee80211_channel *chan, uint16_t *rfXpdGain)
 {
 #define POW_SM(_r, _s)     (((_r) & 0x3f) << (_s))
-#define N(a)            (sizeof (a) / sizeof (a[0]))
 
     MODAL_EEP4K_HEADER *pModal;
     struct ath_hal_5212 *ahp = AH5212(ah);
@@ -154,7 +153,7 @@ ar9285SetTransmitPower(struct ath_hal *ah,
      * txPowerIndexOffset is set by the SetPowerTable() call -
      *  adjust the rate table (0 offset if rates EEPROM not loaded)
      */
-    for (i = 0; i < N(ratesArray); i++) {
+    for (i = 0; i < NELEM(ratesArray); i++) {
         ratesArray[i] = (int16_t)(txPowerIndexOffset + ratesArray[i]);
         if (ratesArray[i] > AR5416_MAX_RATE_POWER)
             ratesArray[i] = AR5416_MAX_RATE_POWER;
@@ -237,7 +236,6 @@ ar9285SetTransmitPower(struct ath_hal *ah,
 
     return AH_TRUE;
 #undef POW_SM
-#undef N
 }
 
 HAL_BOOL
@@ -315,7 +313,6 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
                            uint16_t twiceMaxRegulatoryPower,
                            uint16_t powerLimit)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
 /* Local defines to distinguish between extension and control CTL's */
 #define EXT_ADDITIVE (0x8000)
 #define CTL_11G_EXT (CTL_11G | EXT_ADDITIVE)
@@ -356,7 +353,7 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
 
        /* Get target powers from EEPROM - our baseline for TX Power */
        /* Setup for CTL modes */
-       numCtlModes = N(ctlModesFor11g) - SUB_NUM_CTL_MODES_AT_2G_40; /* CTL_11B, CTL_11G, CTL_2GHT20 */
+       numCtlModes = NELEM(ctlModesFor11g) - SUB_NUM_CTL_MODES_AT_2G_40; /* CTL_11B, CTL_11G, CTL_2GHT20 */
        pCtlMode = ctlModesFor11g;
 
        ar5416GetTargetPowersLeg(ah,  chan, pEepData->calTargetPowerCck,
@@ -367,7 +364,7 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
                        AR5416_4K_NUM_2G_20_TARGET_POWERS, &targetPowerHt20, 8, AH_FALSE);
 
        if (IEEE80211_IS_CHAN_HT40(chan)) {
-               numCtlModes = N(ctlModesFor11g);    /* All 2G CTL's */
+               numCtlModes = NELEM(ctlModesFor11g);    /* All 2G CTL's */
 
                ar5416GetTargetPowers(ah,  chan, pEepData->calTargetPower2GHT40,
                        AR5416_4K_NUM_2G_40_TARGET_POWERS, &targetPowerHt40, 8, AH_TRUE);
@@ -424,19 +421,19 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
                /* Apply ctl mode to correct target power set */
                switch(pCtlMode[ctlMode]) {
                case CTL_11B:
-                       for (i = 0; i < N(targetPowerCck.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerCck.tPow2x); i++) {
                                targetPowerCck.tPow2x[i] = (uint8_t)AH_MIN(targetPowerCck.tPow2x[i], minCtlPower);
                        }
                        break;
                case CTL_11A:
                case CTL_11G:
-                       for (i = 0; i < N(targetPowerOfdm.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerOfdm.tPow2x); i++) {
                                targetPowerOfdm.tPow2x[i] = (uint8_t)AH_MIN(targetPowerOfdm.tPow2x[i], minCtlPower);
                        }
                        break;
                case CTL_5GHT20:
                case CTL_2GHT20:
-                       for (i = 0; i < N(targetPowerHt20.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerHt20.tPow2x); i++) {
                                targetPowerHt20.tPow2x[i] = (uint8_t)AH_MIN(targetPowerHt20.tPow2x[i], minCtlPower);
                        }
                        break;
@@ -448,7 +445,7 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
                        break;
                case CTL_5GHT40:
                case CTL_2GHT40:
-                       for (i = 0; i < N(targetPowerHt40.tPow2x); i++) {
+                       for (i = 0; i < NELEM(targetPowerHt40.tPow2x); i++) {
                                targetPowerHt40.tPow2x[i] = (uint8_t)AH_MIN(targetPowerHt40.tPow2x[i], minCtlPower);
                        }
                        break;
@@ -465,7 +462,7 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
        ratesArray[rate54mb] = targetPowerOfdm.tPow2x[3];
        ratesArray[rateXr] = targetPowerOfdm.tPow2x[0];
 
-       for (i = 0; i < N(targetPowerHt20.tPow2x); i++) {
+       for (i = 0; i < NELEM(targetPowerHt20.tPow2x); i++) {
                ratesArray[rateHt20_0 + i] = targetPowerHt20.tPow2x[i];
        }
 
@@ -474,7 +471,7 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
        ratesArray[rate5_5s] = ratesArray[rate5_5l] = targetPowerCck.tPow2x[2];
        ratesArray[rate11s] = ratesArray[rate11l] = targetPowerCck.tPow2x[3];
        if (IEEE80211_IS_CHAN_HT40(chan)) {
-               for (i = 0; i < N(targetPowerHt40.tPow2x); i++) {
+               for (i = 0; i < NELEM(targetPowerHt40.tPow2x); i++) {
                        ratesArray[rateHt40_0 + i] = targetPowerHt40.tPow2x[i];
                }
                ratesArray[rateDupOfdm] = targetPowerHt40.tPow2x[0];
@@ -489,7 +486,6 @@ ar9285SetPowerPerRateTable(struct ath_hal *ah, struct ar5416eeprom_4k *pEepData,
 #undef CTL_11G_EXT
 #undef CTL_11B_EXT
 #undef SUB_NUM_CTL_MODES_AT_2G_40
-#undef N
 }
 
 /**************************************************************************
index 592cda2..ad01569 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/bwi/bwimac.c,v 1.13 2008/02/15 11:15:38 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -1644,17 +1642,15 @@ bwi_mac_attach(struct bwi_softc *sc, int id, uint8_t rev)
        /*
         * Test whether the revision of this MAC is supported
         */
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
-       for (i = 0; i < N(bwi_sup_macrev); ++i) {
+       for (i = 0; i < NELEM(bwi_sup_macrev); ++i) {
                if (bwi_sup_macrev[i] == rev)
                        break;
        }
-       if (i == N(bwi_sup_macrev)) {
+       if (i == NELEM(bwi_sup_macrev)) {
                device_printf(sc->sc_dev, "MAC rev %u is "
                              "not supported\n", rev);
                return ENXIO;
        }
-#undef N
 
        BWI_CREATE_MAC(mac, sc, id, rev);
        sc->sc_nmac++;
index dc57f26..bc68cad 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/bwi/bwiphy.c,v 1.5 2008/01/15 09:01:13 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -182,19 +180,17 @@ bwi_phy_attach(struct bwi_mac *mac)
                phy->phy_tbl_data_hi = BWI_PHYR_TBL_DATA_HI_11A;
                break;
        case BWI_PHYINFO_TYPE_11B:
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
-               for (i = 0; i < N(bwi_sup_bphy); ++i) {
+               for (i = 0; i < NELEM(bwi_sup_bphy); ++i) {
                        if (phyrev == bwi_sup_bphy[i].rev) {
                                phy->phy_init = bwi_sup_bphy[i].init;
                                break;
                        }
                }
-               if (i == N(bwi_sup_bphy)) {
+               if (i == NELEM(bwi_sup_bphy)) {
                        device_printf(sc->sc_dev, "unsupported 11B PHY, "
                                      "rev %u\n", phyrev);
                        return ENXIO;
                }
-#undef N
                phy->phy_mode = IEEE80211_MODE_11B;
                break;
        case BWI_PHYINFO_TYPE_11G:
@@ -733,8 +729,6 @@ bwi_phy_init_11b_rev6(struct bwi_mac *mac)
        }
 }
 
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
-
 static void
 bwi_phy_config_11g(struct bwi_mac *mac)
 {
@@ -751,19 +745,19 @@ bwi_phy_config_11g(struct bwi_mac *mac)
                PHY_WRITE(mac, 0x427, 0x1a);
 
                /* Fill frequency table */
-               for (i = 0; i < N(bwi_phy_freq_11g_rev1); ++i) {
+               for (i = 0; i < NELEM(bwi_phy_freq_11g_rev1); ++i) {
                        bwi_tbl_write_2(mac, BWI_PHYTBL_FREQ + i,
                                        bwi_phy_freq_11g_rev1[i]);
                }
 
                /* Fill noise table */
-               for (i = 0; i < N(bwi_phy_noise_11g_rev1); ++i) {
+               for (i = 0; i < NELEM(bwi_phy_noise_11g_rev1); ++i) {
                        bwi_tbl_write_2(mac, BWI_PHYTBL_NOISE + i,
                                        bwi_phy_noise_11g_rev1[i]);
                }
 
                /* Fill rotor table */
-               for (i = 0; i < N(bwi_phy_rotor_11g_rev1); ++i) {
+               for (i = 0; i < NELEM(bwi_phy_rotor_11g_rev1); ++i) {
                        /* NB: data length is 4 bytes */
                        bwi_tbl_write_4(mac, BWI_PHYTBL_ROTOR + i,
                                        bwi_phy_rotor_11g_rev1[i]);
@@ -797,13 +791,13 @@ bwi_phy_config_11g(struct bwi_mac *mac)
         */
        if (phy->phy_rev <= 2) {
                tbl = bwi_phy_noise_scale_11g_rev2;
-               n = N(bwi_phy_noise_scale_11g_rev2);
+               n = NELEM(bwi_phy_noise_scale_11g_rev2);
        } else if (phy->phy_rev >= 7 && (PHY_READ(mac, 0x449) & 0x200)) {
                tbl = bwi_phy_noise_scale_11g_rev7;
-               n = N(bwi_phy_noise_scale_11g_rev7);
+               n = NELEM(bwi_phy_noise_scale_11g_rev7);
        } else {
                tbl = bwi_phy_noise_scale_11g;
-               n = N(bwi_phy_noise_scale_11g);
+               n = NELEM(bwi_phy_noise_scale_11g);
        }
        for (i = 0; i < n; ++i)
                bwi_tbl_write_2(mac, BWI_PHYTBL_NOISE_SCALE + i, tbl[i]);
@@ -813,10 +807,10 @@ bwi_phy_config_11g(struct bwi_mac *mac)
         */
        if (phy->phy_rev == 2) {
                tbl = bwi_phy_sigma_sq_11g_rev2;
-               n = N(bwi_phy_sigma_sq_11g_rev2);
+               n = NELEM(bwi_phy_sigma_sq_11g_rev2);
        } else if (phy->phy_rev > 2 && phy->phy_rev <= 8) {
                tbl = bwi_phy_sigma_sq_11g_rev7;
-               n = N(bwi_phy_sigma_sq_11g_rev7);
+               n = NELEM(bwi_phy_sigma_sq_11g_rev7);
        } else {
                tbl = NULL;
                n = 0;
@@ -826,7 +820,7 @@ bwi_phy_config_11g(struct bwi_mac *mac)
 
        if (phy->phy_rev == 1) {
                /* Fill delay table */
-               for (i = 0; i < N(bwi_phy_delay_11g_rev1); ++i) {
+               for (i = 0; i < NELEM(bwi_phy_delay_11g_rev1); ++i) {
                        bwi_tbl_write_4(mac, BWI_PHYTBL_DELAY + i,
                                        bwi_phy_delay_11g_rev1[i]);
                }
@@ -865,8 +859,6 @@ bwi_phy_config_11g(struct bwi_mac *mac)
                PHY_WRITE(mac, 0x46e, 0x3cf);
 }
 
-#undef N
-
 /*
  * Configure Automatic Gain Controller
  */
index 9d90229..3a2609c 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/bwi/bwirf.c,v 1.9 2008/08/21 12:19:33 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -1004,7 +1002,7 @@ bwi_rf_calibval(struct bwi_mac *mac)
 
        val = RF_READ(mac, BWI_RFR_BBP_ATTEN);
        idx = __SHIFTOUT(val, BWI_RFR_BBP_ATTEN_CALIB_IDX);
-       KKASSERT(idx < (int)(sizeof(rf_calibvals) / sizeof(rf_calibvals[0])));
+       KKASSERT(idx < (int)(NELEM(rf_calibvals)));
 
        calib = rf_calibvals[idx] << 1;
        if (val & BWI_RFR_BBP_ATTEN_CALIB_BIT)
@@ -1140,7 +1138,6 @@ bwi_rf_map_txpower(struct bwi_mac *mac)
        }
 
 #define IS_VALID_PA_PARAM(p)   ((p) != 0 && (p) != -1)
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
 
        /*
         * Extract PA parameters
@@ -1149,10 +1146,10 @@ bwi_rf_map_txpower(struct bwi_mac *mac)
                sprom_ofs = BWI_SPROM_PA_PARAM_11A;
        else
                sprom_ofs = BWI_SPROM_PA_PARAM_11BG;
-       for (i = 0; i < N(pa_params); ++i)
+       for (i = 0; i < NELEM(pa_params); ++i)
                pa_params[i] = (int16_t)bwi_read_sprom(sc, sprom_ofs + (i * 2));
 
-       for (i = 0; i < N(pa_params); ++i) {
+       for (i = 0; i < NELEM(pa_params); ++i) {
                /*
                 * If one of the PA parameters from SPROM is not valid,
                 * fall back to the default values, if there are any.
@@ -1185,8 +1182,6 @@ bwi_rf_map_txpower(struct bwi_mac *mac)
                }
        }
 
-#undef N
-
        /*
         * All of the PA parameters from SPROM are valid.
         */
index ef6bfb7..4511d20 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/bwi/if_bwi.c,v 1.22 2008/05/18 08:10:03 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -1000,7 +998,6 @@ bwi_regwin_info(struct bwi_softc *sc, uint16_t *type, uint8_t *rev)
 static int
 bwi_bbp_attach(struct bwi_softc *sc)
 {
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
        uint16_t bbp_id, rw_type;
        uint8_t rw_rev;
        uint32_t info;
@@ -1033,7 +1030,7 @@ bwi_bbp_attach(struct bwi_softc *sc)
                uint16_t did = pci_get_device(sc->sc_dev);
                uint8_t revid = pci_get_revid(sc->sc_dev);
 
-               for (i = 0; i < N(bwi_bbpid_map); ++i) {
+               for (i = 0; i < NELEM(bwi_bbpid_map); ++i) {
                        if (did >= bwi_bbpid_map[i].did_min &&
                            did <= bwi_bbpid_map[i].did_max) {
                                bbp_id = bwi_bbpid_map[i].bbp_id;
@@ -1057,7 +1054,7 @@ bwi_bbp_attach(struct bwi_softc *sc)
        if (rw_type == BWI_REGWIN_T_COM && rw_rev >= 4) {
                nregwin = __SHIFTOUT(info, BWI_INFO_NREGWIN_MASK);
        } else {
-               for (i = 0; i < N(bwi_regwin_count); ++i) {
+               for (i = 0; i < NELEM(bwi_regwin_count); ++i) {
                        if (bwi_regwin_count[i].bbp_id == bbp_id) {
                                nregwin = bwi_regwin_count[i].nregwin;
                                break;
@@ -1139,7 +1136,6 @@ bwi_bbp_attach(struct bwi_softc *sc)
                return error;
 
        return 0;
-#undef N
 }
 
 int
@@ -3756,9 +3752,7 @@ bwi_led_attach(struct bwi_softc *sc)
        uint16_t gpio, val[BWI_LED_MAX];
        int i;
 
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
-
-       for (i = 0; i < N(bwi_vendor_led_act); ++i) {
+       for (i = 0; i < NELEM(bwi_vendor_led_act); ++i) {
                if (sc->sc_pci_subvid == bwi_vendor_led_act[i].vid) {
                        led_act = bwi_vendor_led_act[i].led_act;
                        break;
@@ -3767,8 +3761,6 @@ bwi_led_attach(struct bwi_softc *sc)
        if (led_act == NULL)
                led_act = bwi_default_led_act;
 
-#undef N
-
        gpio = bwi_read_sprom(sc, BWI_SPROM_GPIO01);
        val[0] = __SHIFTOUT(gpio, BWI_SPROM_GPIO_0);
        val[1] = __SHIFTOUT(gpio, BWI_SPROM_GPIO_1);
index 3ebad9a..a8e275e 100644 (file)
@@ -1,7 +1,6 @@
 /*     $NetBSD: if_de.c,v 1.86 1999/06/01 19:17:59 thorpej Exp $       */
 
 /* $FreeBSD: src/sys/pci/if_de.c,v 1.123.2.4 2000/08/04 23:25:09 peter Exp $ */
-/* $DragonFly: src/sys/dev/netif/de/if_de.c,v 1.49 2008/08/17 04:32:33 sephe Exp $ */
 
 /*-
  * Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com)
@@ -3323,7 +3322,7 @@ tulip_print_abnormal_interrupt(tulip_softc_t *sc, uint32_t csr)
     uint32_t mask;
     const char thrsh[] = "72|128\0\0\0" "96|256\0\0\0" "128|512\0\0" "160|1024";
 
-    csr &= (1 << (sizeof(tulip_status_bits)/sizeof(tulip_status_bits[0]))) - 1;
+    csr &= (1 << (NELEM(tulip_status_bits))) - 1;
     if_printf(&sc->tulip_if, "abnormal interrupt:");
     for (sep = " ", mask = 1; mask <= csr; mask <<= 1, msgp++) {
        if ((csr & mask) && *msgp != NULL) {
index 8450561..d2667a5 100644 (file)
@@ -1,7 +1,6 @@
 /*     $NetBSD: if_devar.h,v 1.32 1999/04/01 14:55:25 tsubai Exp $     */
 
 /* $FreeBSD: src/sys/pci/if_devar.h,v 1.23.2.1 2000/08/04 23:25:10 peter Exp $ */
-/* $DragonFly: src/sys/dev/netif/de/if_devar.h,v 1.16 2006/12/22 23:26:19 swildner Exp $ */
 
 /*-
  * Copyright (c) 1994-1997 Matt Thomas (matt@3am-software.com)
@@ -658,8 +657,7 @@ static const struct {
                TULIP_SROM_ATTR_AUTOSENSE|TULIP_SROM_ATTR_NWAY },
     { TULIP_SROM_CONNTYPE_NOT_USED,            TULIP_MEDIA_UNKNOWN }
 };
-#define        TULIP_SROM_LASTCONNIDX  \
-               (sizeof(tulip_srom_conninfo)/sizeof(tulip_srom_conninfo[0]) - 1)
+#define        TULIP_SROM_LASTCONNIDX  (NELEM(tulip_srom_conninfo) - 1)
 
 static const struct {
     tulip_media_t sm_type;
index aea0a5a..9064640 100644 (file)
@@ -25,7 +25,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/ed/if_ed.c,v 1.224 2003/12/08 07:54:12 obrien Exp $
- * $DragonFly: src/sys/dev/netif/ed/if_ed.c,v 1.35 2008/05/14 11:59:19 sephe Exp $
  */
 
 /*
@@ -1362,7 +1361,7 @@ ed_probe_HP_pclanp(device_t dev, int port_rid, int flags)
         * Check for impossible IRQ.
         */
 
-       if (irq >= (sizeof(ed_hpp_intr_val) / sizeof(ed_hpp_intr_val[0])))
+       if (irq >= NELEM(ed_hpp_intr_val))
                return ENXIO;
 
        /* 
index 67df865..16558fe 100644 (file)
@@ -25,7 +25,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/ed/if_ed_pccard.c,v 1.55 2003/12/31 04:25:00 kato Exp $
- * $DragonFly: src/sys/dev/netif/ed/if_ed_pccard.c,v 1.22 2008/08/17 04:32:33 sephe Exp $
  */
 
 #include "opt_ed.h"
@@ -329,7 +328,7 @@ ax88190_geteprom(struct ed_softc *sc)
        DELAY(5000);
 
        /* Card Settings */
-       for (i = 0; i < sizeof(pg_seq) / sizeof(pg_seq[0]); i++)
+       for (i = 0; i < NELEM(pg_seq); i++)
                ed_nic_outb(sc, pg_seq[i].offset, pg_seq[i].value);
 
        /* Get Data */
index 52981ff..14cd7b7 100644 (file)
@@ -3392,7 +3392,6 @@ iwi_led_blink(struct iwi_softc *sc, int on, int off)
 static void
 iwi_led_event(struct iwi_softc *sc, int event)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        /* NB: on/off times from the Atheros NDIS driver, w/ permission */
        static const struct {
                u_int           rate;           /* tx/rx iwi rate */
@@ -3422,13 +3421,13 @@ iwi_led_event(struct iwi_softc *sc, int event)
                return;
        switch (event) {
        case IWI_LED_POLL:
-               j = N(blinkrates)-1;
+               j = NELEM(blinkrates)-1;
                break;
        case IWI_LED_TX:
                /* read current transmission rate from adapter */
                txrate = CSR_READ_4(sc, IWI_CSR_CURRENT_TX_RATE);
                if (blinkrates[sc->sc_txrix].rate != txrate) {
-                       for (j = 0; j < N(blinkrates)-1; j++)
+                       for (j = 0; j < NELEM(blinkrates)-1; j++)
                                if (blinkrates[j].rate == txrate)
                                        break;
                        sc->sc_txrix = j;
@@ -3437,7 +3436,7 @@ iwi_led_event(struct iwi_softc *sc, int event)
                break;
        case IWI_LED_RX:
                if (blinkrates[sc->sc_rxrix].rate != sc->sc_rxrate) {
-                       for (j = 0; j < N(blinkrates)-1; j++)
+                       for (j = 0; j < NELEM(blinkrates)-1; j++)
                                if (blinkrates[j].rate == sc->sc_rxrate)
                                        break;
                        sc->sc_rxrix = j;
@@ -3448,7 +3447,6 @@ iwi_led_event(struct iwi_softc *sc, int event)
        /* XXX beware of overflow */
        iwi_led_blink(sc, (blinkrates[j].timeOn * hz) / 1000,
                (blinkrates[j].timeOff * hz) / 1000);
-#undef N
 }
 
 static int
index 981a363..cda8e15 100644 (file)
@@ -1892,8 +1892,6 @@ iwn_read_eeprom_channels(struct iwn_softc *sc, int n, uint32_t addr)
        ieee80211_sort_channels(ic->ic_channels, ic->ic_nchans);
 }
 
-#define nitems(_a)     (sizeof((_a)) / sizeof((_a)[0]))
-
 static void
 iwn_read_eeprom_enhinfo(struct iwn_softc *sc)
 {
@@ -1908,7 +1906,7 @@ iwn_read_eeprom_enhinfo(struct iwn_softc *sc)
            enhinfo, sizeof enhinfo);
 
        memset(sc->enh_maxpwr, 0, sizeof sc->enh_maxpwr);
-       for (i = 0; i < nitems(enhinfo); i++) {
+       for (i = 0; i < NELEM(enhinfo); i++) {
                if (enhinfo[i].chan == 0 || enhinfo[i].reserved != 0)
                        continue;       /* Skip invalid entries. */
 
@@ -2702,7 +2700,7 @@ iwn_fatal_intr(struct iwn_softc *sc)
        }
        kprintf("firmware error log:\n");
        kprintf("  error type      = \"%s\" (0x%08X)\n",
-           (dump.id < nitems(iwn_fw_errmsg)) ?
+           (dump.id < NELEM(iwn_fw_errmsg)) ?
                iwn_fw_errmsg[dump.id] : "UNKNOWN",
            dump.id);
        kprintf("  program counter = 0x%08X\n", dump.pc);
index 43562ba..417b6b3 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/dev/netif/mii_layer/truephy.c,v 1.3 2008/02/10 07:29:27 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -276,9 +274,7 @@ truephy_reset(struct mii_softc *sc)
        PHY_WRITE(sc, TRUEPHY_CTRL,
                  TRUEPHY_CTRL_DIAG | TRUEPHY_CTRL_RSV1 | TRUEPHY_CTRL_RSV0);
 
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
-
-       for (i = 0; i < N(truephy_dspcode); ++i) {
+       for (i = 0; i < NELEM(truephy_dspcode); ++i) {
                const struct truephy_dsp *dsp = &truephy_dspcode[i];
 
                PHY_WRITE(sc, TRUEPHY_INDEX, dsp->index);
@@ -288,8 +284,6 @@ truephy_reset(struct mii_softc *sc)
                PHY_READ(sc, TRUEPHY_DATA);
        }
 
-#undef N
-
        PHY_READ(sc, MII_BMCR);
        PHY_READ(sc, TRUEPHY_CTRL);
        PHY_WRITE(sc, MII_BMCR, BMCR_AUTOEN |  BMCR_S1000);
index c403ce0..b2e64c7 100644 (file)
@@ -32,7 +32,6 @@
  * SUCH DAMAGE.
  *
  * $NetBSD: if_rtw_pci.c,v 1.4 2005/12/04 17:44:02 christos Exp $
- * $DragonFly: src/sys/dev/netif/rtw/if_rtw_pci.c,v 1.5 2008/01/15 09:01:13 sephe Exp $
  */
 
 /*
@@ -212,8 +211,7 @@ rtw_pci_attach(device_t dev)
        pci_enable_busmaster(dev);
 
        /* Allocate IO memory/port */
-#define N(arr) sizeof(arr) / sizeof(arr[0])
-       for (i = 0; i < N(rtw_pci_regs); ++i) {
+       for (i = 0; i < NELEM(rtw_pci_regs); ++i) {
                regs->r_rid = rtw_pci_regs[i].reg_rid;
                regs->r_type = rtw_pci_regs[i].reg_type;
                regs->r_res = bus_alloc_resource_any(dev, regs->r_type,
@@ -221,7 +219,6 @@ rtw_pci_attach(device_t dev)
                if (regs->r_res != NULL)
                        break;
        }
-#undef N
        if (regs->r_res == NULL) {
                device_printf(dev, "can't allocate IO mem/port\n");
                return ENXIO;
index 8e6ab48..3b5052b 100644 (file)
@@ -32,7 +32,6 @@
  * SUCH DAMAGE.
  *
  * $NetBSD: rtw.c,v 1.72 2006/03/28 00:48:10 dyoung Exp $
- * $DragonFly: src/sys/dev/netif/rtw/rtw.c,v 1.13 2008/05/14 11:59:21 sephe Exp $
  */
 
 /*
@@ -719,7 +718,7 @@ out:
        RTW_WRITE8(regs, RTW_PSR, psr & ~RTW_PSR_PSEN);
 
        bus_space_write_region_4(regs->r_bt, regs->r_bh, RTW_DK0, rk->rk_words,
-               sizeof(rk->rk_words) / sizeof(rk->rk_words[0]));
+               NELEM(rk->rk_words));
 
        RTW_WBW(regs, RTW_DK0, RTW_PSR);
        RTW_WRITE8(regs, RTW_PSR, psr);
@@ -1433,7 +1432,7 @@ rtw_intr_rx(struct rtw_softc *sc, uint16_t isr)
                len -= IEEE80211_CRC_LEN;
 
                hwrate = __SHIFTOUT(hstat, RTW_RXSTAT_RATE_MASK);
-               if (hwrate >= sizeof(ratetbl) / sizeof(ratetbl[0])) {
+               if (hwrate >= NELEM(ratetbl)) {
                        if_printf(ifp, "unknown rate #%d\n",
                                  __SHIFTOUT(hstat, RTW_RXSTAT_RATE_MASK));
                        ifp->if_ierrors++;
index 0e210b5..b97a645 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/cardbus/cardbus_cis.c,v 1.50 2005/02/20 20:36:16 imp Exp $
- * $DragonFly: src/sys/dev/pccard/cardbus/cardbus_cis.c,v 1.8 2008/01/11 10:53:46 sephe Exp $
  */
 
 /*
@@ -213,7 +212,7 @@ decode_tuple_funcid(device_t cbdev, device_t child, int id,
     struct tuple_callbacks *info)
 {
        struct cardbus_devinfo *dinfo = device_get_ivars(child);
-       int numnames = sizeof(funcnames) / sizeof(funcnames[0]);
+       int numnames = NELEM(funcnames);
        int i;
 
        if (cardbus_cis_debug) {
index 54b87e6..daa6332 100644 (file)
@@ -132,7 +132,7 @@ kate_probe(struct device *dev)
         * when the temperature readings were officially introduced.
         */
        c = pci_read_config(dev, K_CPUID_FAMILY_MODEL_R, 4);
-       for (i = 0; i < sizeof(kate_proc) / sizeof(kate_proc[0]); i++)
+       for (i = 0; i < NELEM(kate_proc); i++)
                for (j = 0; kate_proc[i].cpuid[j] != 0; j++)
                        if ((c & ~0xf) == kate_proc[i].cpuid[j])
                                return 0;
@@ -165,8 +165,7 @@ kate_attach(struct device *dev)
        sc->sc_dev = dev;
 
        c = pci_read_config(dev, K_CPUID_FAMILY_MODEL_R, 4);
-       for (i = 0; i < sizeof(kate_proc) / sizeof(kate_proc[0]) &&
-           sc->sc_rev == '\0'; i++)
+       for (i = 0; i < NELEM(kate_proc) && sc->sc_rev == '\0'; i++)
                for (j = 0; kate_proc[i].cpuid[j] != 0; j++)
                        if ((c & ~0xf) == kate_proc[i].cpuid[j]) {
                                sc->sc_rev = kate_proc[i].rev[3];
index f35ddb5..e2b3720 100644 (file)
@@ -385,7 +385,7 @@ lm_probe(struct lm_softc *sc)
 {
        int i;
        
-       for (i = 0; i < sizeof(lm_chips) / sizeof(lm_chips[0]); i++)
+       for (i = 0; i < NELEM(lm_chips); i++)
                if (lm_chips[i].chip_match(sc))
                        break;
 }
index 91be4c3..aaea467 100644 (file)
@@ -1074,7 +1074,7 @@ mlx_periodic_enquiry(struct mlx_command *mc)
        int                             i;
 
        /* convert data in-place to new format */
-       for (i = (sizeof(me->me_dead) / sizeof(me->me_dead[0])) - 1; i >= 0; i--) {
+       for (i = NELEM(me->me_dead) - 1; i >= 0; i--) {
            me->me_dead[i].dd_chan = meo->me_dead[i].dd_chan;
            me->me_dead[i].dd_targ = meo->me_dead[i].dd_targ;
        }
@@ -1090,8 +1090,8 @@ mlx_periodic_enquiry(struct mlx_command *mc)
        me->me_fwminor           = meo->me_fwminor;
        me->me_status_flags      = meo->me_status_flags;
        me->me_flash_age         = meo->me_flash_age;
-       for (i = (sizeof(me->me_drvsize) / sizeof(me->me_drvsize[0])) - 1; i >= 0; i--) {
-           if (i > ((sizeof(meo->me_drvsize) / sizeof(meo->me_drvsize[0])) - 1)) {
+       for (i = NELEM(me->me_drvsize) - 1; i >= 0; i--) {
+           if (i > (NELEM(meo->me_drvsize) - 1)) {
                me->me_drvsize[i] = 0;          /* drive beyond supported range */
            } else {
                me->me_drvsize[i] = meo->me_drvsize[i];
@@ -1257,7 +1257,7 @@ mlx_periodic_eventlog_respond(struct mlx_command *mc)
            /* Mylex vendor-specific message indicating a drive was killed? */
            if ((el->el_sensekey == 9) &&
                (el->el_asc == 0x80)) {
-               if (el->el_asq < (sizeof(mlx_sense_messages) / sizeof(mlx_sense_messages[0]))) {
+               if (el->el_asq < NELEM(mlx_sense_messages)) {
                    reason = mlx_sense_messages[el->el_asq];
                } else {
                    reason = "for unknown reason";
index 3c5b8fb..89dd265 100644 (file)
@@ -1893,7 +1893,7 @@ digi_errortxt(int id)
                "tty-level buffer overflow",
        };
 
-       KASSERT(id >= 0 && id < sizeof(error_desc) / sizeof(error_desc[0]),
+       KASSERT(id >= 0 && id < NELEM(error_desc),
            ("Unexpected digi error id %d\n", id));
 
        return (error_desc[id]);
index b851a7f..f5ad315 100644 (file)
@@ -27,7 +27,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/digi/digi_isa.c,v 1.12 2003/08/24 17:46:03 obrien Exp $
- * $DragonFly: src/sys/dev/serial/digi/digi_isa.c,v 1.3 2008/04/30 17:28:17 dillon Exp $
  */
 
 /*-
@@ -55,7 +54,7 @@
 static u_long digi_validio[] = {
        0x100, 0x110, 0x120, 0x200, 0x220, 0x300, 0x320
 };
-#define DIGI_NVALIDIO  (sizeof(digi_validio) / sizeof(digi_validio[0]))
+#define DIGI_NVALIDIO  NELEM(digi_validio)
 #define        IO_SIZE         0x04
 
 static u_long digi_validmem[] = {
@@ -65,7 +64,7 @@ static u_long digi_validmem[] = {
        0xf6000000, 0xf7000000, 0xf8000000, 0xf9000000, 0xfa000000, 0xfb000000,
        0xfc000000, 0xfd000000, 0xfe000000, 0xff000000
 };
-#define DIGI_NVALIDMEM (sizeof(digi_validmem) / sizeof(digi_validmem[0]))
+#define DIGI_NVALIDMEM NELEM(digi_validmem)
 
 static u_char *
 digi_isa_setwin(struct digi_softc *sc, unsigned int addr)
index 2a11be5..dfb8ec0 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/sound/pci/als4000.c,v 1.18.2.1 2005/12/30 19:55:53 netchild Exp $
- * $DragonFly: src/sys/dev/sound/pci/als4000.c,v 1.11 2007/06/16 20:07:19 dillon Exp $
  */
 
 /*
@@ -45,8 +44,6 @@
 
 #include "mixer_if.h"
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/als4000.c,v 1.11 2007/06/16 20:07:19 dillon Exp $");
-
 /* Debugging macro's */
 #undef DEB
 #ifndef DEB
@@ -330,7 +327,7 @@ als_get_playback_command(u_int32_t format)
 {
        u_int32_t i, n;
 
-       n = sizeof(playback_cmds) / sizeof(playback_cmds[0]);
+       n = NELEM(playback_cmds);
        for (i = 0; i < n; i++) {
                if (playback_cmds[i].pcm_format == format) {
                        return &playback_cmds[i];
index 573cb46..bf070a7 100644 (file)
@@ -24,7 +24,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/sound/pci/atiixp.c,v 1.2.2.8 2007/11/06 02:08:25 ariff Exp $
- * $DragonFly: src/sys/dev/sound/pci/atiixp.c,v 1.6 2007/11/30 08:01:43 hasso Exp $
  */
 
 /*
@@ -66,8 +65,6 @@
 
 #include <dev/sound/pci/atiixp.h>
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/atiixp.c,v 1.6 2007/11/30 08:01:43 hasso Exp $");
-
 struct atiixp_dma_op {
        volatile uint32_t addr;
        volatile uint16_t status;
@@ -885,7 +882,7 @@ atiixp_pci_probe(device_t dev)
 
        vendor = pci_get_vendor(dev);
        devid = pci_get_device(dev);
-       for (i = 0; i < sizeof(atiixp_hw)/sizeof(atiixp_hw[0]); i++) {
+       for (i = 0; i < NELEM(atiixp_hw); i++) {
                if (vendor == atiixp_hw[i].vendor &&
                                        devid == atiixp_hw[i].devid) {
                        device_set_desc(dev, atiixp_hw[i].desc);
index 47de8f0..e5cff80 100644 (file)
@@ -40,7 +40,6 @@
  * those that don't.
  *
  * $FreeBSD: src/sys/dev/sound/pci/cmi.c,v 1.32.2.2 2006/01/24 18:54:22 joel Exp $
- * $DragonFly: src/sys/dev/sound/pci/cmi.c,v 1.10 2007/06/16 20:07:19 dillon Exp $
  */
 
 #include <dev/sound/pcm/sound.h>
@@ -54,8 +53,6 @@
 
 #include "mixer_if.h"
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/cmi.c,v 1.10 2007/06/16 20:07:19 dillon Exp $");
-
 /* Supported chip ID's */
 #define CMI8338A_PCI_ID   0x010013f6
 #define CMI8338B_PCI_ID   0x010113f6
@@ -201,7 +198,7 @@ cmi_set4(struct sc_info *sc, int reg, u_int32_t mask)
 
 static int cmi_rates[] = {5512, 8000, 11025, 16000,
                          22050, 32000, 44100, 48000};
-#define NUM_CMI_RATES (sizeof(cmi_rates)/sizeof(cmi_rates[0]))
+#define NUM_CMI_RATES NELEM(cmi_rates)
 
 /* cmpci_rate_to_regvalue returns sampling freq selector for FCR1
  * register - reg order is 5k,11k,22k,44k,8k,16k,32k,48k */
index 7ccd7f6..550d1e3 100644 (file)
@@ -29,7 +29,6 @@
  * contributed towards power management.
  *
  * $FreeBSD: src/sys/dev/sound/pci/cs4281.c,v 1.22 2005/03/01 08:58:05 imp Exp $
- * $DragonFly: src/sys/dev/sound/pci/cs4281.c,v 1.10 2007/01/04 21:47:02 corecode Exp $
  */
 
 #include <dev/sound/pcm/sound.h>
@@ -40,8 +39,6 @@
 
 #include <dev/sound/pci/cs4281.h>
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/cs4281.c,v 1.10 2007/01/04 21:47:02 corecode Exp $");
-
 #define CS4281_DEFAULT_BUFSZ 16384
 
 /* Max fifo size for full duplex is 64 */
@@ -201,7 +198,7 @@ cs4281_waitclr(struct sc_info *sc, int regno, u_int32_t mask, int tries)
 /* Register value mapping functions */
 
 static u_int32_t cs4281_rates[] = {48000, 44100, 22050, 16000, 11025, 8000};
-#define CS4281_NUM_RATES sizeof(cs4281_rates)/sizeof(cs4281_rates[0])
+#define CS4281_NUM_RATES NELEM(cs4281_rates)
 
 static u_int8_t
 cs4281_rate_to_rv(u_int32_t rate)
index e389883..1f9dbf9 100644 (file)
@@ -25,7 +25,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/sound/pci/hda/hdac.c,v 1.36.2.8 2007/11/30 15:11:42 ariff Exp $
- * $DragonFly: src/sys/dev/sound/pci/hda/hdac.c,v 1.14 2007/12/01 08:32:11 hasso Exp $
  */
 
 /*
@@ -87,8 +86,6 @@
 #define HDA_DRV_TEST_REV       "20071129_0050"
 #define HDA_WIDGET_PARSER_REV  1
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/hda/hdac.c,v 1.14 2007/12/01 08:32:11 hasso Exp $");
-
 static int hda_debug
 #ifdef HDA_DEBUG
        = 1
@@ -399,8 +396,7 @@ static const struct {
        { "ovref", HDA_QUIRK_OVREF },
        { "vref", HDA_QUIRK_VREF },
 };
-#define HDAC_QUIRKS_TAB_LEN    \
-               (sizeof(hdac_quirks_tab) / sizeof(hdac_quirks_tab[0]))
+#define HDAC_QUIRKS_TAB_LEN NELEM(hdac_quirks_tab)
 
 #define HDA_BDL_MIN    2
 #define HDA_BDL_MAX    256
@@ -461,7 +457,7 @@ static const struct {
        { HDA_VIA_ALL,    "VIA (Unknown)"    },
        { HDA_SIS_ALL,    "SiS (Unknown)"    },
 };
-#define HDAC_DEVICES_LEN (sizeof(hdac_devices) / sizeof(hdac_devices[0]))
+#define HDAC_DEVICES_LEN NELEM(hdac_devices)
 
 static const struct {
        uint16_t vendor;
@@ -473,8 +469,7 @@ static const struct {
        {    ATI_VENDORID, 0x42, 0xf8, 0x02 },
        { NVIDIA_VENDORID, 0x4e, 0xf0, 0x0f },
 };
-#define HDAC_PCIESNOOP_LEN     \
-                       (sizeof(hdac_pcie_snoop) / sizeof(hdac_pcie_snoop[0]))
+#define HDAC_PCIESNOOP_LEN NELEM(hdac_pcie_snoop)
 
 static const struct {
        uint32_t        rate;
@@ -519,7 +514,7 @@ static const struct {
        { 132300, 0, 0x4000, 0x1000, 0x0000 },  /* (44100 * 3) / 1 */
        { 176400, 1, 0x4000, 0x1800, 0x0000 },  /* (44100 * 4) / 1 */
 };
-#define HDA_RATE_TAB_LEN (sizeof(hda_rate_tab) / sizeof(hda_rate_tab[0]))
+#define HDA_RATE_TAB_LEN NELEM(hda_rate_tab)
 
 /* All codecs you can eat... */
 #define HDA_CODEC_CONSTRUCT(vendor, id) \
@@ -647,7 +642,7 @@ static const struct {
        { HDA_CODEC_CXXXXX,    "Conexant (Unknown)" },
        { HDA_CODEC_VTXXXX,    "VIA (Unknown)" },
 };
-#define HDAC_CODECS_LEN        (sizeof(hdac_codecs) / sizeof(hdac_codecs[0]))
+#define HDAC_CODECS_LEN        NELEM(hdac_codecs)
 
 enum {
        HDAC_HP_SWITCH_CTL,
@@ -736,8 +731,7 @@ static const struct {
            0, 0, -1, 20, { 21, -1 }, -1 },
 #endif
 };
-#define HDAC_HP_SWITCH_LEN     \
-               (sizeof(hdac_hp_switch) / sizeof(hdac_hp_switch[0]))
+#define HDAC_HP_SWITCH_LEN NELEM(hdac_hp_switch)
 
 static const struct {
        uint32_t model;
@@ -749,8 +743,7 @@ static const struct {
        { HP_NX7400_SUBVENDOR, HDA_CODEC_AD1981HD, 5, 1 },
        { HP_NX6310_SUBVENDOR, HDA_CODEC_AD1981HD, 5, 1 },
 };
-#define HDAC_EAPD_SWITCH_LEN   \
-               (sizeof(hdac_eapd_switch) / sizeof(hdac_eapd_switch[0]))
+#define HDAC_EAPD_SWITCH_LEN NELEM(hdac_eapd_switch)
 
 /****************************************************************************
  * Function prototypes
@@ -1944,7 +1937,7 @@ hdac_widget_connection_parse(struct hdac_widget *w)
                return;
 
        entnum = HDA_PARAM_CONN_LIST_LENGTH_LONG_FORM(res) ? 2 : 4;
-       max = (sizeof(w->conns) / sizeof(w->conns[0])) - 1;
+       max = NELEM(w->conns) - 1;
        prevcnid = 0;
 
 #define CONN_RMASK(e)          (1 << ((32 / (e)) - 1))
@@ -4258,7 +4251,7 @@ static const struct {
        { HDA_MATCH_ALL, HDA_CODEC_STACXXXX,
            HDA_QUIRK_SOFTPCMVOL, 0 }
 };
-#define HDAC_QUIRKS_LEN (sizeof(hdac_quirks) / sizeof(hdac_quirks[0]))
+#define HDAC_QUIRKS_LEN NELEM(hdac_quirks)
 
 static void
 hdac_vendor_patch_parse(struct hdac_devinfo *devinfo)
@@ -5309,7 +5302,7 @@ hdac_pcmchannel_setup(struct hdac_devinfo *devinfo, int dir)
        ret = 0;
        fmtcap = devinfo->function.audio.supp_stream_formats;
        pcmcap = devinfo->function.audio.supp_pcm_size_rate;
-       max = (sizeof(ch->io) / sizeof(ch->io[0])) - 1;
+       max = NELEM(ch->io) - 1;
 
        for (i = devinfo->startnode; i < devinfo->endnode && ret < max; i++) {
                w = hdac_widget_get(devinfo, i);
index 34552a4..9d4332b 100644 (file)
@@ -25,7 +25,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/sound/pci/ich.c,v 1.53.2.12 2007/07/12 06:39:38 ariff Exp $
- * $DragonFly: src/sys/dev/sound/pci/ich.c,v 1.17 2007/11/30 07:48:57 hasso Exp $
  */
 
 #include <dev/sound/pcm/sound.h>
@@ -35,8 +34,6 @@
 #include <bus/pci/pcireg.h>
 #include <bus/pci/pcivar.h>
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/ich.c,v 1.17 2007/11/30 07:48:57 hasso Exp $");
-
 /* -------------------------------------------------------------------- */
 
 #define ICH_TIMEOUT            1000 /* semaphore timeout polling count */
@@ -895,7 +892,7 @@ ich_pci_probe(device_t dev)
 
        vendor = pci_get_vendor(dev);
        devid = pci_get_device(dev);
-       for (i = 0; i < sizeof(ich_devs)/sizeof(ich_devs[0]); i++) {
+       for (i = 0; i < NELEM(ich_devs); i++) {
                if (vendor == ich_devs[i].vendor &&
                                devid == ich_devs[i].devid) {
                        device_set_desc(dev, ich_devs[i].name);
index fc3e3b7..4954505 100644 (file)
@@ -25,7 +25,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/sound/pci/maestro3.c,v 1.28.2.2 2007/03/12 02:03:25 ariff Exp $
- * $DragonFly: src/sys/dev/sound/pci/maestro3.c,v 1.12 2007/06/16 20:07:19 dillon Exp $
  */
 
 /*
@@ -64,8 +63,6 @@
 #include <dev/sound/pci/gnu/maestro3_reg.h>
 #include <dev/sound/pci/gnu/maestro3_dsp.h>
 
-SND_DECLARE_FILE("$DragonFly: src/sys/dev/sound/pci/maestro3.c,v 1.12 2007/06/16 20:07:19 dillon Exp $");
-
 /* -------------------------------------------------------------------- */
 
 enum {CHANGE=0, CALL=1, INTR=2, BORING=3, NONE=-1};
@@ -459,7 +456,7 @@ m3_pchan_init(kobj_t kobj, void *devinfo, struct snd_dbuf *b, struct pcm_channel
                        DMAC_BLOCKF_SELECTOR);
 
        /* set an armload of static initializers */
-       for(i = 0 ; i < (sizeof(pv) / sizeof(pv[0])) ; i++) {
+       for(i = 0 ; i < NELEM(pv) ; i++) {
                m3_wr_assp_data(sc, ch->dac_data + pv[i].addr, pv[i].val);
        }
 
@@ -803,7 +800,7 @@ m3_rchan_init(kobj_t kobj, void *devinfo, struct snd_dbuf *b, struct pcm_channel
                        DMAC_PAGE3_SELECTOR + DMAC_BLOCKF_SELECTOR);
 
        /* set an armload of static initializers */
-       for(i = 0 ; i < (sizeof(rv) / sizeof(rv[0])) ; i++) {
+       for(i = 0 ; i < NELEM(rv) ; i++) {
                m3_wr_assp_data(sc, ch->adc_data + rv[i].addr, rv[i].val);
        }
 
index 2099921..f4e4148 100644 (file)
@@ -1,6 +1,5 @@
 /*
  * $FreeBSD: src/sys/dev/usb/ukbd.c,v 1.45 2003/10/04 21:41:01 joe Exp $
- * $DragonFly: src/sys/dev/usbmisc/ukbd/ukbd.c,v 1.27 2008/08/14 20:55:53 hasso Exp $
  */
 
 /*
@@ -535,15 +534,14 @@ ukbd_init(int unit, keyboard_t **kbdp, void *arg, int flags)
                keymap = &default_keymap;
                accmap = &default_accentmap;
                fkeymap = default_fkeytab;
-               fkeymap_size =
-                       sizeof(default_fkeytab)/sizeof(default_fkeytab[0]);
+               fkeymap_size = NELEM(default_fkeytab);
        } else if (*kbdp == NULL) {
                *kbdp = kbd = kmalloc(sizeof(*kbd), M_DEVBUF, M_INTWAIT | M_ZERO);
                state = kmalloc(sizeof(*state), M_DEVBUF, M_INTWAIT);
                keymap = kmalloc(sizeof(key_map), M_DEVBUF, M_INTWAIT);
                accmap = kmalloc(sizeof(accent_map), M_DEVBUF, M_INTWAIT);
                fkeymap = kmalloc(sizeof(fkey_tab), M_DEVBUF, M_INTWAIT);
-               fkeymap_size = sizeof(fkey_tab)/sizeof(fkey_tab[0]);
+               fkeymap_size = NELEM(fkey_tab);
                if ((state == NULL) || (keymap == NULL) || (accmap == NULL)
                     || (fkeymap == NULL)) {
                        if (state != NULL)
@@ -1518,7 +1516,7 @@ keycode2scancode(int keycode, int shift, int up)
        int scancode;
 
        scancode = keycode;
-       if ((keycode >= 89) && (keycode < 89 + sizeof(scan)/sizeof(scan[0])))
+       if ((keycode >= 89) && (keycode < 89 + NELEM(scan)))
                scancode = scan[keycode - 89] | SCAN_PREFIX_E0;
        /* Pause/Break */
        if ((keycode == 104) && !(shift & (MOD_CONTROL_L | MOD_CONTROL_R)))
index 3db8150..75b93de 100644 (file)
@@ -1,7 +1,6 @@
 /*
  * $NetBSD: uplcom.c,v 1.21 2001/11/13 06:24:56 lukem Exp $
  * $FreeBSD: src/sys/dev/usb/uplcom.c,v 1.39 2006/09/07 00:06:42 imp Exp $
- * $DragonFly: src/sys/dev/usbmisc/uplcom/uplcom.c,v 1.26 2008/01/13 16:04:02 hasso Exp $
  */
 
 /*-
@@ -580,7 +579,7 @@ static const struct pl2303x_init pl2303x[] = {
        { UT_WRITE_VENDOR_DEVICE, UPLCOM_SET_REQUEST,      1,    0, 0 },
        { UT_WRITE_VENDOR_DEVICE, UPLCOM_SET_REQUEST,      2, 0x44, 0 }
 };
-#define N_PL2302X_INIT (sizeof(pl2303x)/sizeof(pl2303x[0]))
+#define N_PL2302X_INIT NELEM(pl2303x)
 
 static usbd_status
 uplcom_pl2303x_init(struct uplcom_softc *sc)
@@ -763,7 +762,7 @@ static const int uplcom_rates[] = {
         */
        230400, 460800, 614400, 921600, 1228800
 };
-#define N_UPLCOM_RATES (sizeof(uplcom_rates)/sizeof(uplcom_rates[0]))
+#define N_UPLCOM_RATES NELEM(uplcom_rates)
 
 static int
 uplcom_param(void *addr, int portno, struct termios *t)
index 99535f0..962543c 100644 (file)
@@ -62,7 +62,6 @@
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/dev/bktr/bktr_core.c,v 1.140 2005/12/04 10:06:03 ru Exp $
- * $DragonFly: src/sys/dev/video/bktr/bktr_core.c,v 1.22 2007/10/03 19:27:08 swildner Exp $
  */
 
 /*
@@ -245,7 +244,7 @@ static struct meteor_pixfmt_internal {
 { { 0, METEOR_PIXTYPE_YUV_12, 2, { 0xff0000,0x00ff00,0x0000ff }, 1,1 }, 0x88 },
 
 };
-#define PIXFMT_TABLE_SIZE ( sizeof(pixfmt_table) / sizeof(pixfmt_table[0]) )
+#define PIXFMT_TABLE_SIZE NELEM(pixfmt_table)
 
 /*
  * Table of Meteor-supported Pixel Formats (for SETGEO compatibility)
index 57deab9..079b59a 100644 (file)
@@ -639,7 +639,7 @@ fb_type(int adp_type)
        };
        int i;
 
-       for (i = 0; i < sizeof(types)/sizeof(types[0]); ++i) {
+       for (i = 0; i < NELEM(types); ++i) {
                if (types[i].va_type == adp_type)
                        return types[i].fb_type;
        }
index e54a1ba..d68d904 100644 (file)
@@ -496,7 +496,7 @@ map_mode_num(int mode)
     };
     int i;
 
-    for (i = 0; i < sizeof(mode_map)/sizeof(mode_map[0]); ++i) {
+    for (i = 0; i < NELEM(mode_map); ++i) {
         if (mode_map[i].from == mode)
             return mode_map[i].to;
     }
@@ -523,7 +523,7 @@ map_bios_mode_num(int bios_mode)
        M_VGA_CG320,
     };
 
-    if (bios_mode < sizeof(vga_modes)/sizeof(vga_modes[0]))
+    if (bios_mode < NELEM(vga_modes))
        return vga_modes[bios_mode];
 
     return M_VGA_C80x25;
index 313f4f7..c0d4278 100644 (file)
@@ -527,7 +527,7 @@ vesa_translate_flags(uint16_t vflags)
        int flags;
        int i;
 
-       for (flags = 0, i = 0; i < sizeof(ftable)/sizeof(ftable[0]); ++i) {
+       for (flags = 0, i = 0; i < NELEM(ftable); ++i) {
                flags |= (vflags & ftable[i].mask) ? 
                         ftable[i].set : ftable[i].reset;
        }
index 0314698..4097a0f 100644 (file)
@@ -39,7 +39,6 @@
  *     @(#)procfs_vnops.c      8.18 (Berkeley) 5/21/95
  *
  * $FreeBSD: src/sys/i386/linux/linprocfs/linprocfs_vnops.c,v 1.3.2.5 2001/08/12 14:29:19 rwatson Exp $
- * $DragonFly: src/sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c,v 1.42 2007/11/20 21:03:48 dillon Exp $
  */
 
 /*
@@ -156,7 +155,7 @@ static struct proc_target {
 #endif
 #undef N
 };
-static const int nproc_targets = sizeof(proc_targets) / sizeof(proc_targets[0]);
+static const int nproc_targets = NELEM(proc_targets);
 
 static pid_t atopid (const char *, u_int);
 
index 893e2a8..a682897 100644 (file)
@@ -24,7 +24,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/kern/kern_intr.c,v 1.24.2.1 2001/10/14 20:05:50 luigi Exp $
- * $DragonFly: src/sys/kern/kern_intr.c,v 1.55 2008/09/01 12:49:00 sephe Exp $
  *
  */
 
@@ -125,7 +124,7 @@ static void report_stray_interrupt(int intr, struct intr_info *info);
 static void int_moveto_destcpu(int *, int *, int);
 static void int_moveto_origcpu(int, int);
 
-int intr_info_size = sizeof(intr_info_ary) / sizeof(intr_info_ary[0]);
+int intr_info_size = NELEM(intr_info_ary);
 
 static struct systimer emergency_intr_timer;
 static struct thread emergency_intr_thread;
index 68beda5..4bea176 100644 (file)
@@ -1387,7 +1387,7 @@ kmem_slab_alloc(vm_size_t size, vm_offset_t align, int flags)
        }
 
        m = vm_page_alloc(&kernel_object, OFF_TO_IDX(addr + i), vmflags);
-       if ((i / PAGE_SIZE) < (sizeof(mp) / sizeof(mp[0])))
+       if (i / PAGE_SIZE < NELEM(mp))
                mp[i / PAGE_SIZE] = m;
 
        /*
@@ -1451,7 +1451,7 @@ kmem_slab_alloc(vm_size_t size, vm_offset_t align, int flags)
     for (i = 0; i < size; i += PAGE_SIZE) {
        vm_page_t m;
 
-       if ((i / PAGE_SIZE) < (sizeof(mp) / sizeof(mp[0])))
+       if (i / PAGE_SIZE < NELEM(mp))
           m = mp[i / PAGE_SIZE];
        else 
           m = vm_page_lookup(&kernel_object, OFF_TO_IDX(addr + i));
index 7991ff5..129d890 100644 (file)
@@ -37,7 +37,6 @@
  *
  *     @(#)kern_subr.c 8.3 (Berkeley) 1/21/94
  * $FreeBSD: src/sys/kern/kern_subr.c,v 1.31.2.2 2002/04/21 08:09:37 bde Exp $
- * $DragonFly: src/sys/kern/kern_subr.c,v 1.27 2007/01/29 20:44:02 tgen Exp $
  */
 
 #include "opt_ddb.h"
@@ -290,7 +289,7 @@ hashinit_ext(int elements, size_t size, struct malloc_type *type,
 static int primes[] = { 1, 13, 31, 61, 127, 251, 509, 761, 1021, 1531, 2039,
                        2557, 3067, 3583, 4093, 4603, 5119, 5623, 6143, 6653,
                        7159, 7673, 8191, 12281, 16381, 24571, 32749 };
-#define NPRIMES (sizeof(primes) / sizeof(primes[0]))
+#define NPRIMES NELEM(primes)
 
 /*
  * General routine to allocate a prime number sized hash table.
index c34c0cc..ee86495 100644 (file)
@@ -1,5 +1,4 @@
 /* $FreeBSD: src/sys/kern/sysv_msg.c,v 1.23.2.5 2002/12/31 08:54:53 maxim Exp $ */
-/* $DragonFly: src/sys/kern/sysv_msg.c,v 1.18 2008/01/06 16:55:51 swildner Exp $ */
 
 /*
  * Implementation of SVID messages
@@ -207,7 +206,7 @@ sys_msgsys(struct msgsys_args *uap)
        if (!jail_sysvipc_allowed && td->td_ucred->cr_prison != NULL)
                return (ENOSYS);
 
-       if (which >= sizeof(msgcalls)/sizeof(msgcalls[0]))
+       if (which >= NELEM(msgcalls))
                return (EINVAL);
        bcopy(&uap->a2, &uap->which,
              sizeof(struct msgsys_args) - offsetof(struct msgsys_args, a2));
index 92d4013..6799334 100644 (file)
@@ -1,5 +1,4 @@
 /* $FreeBSD: src/sys/kern/sysv_sem.c,v 1.69 2004/03/17 09:37:13 cperciva Exp $ */
-/* $DragonFly: src/sys/kern/sysv_sem.c,v 1.19 2008/01/06 16:55:51 swildner Exp $ */
 
 /*
  * Implementation of SVID semaphores
@@ -210,7 +209,7 @@ sys_semsys(struct semsys_args *uap)
        if (!jail_sysvipc_allowed && td->td_ucred->cr_prison != NULL)
                return (ENOSYS);
 
-       if (which >= sizeof(semcalls)/sizeof(semcalls[0]))
+       if (which >= NELEM(semcalls))
                return (EINVAL);
        bcopy(&uap->a2, &uap->which,
              sizeof(struct semsys_args) - offsetof(struct semsys_args, a2));
index 676a3dd..7c8f117 100644 (file)
@@ -1,5 +1,4 @@
 /* $FreeBSD: src/sys/kern/sysv_shm.c,v 1.45.2.6 2002/10/22 20:45:03 fjoe Exp $ */
-/* $DragonFly: src/sys/kern/sysv_shm.c,v 1.21 2008/01/06 16:55:51 swildner Exp $ */
 /*     $NetBSD: sysv_shm.c,v 1.23 1994/07/04 23:25:12 glass Exp $      */
 
 /*
@@ -654,7 +653,7 @@ sys_shmsys(struct shmsys_args *uap)
        if (!jail_sysvipc_allowed && td->td_ucred->cr_prison != NULL)
                return (ENOSYS);
 
-       if (which >= sizeof(shmcalls)/sizeof(shmcalls[0]))
+       if (which >= NELEM(shmcalls))
                return EINVAL;
        get_mplock();
        bcopy(&uap->a2, &uap->which,
index c8dd499..d9344b9 100644 (file)
@@ -32,7 +32,6 @@
  *
  *     @(#)uipc_proto.c        8.1 (Berkeley) 6/10/93
  * $FreeBSD: src/sys/kern/uipc_proto.c,v 1.21.2.1 2002/03/09 05:22:23 dd Exp $
- * $DragonFly: src/sys/kern/uipc_proto.c,v 1.7 2008/10/27 02:56:30 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -89,7 +88,7 @@ static struct protosw localsw[] = {
 
 struct domain localdomain = {
        AF_LOCAL, "local", unp_init, unp_externalize, unp_dispose,
-       localsw, &localsw[sizeof(localsw)/sizeof(localsw[0])],
+       localsw, &localsw[NELEM(localsw)],
 };
 
 DOMAIN_SET(local);
index 3fffcaf..e14e6f4 100644 (file)
@@ -66,7 +66,6 @@
  * $OpenBSD: if_bridge.c,v 1.60 2001/06/15 03:38:33 itojun Exp $
  * $NetBSD: if_bridge.c,v 1.31 2005/06/01 19:45:34 jdc Exp $
  * $FreeBSD: src/sys/net/if_bridge.c,v 1.26 2005/10/13 23:05:55 thompsa Exp $
- * $DragonFly: src/sys/net/bridge/if_bridge.c,v 1.60 2008/11/26 12:49:43 sephe Exp $
  */
 
 /*
@@ -573,8 +572,7 @@ const struct bridge_control bridge_control_table[] = {
        { bridge_ioctl_delspan,         sizeof(struct ifbreq),
          BC_F_COPYIN|BC_F_SUSER },
 };
-static const int bridge_control_table_size =
-    sizeof(bridge_control_table) / sizeof(bridge_control_table[0]);
+static const int bridge_control_table_size = NELEM(bridge_control_table);
 
 LIST_HEAD(, bridge_softc) bridge_list;
 
index ec8a0aa..bb9b33c 100644 (file)
@@ -25,7 +25,6 @@
  * capi/capi_l4if.c    The CAPI i4b L4/device interface.
  *
  * $FreeBSD: src/sys/i4b/capi/capi_l4if.c,v 1.1.2.1 2001/08/10 14:08:34 obrien Exp $
- * $DragonFly: src/sys/net/i4b/capi/capi_l4if.c,v 1.10 2006/12/22 23:44:55 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -192,7 +191,7 @@ capi_ll_attach(capi_softc_t *sc)
 {
     int i;
 
-    if (ncapi == (sizeof(capi_sc) / sizeof(capi_sc[0]))) {
+    if (ncapi == NELEM(capi_sc)) {
        kprintf("capi%d: too many units, increase MAX_CONTROLLERS\n", ncapi);
        return (ENXIO);
     }
index 73561ff..cd0f63e 100644 (file)
@@ -34,8 +34,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- *
- * $DragonFly: src/sys/net/netisr.c,v 1.49 2008/11/01 10:29:31 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -321,7 +319,7 @@ netisr_queue(int num, struct mbuf *m)
        struct netmsg_packet *pmsg;
        lwkt_port_t port;
 
-       KASSERT((num > 0 && num <= (sizeof(netisrs)/sizeof(netisrs[0]))),
+       KASSERT((num > 0 && num <= NELEM(netisrs)),
                ("Bad isr %d", num));
 
        ni = &netisrs[num];
@@ -420,7 +418,7 @@ netisr_register(int num, netisr_fn_t handler, netisr_cpufn_t cpufn)
 {
        struct netisr *ni;
 
-       KASSERT((num > 0 && num <= (sizeof(netisrs)/sizeof(netisrs[0]))),
+       KASSERT((num > 0 && num <= NELEM(netisrs)),
                ("netisr_register: bad isr %d", num));
        KKASSERT(handler != NULL);
 
@@ -521,7 +519,7 @@ schednetisr_remote(void *data)
 void
 schednetisr(int num)
 {
-       KASSERT((num > 0 && num <= (sizeof(netisrs)/sizeof(netisrs[0]))),
+       KASSERT((num > 0 && num <= NELEM(netisrs)),
                ("schednetisr: bad isr %d", num));
        KKASSERT(netisrs[num].ni_handler != NULL);
 #ifdef SMP
index c185e78..0a1ca9b 100644 (file)
@@ -1,4 +1,3 @@
-/* $DragonFly: src/sys/netbt/bt_proto.c,v 1.7 2008/11/01 04:22:15 sephe Exp $ */
 /* $OpenBSD: bt_proto.c,v 1.4 2007/06/24 20:55:27 uwe Exp $ */
 
 /*
@@ -170,7 +169,7 @@ struct domain btdomain = {
        .dom_externalize = NULL,
        .dom_dispose = netbt_dispose,
        .dom_protosw = btsw,
-       .dom_protoswNPROTOSW = &btsw[sizeof(btsw)/sizeof(btsw[0])],
+       .dom_protoswNPROTOSW = &btsw[NELEM(btsw)],
        .dom_next = SLIST_ENTRY_INITIALIZER,
        .dom_rtattach = 0,
        .dom_rtoffset = 32,
index 20e5cfb..87d7efa 100644 (file)
@@ -1,4 +1,3 @@
-/* $DragonFly: src/sys/netbt/hci_socket.c,v 1.3 2008/06/20 20:52:29 aggelos Exp $ */
 /* $OpenBSD: src/sys/netbt/hci_socket.c,v 1.5 2008/02/24 21:34:48 uwe Exp $ */
 /* $NetBSD: hci_socket.c,v 1.14 2008/02/10 17:40:54 plunky Exp $ */
 
@@ -395,7 +394,7 @@ hci_security_check_opcode(struct hci_unit *unit, uint16_t opcode)
 {
        int i;
 
-       for (i = 0 ; i < sizeof(hci_cmds) / sizeof(hci_cmds[0]); i++) {
+       for (i = 0 ; i < NELEM(hci_cmds); i++) {
                if (opcode != hci_cmds[i].opcode)
                        continue;
 
index 9fd1458..636ae90 100644 (file)
@@ -37,7 +37,6 @@
  * Author: Julian Elischer <julian@freebsd.org>
  *
  * $FreeBSD: src/sys/netgraph/ng_socket.c,v 1.11.2.6 2002/07/02 22:17:18 archie Exp $
- * $DragonFly: src/sys/netgraph/socket/ng_socket.c,v 1.17 2008/11/01 04:22:15 sephe Exp $
  * $Whistle: ng_socket.c,v 1.28 1999/11/01 09:24:52 julian Exp $
  */
 
@@ -998,7 +997,7 @@ static struct protosw ngsw[] = {
 
 struct domain ngdomain = {
        AF_NETGRAPH, "netgraph", NULL, NULL, NULL,
-       ngsw, &ngsw[sizeof(ngsw) / sizeof(ngsw[0])],
+       ngsw, &ngsw[NELEM(ngsw)],
 };
 
 /*
index 11c1ce0..1875e62 100644 (file)
@@ -27,8 +27,6 @@
  * Author: Hartmut Brandt <harti@freebsd.org>
  *
  * $FreeBSD: src/sys/netgraph/atm/ng_atm.c,v 1.15 2005/08/10 06:25:40 obrien Exp $
- * $DragonFly: src/sys/netgraph7/atm/ng_atm.c,v 1.2 2008/06/26 23:05:37 dillon Exp $
- * $DragonFly: src/sys/netgraph7/atm/ng_atm.c,v 1.2 2008/06/26 23:05:37 dillon Exp $
  */
 
 /*
@@ -869,7 +867,7 @@ text_status(node_p node, char *arg, u_int len)
        sbuf_new(&sbuf, arg, len, SBUF_FIXEDLEN);
        sbuf_printf(&sbuf, "interface: %s\n", priv->ifp->if_xname);
 
-       if (mib->device >= sizeof(devices) / sizeof(devices[0]))
+       if (mib->device >= NELEM(devices))
                sbuf_printf(&sbuf, "device=unknown\nvendor=unknown\n");
        else
                sbuf_printf(&sbuf, "device=%s\nvendor=%s\n",
index b356429..cb721f4 100644 (file)
@@ -29,7 +29,6 @@
  *
  * $Id: ng_hci_misc.c,v 1.5 2003/09/08 18:57:51 max Exp $
  * $FreeBSD: src/sys/netgraph/bluetooth/hci/ng_hci_misc.c,v 1.10 2005/01/07 01:45:43 imp Exp $
- * $DragonFly: src/sys/netgraph7/bluetooth/hci/ng_hci_misc.c,v 1.2 2008/06/26 23:05:40 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -446,7 +445,7 @@ ng_hci_con_untimeout(ng_hci_unit_con_p con)
 char const * const
 ng_hci_str_error(u_int16_t code)
 {
-#define        LAST_ERROR_CODE                 ((sizeof(s)/sizeof(s[0]))-1)
+#define        LAST_ERROR_CODE                 (NELEM(s)-1)
        static char const * const       s[] = {
        /* 0x00 */ "No error",
        /* 0x01 */ "Unknown HCI command",
index 3e2d10a..b38d0ed 100644 (file)
@@ -29,7 +29,6 @@
  *
  * $Id: ng_btsocket.c,v 1.4 2003/09/14 23:29:06 max Exp $
  * $FreeBSD: src/sys/netgraph/bluetooth/socket/ng_btsocket.c,v 1.13 2006/07/21 17:11:13 rwatson Exp $
- * $DragonFly: src/sys/netgraph7/bluetooth/socket/ng_btsocket.c,v 1.2 2008/06/26 23:05:40 dillon Exp $
  */
 
 #include <sys/param.h>
@@ -180,8 +179,7 @@ static struct protosw               ng_btsocket_protosw[] = {
        .pr_usrreqs =           &ng_btsocket_rfcomm_usrreqs,
 }
 };
-#define ng_btsocket_protosw_size \
-       (sizeof(ng_btsocket_protosw)/sizeof(ng_btsocket_protosw[0]))
+#define ng_btsocket_protosw_size NELEM(ng_btsocket_protosw)
 #define ng_btsocket_protosw_end \
        &ng_btsocket_protosw[ng_btsocket_protosw_size]
 
index ed065c1..80ab473 100644 (file)
@@ -38,7 +38,6 @@
  * Author: Julian Elischer <julian@freebsd.org>
  *
  * $FreeBSD: src/sys/netgraph/ng_socket.c,v 1.85 2008/03/11 21:58:48 mav Exp $
- * $DragonFly: src/sys/netgraph7/ng_socket.c,v 1.2 2008/06/26 23:05:35 dillon Exp $
  * $Whistle: ng_socket.c,v 1.28 1999/11/01 09:24:52 julian Exp $
  */
 
@@ -1100,7 +1099,7 @@ struct domain ngdomain = {
        .dom_family =           AF_NETGRAPH,
        .dom_name =             "netgraph",
        .dom_protosw =          ngsw,
-       .dom_protoswNPROTOSW =  &ngsw[sizeof(ngsw) / sizeof(ngsw[0])]
+       .dom_protoswNPROTOSW =  &ngsw[NELEM(ngsw)]
 };
 
 /*
index 21ba979..683dfaa 100644 (file)
@@ -32,7 +32,6 @@
  *
  *     @(#)in_proto.c  8.2 (Berkeley) 2/9/95
  * $FreeBSD: src/sys/netinet/in_proto.c,v 1.53.2.7 2003/08/24 08:24:38 hsu Exp $
- * $DragonFly: src/sys/netinet/in_proto.c,v 1.17 2008/10/27 02:56:30 sephe Exp $
  */
 
 #include "opt_ipdivert.h"
@@ -522,7 +521,7 @@ struct protosw inetsw[] = {
 
 struct domain inetdomain = {
        AF_INET, "internet", NULL, NULL, NULL,
-       inetsw, &inetsw[sizeof(inetsw)/sizeof(inetsw[0])],
+       inetsw, &inetsw[NELEM(inetsw)],
        SLIST_ENTRY_INITIALIZER,
        in_inithead, 32, sizeof(struct sockaddr_in),
 };
index e446413..a26eb50 100644 (file)
@@ -205,7 +205,7 @@ esp_max_ivlen(void)
        int ivlen;
 
        ivlen = 0;
-       for (idx = 0; idx < sizeof(esp_algorithms)/sizeof(esp_algorithms[0]);
+       for (idx = 0; idx < NELEM(esp_algorithms);
             idx++) {
                if (esp_algorithms[idx].ivlenval > ivlen)
                        ivlen = esp_algorithms[idx].ivlenval;
index 8cd0ff5..f7c0834 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netinet6/in6_proto.c,v 1.6.2.9 2003/01/24 05:11:35 sam Exp $  */
-/*     $DragonFly: src/sys/netinet6/in6_proto.c,v 1.14 2008/10/27 02:56:30 sephe Exp $ */
 /*     $KAME: in6_proto.c,v 1.91 2001/05/27 13:28:35 itojun Exp $      */
 
 /*
@@ -397,7 +396,7 @@ extern int in6_inithead (void **, int);
 struct domain inet6domain = {
        AF_INET6, "internet6", NULL, NULL, NULL,
        (struct protosw *)inet6sw,
-       (struct protosw *)&inet6sw[sizeof(inet6sw)/sizeof(inet6sw[0])],
+       (struct protosw *)&inet6sw[NELEM(inet6sw)],
        SLIST_ENTRY_INITIALIZER,
        in6_inithead, offsetof(struct sockaddr_in6, sin6_addr) << 3,
        sizeof(struct sockaddr_in6), in6_domifattach, in6_domifdetach
index 35c50b0..286c10f 100644 (file)
@@ -271,7 +271,7 @@ ip6_input(netmsg_t msg)
                else
                        ip6stat.ip6s_mext1++;
        } else {
-#define M2MMAX (sizeof(ip6stat.ip6s_m2m)/sizeof(ip6stat.ip6s_m2m[0]))
+#define M2MMAX NELEM(ip6stat.ip6s_m2m)
                if (m->m_next) {
                        if (m->m_flags & M_LOOP) {
                                ip6stat.ip6s_m2m[loif[0].if_index]++;   /* XXX */
index 9abf2d8..64e121d 100644 (file)
@@ -1467,7 +1467,6 @@ findmedia(const struct ratemedia rates[], int n, u_int match)
 int
 ieee80211_rate2media(struct ieee80211com *ic, int rate, enum ieee80211_phymode mode)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        static const struct ratemedia rates[] = {
                {   2 | IFM_IEEE80211_FH, IFM_IEEE80211_FH1 },
                {   4 | IFM_IEEE80211_FH, IFM_IEEE80211_FH2 },
@@ -1527,7 +1526,7 @@ ieee80211_rate2media(struct ieee80211com *ic, int rate, enum ieee80211_phymode m
        if (mode == IEEE80211_MODE_11NA) {
                if (rate & IEEE80211_RATE_MCS) {
                        rate &= ~IEEE80211_RATE_MCS;
-                       m = findmedia(htrates, N(htrates), rate);
+                       m = findmedia(htrates, NELEM(htrates), rate);
                        if (m != IFM_AUTO)
                                return m | IFM_IEEE80211_11NA;
                }
@@ -1535,7 +1534,7 @@ ieee80211_rate2media(struct ieee80211com *ic, int rate, enum ieee80211_phymode m
                /* NB: 12 is ambiguous, it will be treated as an MCS */
                if (rate & IEEE80211_RATE_MCS) {
                        rate &= ~IEEE80211_RATE_MCS;
-                       m = findmedia(htrates, N(htrates), rate);
+                       m = findmedia(htrates, NELEM(htrates), rate);
                        if (m != IFM_AUTO)
                                return m | IFM_IEEE80211_11NG;
                }
@@ -1548,31 +1547,29 @@ ieee80211_rate2media(struct ieee80211com *ic, int rate, enum ieee80211_phymode m
        case IEEE80211_MODE_11NA:
        case IEEE80211_MODE_TURBO_A:
        case IEEE80211_MODE_STURBO_A:
-               return findmedia(rates, N(rates), rate | IFM_IEEE80211_11A);
+               return findmedia(rates, NELEM(rates), rate | IFM_IEEE80211_11A);
        case IEEE80211_MODE_11B:
-               return findmedia(rates, N(rates), rate | IFM_IEEE80211_11B);
+               return findmedia(rates, NELEM(rates), rate | IFM_IEEE80211_11B);
        case IEEE80211_MODE_FH:
-               return findmedia(rates, N(rates), rate | IFM_IEEE80211_FH);
+               return findmedia(rates, NELEM(rates), rate | IFM_IEEE80211_FH);
        case IEEE80211_MODE_AUTO:
                /* NB: ic may be NULL for some drivers */
                if (ic != NULL && ic->ic_phytype == IEEE80211_T_FH)
-                       return findmedia(rates, N(rates),
+                       return findmedia(rates, NELEM(rates),
                            rate | IFM_IEEE80211_FH);
                /* NB: hack, 11g matches both 11b+11a rates */
                /* fall thru... */
        case IEEE80211_MODE_11G:
        case IEEE80211_MODE_11NG:
        case IEEE80211_MODE_TURBO_G:
-               return findmedia(rates, N(rates), rate | IFM_IEEE80211_11G);
+               return findmedia(rates, NELEM(rates), rate | IFM_IEEE80211_11G);
        }
        return IFM_AUTO;
-#undef N
 }
 
 int
 ieee80211_media2rate(int mword)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        static const int ieeerates[] = {
                -1,             /* IFM_AUTO */
                0,              /* IFM_MANUAL */
@@ -1600,9 +1597,8 @@ ieee80211_media2rate(int mword)
                54,             /* IFM_IEEE80211_OFDM27 */
                -1,             /* IFM_IEEE80211_MCS */
        };
-       return IFM_SUBTYPE(mword) < N(ieeerates) ?
+       return IFM_SUBTYPE(mword) < NELEM(ieeerates) ?
                ieeerates[IFM_SUBTYPE(mword)] : 0;
-#undef N
 }
 
 /*
index 5d1c7b7..42d58e1 100644 (file)
@@ -81,41 +81,39 @@ static ieee80211_send_action_func *vendor_send_action[8] = {
 int
 ieee80211_send_action_register(int cat, int act, ieee80211_send_action_func *f)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        switch (cat) {
        case IEEE80211_ACTION_CAT_BA:
-               if (act >= N(ba_send_action))
+               if (act >= NELEM(ba_send_action))
                        break;
                ba_send_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_HT:
-               if (act >= N(ht_send_action))
+               if (act >= NELEM(ht_send_action))
                        break;
                ht_send_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHPEERING:
-               if (act >= N(meshpl_send_action))
+               if (act >= NELEM(meshpl_send_action))
                        break;
                meshpl_send_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHLMETRIC:
-               if (act >= N(meshlm_send_action))
+               if (act >= NELEM(meshlm_send_action))
                        break;
                meshlm_send_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHPATH:
-               if (act >= N(hwmp_send_action))
+               if (act >= NELEM(hwmp_send_action))
                        break;
                hwmp_send_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_VENDOR:
-               if (act >= N(vendor_send_action))
+               if (act >= NELEM(vendor_send_action))
                        break;
                vendor_send_action[act] = f;
                return 0;
        }
        return EINVAL;
-#undef N
 }
 
 void
@@ -127,37 +125,35 @@ ieee80211_send_action_unregister(int cat, int act)
 int
 ieee80211_send_action(struct ieee80211_node *ni, int cat, int act, void *sa)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        ieee80211_send_action_func *f = send_inval;
 
        switch (cat) {
        case IEEE80211_ACTION_CAT_BA:
-               if (act < N(ba_send_action))
+               if (act < NELEM(ba_send_action))
                        f = ba_send_action[act];
                break;
        case IEEE80211_ACTION_CAT_HT:
-               if (act < N(ht_send_action))
+               if (act < NELEM(ht_send_action))
                        f = ht_send_action[act];
                break;
        case IEEE80211_ACTION_CAT_MESHPEERING:
-               if (act < N(meshpl_send_action))
+               if (act < NELEM(meshpl_send_action))
                        f = meshpl_send_action[act];
                break;
        case IEEE80211_ACTION_CAT_MESHLMETRIC:
-               if (act < N(meshlm_send_action))
+               if (act < NELEM(meshlm_send_action))
                        f = meshlm_send_action[act];
                break;
        case IEEE80211_ACTION_CAT_MESHPATH:
-               if (act < N(hwmp_send_action))
+               if (act < NELEM(hwmp_send_action))
                        f = hwmp_send_action[act];
                break;
        case IEEE80211_ACTION_CAT_VENDOR:
-               if (act < N(vendor_send_action))
+               if (act < NELEM(vendor_send_action))
                        f = vendor_send_action[act];
                break;
        }
        return f(ni, cat, act, sa);
-#undef N
 }
 
 static int
@@ -194,41 +190,39 @@ static ieee80211_recv_action_func *vendor_recv_action[8] = {
 int
 ieee80211_recv_action_register(int cat, int act, ieee80211_recv_action_func *f)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        switch (cat) {
        case IEEE80211_ACTION_CAT_BA:
-               if (act >= N(ba_recv_action))
+               if (act >= NELEM(ba_recv_action))
                        break;
                ba_recv_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_HT:
-               if (act >= N(ht_recv_action))
+               if (act >= NELEM(ht_recv_action))
                        break;
                ht_recv_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHPEERING:
-               if (act >= N(meshpl_recv_action))
+               if (act >= NELEM(meshpl_recv_action))
                        break;
                meshpl_recv_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHLMETRIC:
-               if (act >= N(meshlm_recv_action))
+               if (act >= NELEM(meshlm_recv_action))
                        break;
                meshlm_recv_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_MESHPATH:
-               if (act >= N(hwmp_recv_action))
+               if (act >= NELEM(hwmp_recv_action))
                        break;
                hwmp_recv_action[act] = f;
                return 0;
        case IEEE80211_ACTION_CAT_VENDOR:
-               if (act >= N(vendor_recv_action))
+               if (act >= NELEM(vendor_recv_action))
                        break;
                vendor_recv_action[act] = f;
                return 0;
        }
        return EINVAL;
-#undef N
 }
 
 void
@@ -242,37 +236,35 @@ ieee80211_recv_action(struct ieee80211_node *ni,
        const struct ieee80211_frame *wh,
        const uint8_t *frm, const uint8_t *efrm)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        ieee80211_recv_action_func *f = recv_inval;
        const struct ieee80211_action *ia =
            (const struct ieee80211_action *) frm;
 
        switch (ia->ia_category) {
        case IEEE80211_ACTION_CAT_BA:
-               if (ia->ia_action < N(ba_recv_action))
+               if (ia->ia_action < NELEM(ba_recv_action))
                        f = ba_recv_action[ia->ia_action];
                break;
        case IEEE80211_ACTION_CAT_HT:
-               if (ia->ia_action < N(ht_recv_action))
+               if (ia->ia_action < NELEM(ht_recv_action))
                        f = ht_recv_action[ia->ia_action];
                break;
        case IEEE80211_ACTION_CAT_MESHPEERING:
-               if (ia->ia_action < N(meshpl_recv_action))
+               if (ia->ia_action < NELEM(meshpl_recv_action))
                        f = meshpl_recv_action[ia->ia_action];
                break;
        case IEEE80211_ACTION_CAT_MESHLMETRIC:
-               if (ia->ia_action < N(meshlm_recv_action))
+               if (ia->ia_action < NELEM(meshlm_recv_action))
                        f = meshlm_recv_action[ia->ia_action];
                break;
        case IEEE80211_ACTION_CAT_MESHPATH:
-               if (ia->ia_action < N(hwmp_recv_action))
+               if (ia->ia_action < NELEM(hwmp_recv_action))
                        f = hwmp_recv_action[ia->ia_action];
                break;
        case IEEE80211_ACTION_CAT_VENDOR:
-               if (ia->ia_action < N(vendor_recv_action))
+               if (ia->ia_action < NELEM(vendor_recv_action))
                        f = vendor_recv_action[ia->ia_action];
                break;
        }
        return f(ni, wh, frm, efrm);
-#undef N
 }
index a9f67fc..0bfae46 100644 (file)
@@ -316,13 +316,12 @@ mesh_rt_flush_invalid(struct ieee80211vap *vap)
        }
 }
 
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
 int
 ieee80211_mesh_register_proto_path(const struct ieee80211_mesh_proto_path *mpp)
 {
        int i, firstempty = -1;
 
-       for (i = 0; i < N(mesh_proto_paths); i++) {
+       for (i = 0; i < NELEM(mesh_proto_paths); i++) {
                if (strncmp(mpp->mpp_descr, mesh_proto_paths[i].mpp_descr,
                    IEEE80211_MESH_PROTO_DSZ) == 0)
                        return EEXIST;
@@ -342,7 +341,7 @@ ieee80211_mesh_register_proto_metric(const struct
 {
        int i, firstempty = -1;
 
-       for (i = 0; i < N(mesh_proto_metrics); i++) {
+       for (i = 0; i < NELEM(mesh_proto_metrics); i++) {
                if (strncmp(mpm->mpm_descr, mesh_proto_metrics[i].mpm_descr,
                    IEEE80211_MESH_PROTO_DSZ) == 0)
                        return EEXIST;
@@ -362,7 +361,7 @@ mesh_select_proto_path(struct ieee80211vap *vap, const char *name)
        struct ieee80211_mesh_state *ms = vap->iv_mesh;
        int i;
 
-       for (i = 0; i < N(mesh_proto_paths); i++) {
+       for (i = 0; i < NELEM(mesh_proto_paths); i++) {
                if (strcasecmp(mesh_proto_paths[i].mpp_descr, name) == 0) {
                        ms->ms_ppath = &mesh_proto_paths[i];
                        return 0;
@@ -377,7 +376,7 @@ mesh_select_proto_metric(struct ieee80211vap *vap, const char *name)
        struct ieee80211_mesh_state *ms = vap->iv_mesh;
        int i;
 
-       for (i = 0; i < N(mesh_proto_metrics); i++) {
+       for (i = 0; i < NELEM(mesh_proto_metrics); i++) {
                if (strcasecmp(mesh_proto_metrics[i].mpm_descr, name) == 0) {
                        ms->ms_pmetric = &mesh_proto_metrics[i];
                        return 0;
@@ -385,7 +384,6 @@ mesh_select_proto_metric(struct ieee80211vap *vap, const char *name)
        }
        return ENOENT;
 }
-#undef N
 
 static void
 ieee80211_mesh_init(void)
index 62357b4..4d9dce7 100644 (file)
@@ -952,7 +952,6 @@ ieee80211_ies_expand(struct ieee80211_ies *ies)
 static void
 node_cleanup(struct ieee80211_node *ni)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
        struct ieee80211vap *vap = ni->ni_vap;
        struct ieee80211com *ic = ni->ni_ic;
        int i;
@@ -1019,7 +1018,7 @@ node_cleanup(struct ieee80211_node *ni)
         *
         * XXX does this leave us open to inheriting old state?
         */
-       for (i = 0; i < N(ni->ni_rxfrag); i++)
+       for (i = 0; i < NELEM(ni->ni_rxfrag); i++)
                if (ni->ni_rxfrag[i] != NULL) {
                        m_freem(ni->ni_rxfrag[i]);
                        ni->ni_rxfrag[i] = NULL;
@@ -1028,7 +1027,6 @@ node_cleanup(struct ieee80211_node *ni)
         * Must be careful here to remove any key map entry w/o a LOR.
         */
        ieee80211_node_delucastkey(ni);
-#undef N
 }
 
 static void
index c57bcd5..a7263c8 100644 (file)
@@ -198,13 +198,12 @@ static struct ieee80211_rate_table ieee80211_turboa_table = {
 static void
 ieee80211_setup_ratetable(struct ieee80211_rate_table *rt)
 {
-#define        N(a)    (sizeof(a)/sizeof(a[0]))
 #define        WLAN_CTRL_FRAME_SIZE \
        (sizeof(struct ieee80211_frame_ack) + IEEE80211_CRC_LEN)
 
        int i;
 
-       for (i = 0; i < N(rt->rateCodeToIndex); i++)
+       for (i = 0; i < NELEM(rt->rateCodeToIndex); i++)
                rt->rateCodeToIndex[i] = (uint8_t) -1;
        for (i = 0; i < rt->rateCount; i++) {
                uint8_t code = rt->info[i].dot11Rate;
@@ -237,14 +236,12 @@ ieee80211_setup_ratetable(struct ieee80211_rate_table *rt)
        }
 
 #undef WLAN_CTRL_FRAME_SIZE
-#undef N
 }
 
 /* Setup all rate tables */
 static void
 ieee80211_phy_init(void)
 {
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
        static struct ieee80211_rate_table * const ratetables[] = {
                &ieee80211_half_table,
                &ieee80211_quarter_table,
@@ -259,10 +256,9 @@ ieee80211_phy_init(void)
        };
        int i;
 
-       for (i = 0; i < N(ratetables); ++i)
+       for (i = 0; i < NELEM(ratetables); ++i)
                ieee80211_setup_ratetable(ratetables[i]);
 
-#undef N
 }
 SYSINIT(wlan_phy, SI_SUB_DRIVERS, SI_ORDER_FIRST, ieee80211_phy_init, NULL);
 
index 50222ca..3e3e953 100644 (file)
@@ -643,13 +643,12 @@ ieee80211_set_shortslottime(struct ieee80211com *ic, int onoff)
 int
 ieee80211_iserp_rateset(const struct ieee80211_rateset *rs)
 {
-#define N(a)   (sizeof(a) / sizeof(a[0]))
        static const int rates[] = { 2, 4, 11, 22, 12, 24, 48 };
        int i, j;
 
-       if (rs->rs_nrates < N(rates))
+       if (rs->rs_nrates < NELEM(rates))
                return 0;
-       for (i = 0; i < N(rates); i++) {
+       for (i = 0; i < NELEM(rates); i++) {
                for (j = 0; j < rs->rs_nrates; j++) {
                        int r = rs->rs_rates[j] & IEEE80211_RATE_VAL;
                        if (rates[i] == r)
@@ -662,7 +661,6 @@ ieee80211_iserp_rateset(const struct ieee80211_rateset *rs)
                ;
        }
        return 1;
-#undef N
 }
 
 /*
index 9117fd7..ff4b30d 100644 (file)
@@ -443,13 +443,12 @@ add_channels(struct ieee80211vap *vap,
        struct ieee80211_scan_state *ss,
        enum ieee80211_phymode mode, const uint16_t freq[], int nfreq)
 {
-#define        N(a)    (sizeof(a) / sizeof(a[0]))
        struct ieee80211com *ic = vap->iv_ic;
        struct ieee80211_channel *c, *cg;
        u_int modeflags;
        int i;
 
-       KASSERT(mode < N(chanflags), ("Unexpected mode %u", mode));
+       KASSERT(mode < NELEM(chanflags), ("Unexpected mode %u", mode));
        modeflags = chanflags[mode];
        for (i = 0; i < nfreq; i++) {
                if (ss->ss_last >= IEEE80211_SCAN_MAX)
@@ -469,7 +468,6 @@ add_channels(struct ieee80211vap *vap,
                }
                ss->ss_chans[ss->ss_last++] = c;
        }
-#undef N
 }
 
 struct scanlist {
@@ -660,7 +658,7 @@ static const uint16_t rcl13[] =     /* dynamic Turbo channels */
 { 5200, 5240, 5280, 5765, 5805 };
 #endif /* ATH_TURBO_SCAN */
 
-#define        X(a)    .count = sizeof(a)/sizeof(a[0]), .list = a
+#define        X(a)    .count = NELEM(a), .list = a
 
 static const struct scanlist staScanTable[] = {
        { IEEE80211_MODE_11B,           X(rcl3) },
index 40f2196..ef7dc6c 100644 (file)
@@ -19,8 +19,6 @@
  *     Ann Arbor, Michigan
  *     +1-313-763-0525
  *     netatalk@itd.umich.edu
- *
- * $DragonFly: src/sys/netproto/atalk/at_proto.c,v 1.7 2008/11/01 04:22:15 sephe Exp $
  */
 
 #include <sys/param.h>
@@ -66,7 +64,7 @@ static struct protosw atalksw[] = {
 
 static struct domain atalkdomain = {
        AF_APPLETALK, "appletalk", NULL, NULL, NULL,
-       atalksw, &atalksw[sizeof(atalksw)/sizeof(atalksw[0])],
+       atalksw, &atalksw[NELEM(atalksw)],
        SLIST_ENTRY_INITIALIZER,
        rn_inithead, 8 * offsetof(struct sockaddr_at, sat_addr),
        sizeof(struct sockaddr_at),
index b880386..e1178e5 100644 (file)
@@ -24,7 +24,6 @@
  * notice must be reproduced on all copies.
  *
  *     @(#) $FreeBSD: src/sys/netatm/atm_proto.c,v 1.3 1999/08/28 00:48:36 peter Exp $
- *     @(#) $DragonFly: src/sys/netproto/atm/atm_proto.c,v 1.12 2008/11/01 04:22:15 sephe Exp $
  */
 
 /*
@@ -85,7 +84,7 @@ struct protosw atmsw[] = {
 
 struct domain atmdomain = {
        AF_ATM, "atm", atm_initialize, NULL, NULL,
-       atmsw, &atmsw[sizeof(atmsw) / sizeof(atmsw[0])],
+       atmsw, &atmsw[NELEM(atmsw)],
 };
 
 DOMAIN_SET(atm);
index f826770..cd0e00d 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netipsec/key.c,v 1.3.2.1 2003/01/24 05:11:35 sam Exp $        */
-/*     $DragonFly: src/sys/netproto/ipsec/key.c,v 1.26 2008/06/08 08:38:05 sephe Exp $ */
 /*     $KAME: key.c,v 1.191 2001/06/27 10:46:49 sakane Exp $   */
 
 /*
@@ -828,7 +827,7 @@ key_allocsa_policy(const struct secasindex *saidx)
 
        /* search valid state */
        for (stateidx = 0;
-            stateidx < _ARRAYLEN(saorder_state_valid);
+            stateidx < NELEM(saorder_state_valid);
             stateidx++) {
 
                state = saorder_state_valid[stateidx];
@@ -1005,7 +1004,7 @@ key_allocsa(
        LIST_FOREACH(sah, &sahtree, chain) {
                /* search valid state */
                for (stateidx = 0;
-                    stateidx < _ARRAYLEN(saorder_state_valid);
+                    stateidx < NELEM(saorder_state_valid);
                     stateidx++) {
                        state = saorder_state_valid[stateidx];
                        LIST_FOREACH(sav, &sah->savtree[state], chain) {
@@ -2486,7 +2485,7 @@ key_newsah(struct secasindex *saidx)
                        M_INTWAIT | M_ZERO | M_NULLOK);
        if (newsah != NULL) {
                int i;
-               for (i = 0; i < sizeof(newsah->savtree)/sizeof(newsah->savtree[0]); i++)
+               for (i = 0; i < NELEM(newsah->savtree); i++)
                        LIST_INIT(&newsah->savtree[i]);
                newsah->saidx = *saidx;
 
@@ -2514,7 +2513,7 @@ key_delsah(struct secashead *sah)
        crit_enter();
 
        /* searching all SA registerd in the secindex. */
-       for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_any);
+       for (stateidx = 0; stateidx < NELEM(saorder_state_any);
             stateidx++) {
                u_int state = saorder_state_any[stateidx];
 
@@ -2766,7 +2765,7 @@ key_getsavbyspi(struct secashead *sah, u_int32_t spi)
        u_int stateidx;
 
        /* search all status */
-       for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_alive);
+       for (stateidx = 0; stateidx < NELEM(saorder_state_alive);
             stateidx++) {
                u_int state = saorder_state_alive[stateidx];
 
@@ -3146,7 +3145,7 @@ key_setdumpsa(struct secasvar *sav, u_int8_t type, u_int8_t satype,
                goto fail;
        result = m;
 
-       for (i = sizeof(dumporder)/sizeof(dumporder[0]) - 1; i >= 0; i--) {
+       for (i = NELEM(dumporder) - 1; i >= 0; i--) {
                m = NULL;
                p = NULL;
                switch (dumporder[i]) {
@@ -4982,7 +4981,7 @@ key_delete_all(struct socket *so, struct mbuf *m,
                        continue;
 
                /* Delete all non-LARVAL SAs. */
-               for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_alive);
+               for (stateidx = 0; stateidx < NELEM(saorder_state_alive);
                     stateidx++) {
                        state = saorder_state_alive[stateidx];
                        if (state == SADB_SASTATE_LARVAL)
@@ -5786,7 +5785,7 @@ key_register(struct socket *so, struct mbuf *m,
                panic("key_register: NULL pointer is passed.\n");
 
        /* check for invalid register message */
-       if (mhp->msg->sadb_msg_satype >= sizeof(regtree)/sizeof(regtree[0]))
+       if (mhp->msg->sadb_msg_satype >= NELEM(regtree))
                return key_senderror(so, m, EINVAL);
 
        /* When SATYPE_UNSPEC is specified, only return sabd_supported. */
@@ -6105,7 +6104,7 @@ key_flush(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
                    proto != sah->saidx.proto)
                        continue;
 
-               for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_alive);
+               for (stateidx = 0; stateidx < NELEM(saorder_state_alive);
                     stateidx++) {
                        struct secasvar *sav, *nextsav;
                        u_int8_t state = saorder_state_any[stateidx];
@@ -6179,7 +6178,7 @@ key_dump(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
                    proto != sah->saidx.proto)
                        continue;
 
-               for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_any);
+               for (stateidx = 0; stateidx < NELEM(saorder_state_any);
                     stateidx++) {
                        state = saorder_state_any[stateidx];
                        LIST_FOREACH(sav, &sah->savtree[state], chain) {
@@ -6204,7 +6203,7 @@ key_dump(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
                        return key_senderror(so, m, EINVAL);
                }
 
-               for (stateidx = 0; stateidx < _ARRAYLEN(saorder_state_any);
+               for (stateidx = 0; stateidx < NELEM(saorder_state_any);
                     stateidx++) {
                        state = saorder_state_any[stateidx];
                        LIST_FOREACH(sav, &sah->savtree[state], chain) {
@@ -6536,7 +6535,7 @@ key_parse(struct mbuf *m, struct socket *so)
                 */
        }
 
-       if (msg->sadb_msg_type >= sizeof(key_typesw)/sizeof(key_typesw[0]) ||
+       if (msg->sadb_msg_type >= NELEM(key_typesw) ||
            key_typesw[msg->sadb_msg_type] == NULL) {
                pfkeystat.out_invmsgtype++;
                error = EINVAL;
@@ -6683,8 +6682,8 @@ key_validate_ext(const struct sadb_ext *ext, int len)
                return EINVAL;
 
        /* if it does not match minimum/maximum length, bail */
-       if (ext->sadb_ext_type >= sizeof(minsize) / sizeof(minsize[0]) ||
-           ext->sadb_ext_type >= sizeof(maxsize) / sizeof(maxsize[0]))
+       if (ext->sadb_ext_type >= NELEM(minsize) ||
+           ext->sadb_ext_type >= NELEM(maxsize))
                return EINVAL;
        if (!minsize[ext->sadb_ext_type] || len < minsize[ext->sadb_ext_type])
                return EINVAL;
index 35aa129..e5f1d33 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netipsec/key_var.h,v 1.1.4.1 2003/01/24 05:11:36 sam Exp $    */
-/*     $DragonFly: src/sys/netproto/ipsec/key_var.h,v 1.2 2003/06/17 04:28:53 dillon Exp $     */
 /*     $KAME: key_var.h,v 1.11 2001/09/12 23:05:07 sakane Exp $        */
 
 /*
@@ -66,7 +65,6 @@
 }
 
 #ifdef _KERNEL
-#define _ARRAYLEN(p) (sizeof(p)/sizeof(p[0]))
 #define _KEYLEN(key) ((u_int)((key)->sadb_key_bits >> 3))
 #define _KEYBITS(key) ((u_int)((key)->sadb_key_bits))
 #define _KEYBUF(key) ((caddr_t)((caddr_t)(key) + sizeof(struct sadb_key)))
index 673353f..0f7f09c 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netipsec/keysock.c,v 1.3.2.1 2003/01/24 05:11:36 sam Exp $    */
-/*     $DragonFly: src/sys/netproto/ipsec/keysock.c,v 1.19 2008/11/01 04:22:15 sephe Exp $     */
 /*     $KAME: keysock.c,v 1.25 2001/08/13 20:07:41 itojun Exp $        */
 
 /*
@@ -579,7 +578,7 @@ key_init0(void)
 
 struct domain keydomain = {
        PF_KEY, "key", key_init0, NULL, NULL,
-       keysw, &keysw[sizeof(keysw)/sizeof(keysw[0])],
+       keysw, &keysw[NELEM(keysw)],
 };
 
 DOMAIN_SET(key);
index 8b11045..458d135 100644 (file)
@@ -34,7 +34,6 @@
  *     @(#)ipx_proto.c
  *
  * $FreeBSD: src/sys/netipx/ipx_proto.c,v 1.15 1999/08/28 00:49:41 peter Exp $
- * $DragonFly: src/sys/netproto/ipx/ipx_proto.c,v 1.8 2008/11/01 04:22:15 sephe Exp $
  */
 
 #include "opt_ipx.h"
@@ -151,7 +150,7 @@ static struct protosw ipxsw[] = {
 
 static struct  domain ipxdomain =
     { AF_IPX, "network systems", 0, 0, 0, 
-      ipxsw, &ipxsw[sizeof(ipxsw)/sizeof(ipxsw[0])], SLIST_ENTRY_INITIALIZER,
+      ipxsw, &ipxsw[NELEM(ipxsw)], SLIST_ENTRY_INITIALIZER,
       rn_inithead, 16, sizeof(struct sockaddr_ipx)};
 
 DOMAIN_SET(ipx);
index 445bea9..bc56d34 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netkey/key.c,v 1.16.2.13 2002/07/24 18:17:40 ume Exp $        */
-/*     $DragonFly: src/sys/netproto/key/key.c,v 1.21 2008/06/08 08:38:05 sephe Exp $   */
 /*     $KAME: key.c,v 1.191 2001/06/27 10:46:49 sakane Exp $   */
 
 /*
@@ -760,10 +759,10 @@ key_allocsa_policy(struct secasindex *saidx)
         */
        if (key_preferred_oldsa) {
                saorder_state_valid = saorder_state_valid_prefer_old;
-               arraysize = _ARRAYLEN(saorder_state_valid_prefer_old);
+               arraysize = NELEM(saorder_state_valid_prefer_old);
        } else {
                saorder_state_valid = saorder_state_valid_prefer_new;
-               arraysize = _ARRAYLEN(saorder_state_valid_prefer_new);
+               arraysize = NELEM(saorder_state_valid_prefer_new);
        }
 
        for (stateidx = 0; stateidx < arraysize; stateidx++) {
@@ -941,10 +940,10 @@ key_allocsa(u_int family, caddr_t src, caddr_t dst, u_int proto,
         */
        if (key_preferred_oldsa) {
                saorder_state_valid = saorder_state_valid_prefer_old;
-               arraysize = _ARRAYLEN(saorder_state_valid_prefer_old);
+               arraysize = NELEM(saorder_state_valid_prefer_old);
        } else {
                saorder_state_valid = saorder_state_valid_prefer_new;
-               arraysize = _ARRAYLEN(saorder_state_valid_prefer_new);
+               arraysize = NELEM(saorder_state_valid_prefer_new);
        }
 
        /*
@@ -2604,7 +2603,7 @@ key_delsah(struct secashead *sah)
 
        /* searching all SA registerd in the secindex. */
        for (stateidx = 0;
-            stateidx < _ARRAYLEN(saorder_state_any);
+            stateidx < NELEM(saorder_state_any);
             stateidx++) {
 
                state = saorder_state_any[stateidx];
@@ -2864,7 +2863,7 @@ key_getsavbyspi(struct secashead *sah, u_int32_t spi)
 
        /* search all status */
        for (stateidx = 0;
-            stateidx < _ARRAYLEN(saorder_state_alive);
+            stateidx < NELEM(saorder_state_alive);
             stateidx++) {
 
                state = saorder_state_alive[stateidx];
@@ -3369,7 +3368,7 @@ key_setdumpsa(struct secasvar *sav, u_int8_t type, u_int8_t satype,
                goto fail;
        result = m;
 
-       for (i = sizeof(dumporder)/sizeof(dumporder[0]) - 1; i >= 0; i--) {
+       for (i = NELEM(dumporder) - 1; i >= 0; i--) {
                m = NULL;
                p = NULL;
                switch (dumporder[i]) {
@@ -5306,7 +5305,7 @@ key_delete_all(struct socket *so, struct mbuf *m,
 
                /* Delete all non-LARVAL SAs. */
                for (stateidx = 0;
-                    stateidx < _ARRAYLEN(saorder_state_alive);
+                    stateidx < NELEM(saorder_state_alive);
                     stateidx++) {
                        state = saorder_state_alive[stateidx];
                        if (state == SADB_SASTATE_LARVAL)
@@ -6119,7 +6118,7 @@ key_register(struct socket *so, struct mbuf *m,
                panic("key_register: NULL pointer is passed.\n");
 
        /* check for invalid register message */
-       if (mhp->msg->sadb_msg_satype >= sizeof(regtree)/sizeof(regtree[0]))
+       if (mhp->msg->sadb_msg_satype >= NELEM(regtree))
                return key_senderror(so, m, EINVAL);
 
        /* When SATYPE_UNSPEC is specified, only return sabd_supported. */
@@ -6465,7 +6464,7 @@ key_flush(struct socket *so, struct mbuf *m,
                        continue;
 
                for (stateidx = 0;
-                    stateidx < _ARRAYLEN(saorder_state_alive);
+                    stateidx < NELEM(saorder_state_alive);
                     stateidx++) {
                        state = saorder_state_any[stateidx];
                        for (sav = LIST_FIRST(&sah->savtree[state]);
@@ -6543,7 +6542,7 @@ key_dump(struct socket *so, struct mbuf *m,
                        continue;
 
                for (stateidx = 0;
-                    stateidx < _ARRAYLEN(saorder_state_any);
+                    stateidx < NELEM(saorder_state_any);
                     stateidx++) {
                        state = saorder_state_any[stateidx];
                        LIST_FOREACH(sav, &sah->savtree[state], chain) {
@@ -6569,7 +6568,7 @@ key_dump(struct socket *so, struct mbuf *m,
                }
 
                for (stateidx = 0;
-                    stateidx < _ARRAYLEN(saorder_state_any);
+                    stateidx < NELEM(saorder_state_any);
                     stateidx++) {
                        state = saorder_state_any[stateidx];
                        LIST_FOREACH(sav, &sah->savtree[state], chain) {
@@ -6916,7 +6915,7 @@ key_parse(struct mbuf *m, struct socket *so)
                 */
        }
 
-       if (msg->sadb_msg_type >= sizeof(key_typesw)/sizeof(key_typesw[0]) ||
+       if (msg->sadb_msg_type >= NELEM(key_typesw) ||
            key_typesw[msg->sadb_msg_type] == NULL) {
                pfkeystat.out_invmsgtype++;
                error = EINVAL;
@@ -7069,8 +7068,8 @@ key_validate_ext(const struct sadb_ext *ext, int len)
                return EINVAL;
 
        /* if it does not match minimum/maximum length, bail */
-       if (ext->sadb_ext_type >= sizeof(minsize) / sizeof(minsize[0]) ||
-           ext->sadb_ext_type >= sizeof(maxsize) / sizeof(maxsize[0]))
+       if (ext->sadb_ext_type >= NELEM(minsize) ||
+           ext->sadb_ext_type >= NELEM(maxsize))
                return EINVAL;
        if (!minsize[ext->sadb_ext_type] || len < minsize[ext->sadb_ext_type])
                return EINVAL;
index db7b582..f2a4e25 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netkey/key_var.h,v 1.2.2.4 2001/12/12 15:27:45 ume Exp $      */
-/*     $DragonFly: src/sys/netproto/key/key_var.h,v 1.2 2003/06/17 04:28:53 dillon Exp $       */
 /*     $KAME: key_var.h,v 1.11 2001/09/12 23:05:07 sakane Exp $        */
 
 /*
@@ -66,7 +65,6 @@
 }
 
 #ifdef _KERNEL
-#define _ARRAYLEN(p) (sizeof(p)/sizeof(p[0]))
 #define _KEYLEN(key) ((u_int)((key)->sadb_key_bits >> 3))
 #define _KEYBITS(key) ((u_int)((key)->sadb_key_bits))
 #define _KEYBUF(key) ((caddr_t)((caddr_t)(key) + sizeof(struct sadb_key)))
index 3087bb6..9288fd8 100644 (file)
@@ -1,5 +1,4 @@
 /*     $FreeBSD: src/sys/netkey/keydb.c,v 1.1.2.1 2000/07/15 07:14:42 kris Exp $       */
-/*     $DragonFly: src/sys/netproto/key/keydb.c,v 1.10 2008/01/05 14:02:40 swildner Exp $      */
 /*     $KAME: keydb.c,v 1.64 2000/05/11 17:02:30 itojun Exp $  */
 
 /*
@@ -89,7 +88,7 @@ keydb_newsecashead(void)
        p = kmalloc(sizeof(*p), M_SECA, M_INTWAIT | M_NULLOK | M_ZERO);
        if (!p)
                return p;
-       for (i = 0; i < sizeof(p->savtree)/sizeof(p->savtree[0]); i++)
+       for (i = 0; i < NELEM(p->savtree); i++)
                LIST_INIT(&p->savtree[i]);
        return p;
 }
index 903ce5d..a76df73 100644 (file)
@@ -27,7 +27,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/netkey/keysock.c,v 1.1.2.4 2003/01/11 19:10:59 ume Exp $
- * $DragonFly: src/sys/netproto/key/keysock.c,v 1.21 2008/11/01 04:22:16 sephe Exp $
  * $KAME: keysock.c,v 1.25 2001/08/13 20:07:41 itojun Exp $
  */
 
@@ -632,7 +631,7 @@ struct protosw keysw[] = {
 
 struct domain keydomain = {
        PF_KEY, "key", key_init, NULL, NULL,
-       keysw, &keysw[sizeof(keysw)/sizeof(keysw[0])],
+       keysw, &keysw[NELEM(keysw)],
 };
 
 DOMAIN_SET(key);
index f38d34b..37f0c36 100644 (file)
@@ -27,8 +27,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- *
- * $DragonFly: src/sys/netproto/mpls/mpls_proto.c,v 1.2 2008/11/01 04:22:16 sephe Exp $
  */
 
 #include <sys/domain.h>
@@ -70,7 +68,7 @@ static        struct  domain mplsdomain = {
        NULL,                           /* dom_externalize */
        NULL,                           /* dom_dispose */
        mplssw,                         /* dom_protosw */
-       &mplssw[sizeof(mplssw) / sizeof(mplssw[0])],
+       &mplssw[NELEM(mplssw)],
                                        /* dom_protoswNPROTOSW */
        SLIST_ENTRY_INITIALIZER,        /* dom_next */
        rn_inithead,                    /* dom_rtattach */
index 08ce761..f7c633f 100644 (file)
@@ -32,7 +32,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/netnatm/natm_proto.c,v 1.4.2.2 2000/08/03 18:56:28 peter Exp $
- * $DragonFly: src/sys/netproto/natm/natm_proto.c,v 1.11 2008/11/01 04:22:16 sephe Exp $
  */
 
 /*
@@ -84,7 +83,7 @@ static struct protosw natmsw[] = {
 
 static struct domain natmdomain = {
        AF_NATM, "natm", natm_init, NULL, NULL,
-       natmsw, &natmsw[sizeof(natmsw)/sizeof(natmsw[0])],
+       natmsw, &natmsw[NELEM(natmsw)],
 };
 
 #ifdef NATM_STAT
index a54b05c..f7c3f5d 100644 (file)
@@ -23,7 +23,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/i386/mpapic.c,v 1.37.2.7 2003/01/25 02:31:47 peter Exp $
- * $DragonFly: src/sys/platform/pc32/apic/mpapic.c,v 1.22 2008/04/20 13:44:26 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -89,8 +88,7 @@ static const uint32_t lapic_timer_divisors[] = {
        APIC_TDCR_2,    APIC_TDCR_4,    APIC_TDCR_8,    APIC_TDCR_16,
        APIC_TDCR_32,   APIC_TDCR_64,   APIC_TDCR_128,  APIC_TDCR_1
 };
-#define APIC_TIMER_NDIVISORS \
-       (int)(sizeof(lapic_timer_divisors) / sizeof(lapic_timer_divisors[0]))
+#define APIC_TIMER_NDIVISORS (int)(NELEM(lapic_timer_divisors))
 
 
 /*
index 9811335..3ba1bb5 100644 (file)
@@ -236,7 +236,7 @@ boot_translate_majdev(int bmajor)
 {
        static int conv[] = { BOOTMAJOR_CONVARY };
 
-       if (bmajor >= 0 && bmajor < sizeof(conv)/sizeof(conv[0]))
+       if (bmajor >= 0 && bmajor < NELEM(conv))
                return(conv[bmajor]);
        return(-1);
 }
index d5eeed6..b7b4d43 100644 (file)
@@ -24,7 +24,6 @@
  * rights to redistribute these changes.
  *
  * $FreeBSD: src/sys/i386/i386/db_trace.c,v 1.35.2.3 2002/02/21 22:31:25 silby Exp $
- * $DragonFly: src/sys/platform/pc32/i386/db_trace.c,v 1.18 2007/02/02 15:57:51 corecode Exp $
  */
 
 #include <sys/param.h>
@@ -87,7 +86,7 @@ struct db_variable db_regs[] = {
        { "dr6",        NULL,                db_dr6 },
        { "dr7",        NULL,                db_dr7 },
 };
-struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]);
+struct db_variable *db_eregs = db_regs + NELEM(db_regs);
 
 /*
  * Stack trace.
index b87759f..a0f3d25 100644 (file)
@@ -81,7 +81,7 @@ md_pa_init(void)
        int n, idx;
 
        bzero(dump_map, sizeof(dump_map));
-       for (n = 0; n < sizeof(dump_map) / sizeof(dump_map[0]); n++) {
+       for (n = 0; n < NELEM(dump_map); n++) {
                idx = n * 2;
                if (dump_avail[idx] == 0 && dump_avail[idx + 1] == 0)
                        break;
index d58253d..cdfd70e 100644 (file)
@@ -85,7 +85,6 @@
  *   ACPI objects: _PCT is MSR location, _PSS is freq/voltage, _PPC is caps.
  *
  * $NetBSD: est.c,v 1.25 2006/06/18 16:39:56 nonaka Exp $
- * $DragonFly: src/sys/platform/pc32/i386/est.c,v 1.11 2008/06/05 18:06:32 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -533,27 +532,27 @@ struct est_cpu {
 static const struct est_cpu est_cpus[] = {
        {
                "Intel(R) Pentium(R) M processor ", "MHz",
-               (sizeof(pentium_m) / sizeof(pentium_m[0])),
+               NELEM(pentium_m),
                pentium_m
        },
        {
                "Intel(R) Pentium(R) M processor ", "GHz",
-               (sizeof(pentium_m_dothan) / sizeof(pentium_m_dothan[0])),
+               NELEM(pentium_m_dothan),
                pentium_m_dothan
        },
        {
                "Genuine Intel(R) CPU           T2300  @ ", "GHz",
-               (sizeof(pentium_yonah) / sizeof(pentium_yonah[0])),
+               NELEM(pentium_yonah),
                pentium_yonah
        },
        {
                "Intel(R) Core(TM)2 Duo CPU     T7500  @ ", "GHz",
-               (sizeof(pentium_merom) / sizeof(pentium_merom[0])),
+               NELEM(pentium_merom),
                pentium_merom
        },
 };
 
-#define NESTCPUS  (sizeof(est_cpus) / sizeof(est_cpus[0]))
+#define NESTCPUS  NELEM(est_cpus)
 
 #define MSR2MV(msr)    (((int) (msr) & 0xff) * 16 + 700)
 #define MSR2MHZ(msr)   (((((int) (msr) >> 8) & 0xff) * 100 * fsbmult + 1)/ 3)
index ee79e6a..d903058 100644 (file)
@@ -118,7 +118,7 @@ static int i686_mtrrtomrt[] = {
        MDF_WRITEBACK
 };
 
-#define        MTRRTOMRTLEN (sizeof(i686_mtrrtomrt) / sizeof(i686_mtrrtomrt[0]))
+#define        MTRRTOMRTLEN NELEM(i686_mtrrtomrt)
 
 static int
 i686_mtrr2mrt(int val)
index c534563..7f0713d 100644 (file)
@@ -1268,7 +1268,7 @@ find_cpu_vendor_id(void)
 {
        int     i;
 
-       for (i = 0; i < sizeof(cpu_vendors) / sizeof(cpu_vendors[0]); i++)
+       for (i = 0; i < NELEM(cpu_vendors); i++)
                if (strcmp(cpu_vendor, cpu_vendors[i].vendor) == 0)
                        return (cpu_vendors[i].vendor_id);
        return (0);
index ff0961a..3156c30 100644 (file)
@@ -72,7 +72,7 @@ static struct {
        { 0,  13,  1 }
 };
 
-#define TCC_LEVELS     sizeof(tcc) / sizeof(tcc[0])
+#define TCC_LEVELS     NELEM(tcc)
 
 static u_short
 p4tcc_getperf(void)
index 6dc99c7..b5b3d6b 100644 (file)
@@ -32,7 +32,6 @@
  *
  *     from: @(#)sys_machdep.c 5.5 (Berkeley) 1/19/91
  * $FreeBSD: src/sys/i386/i386/sys_machdep.c,v 1.47.2.3 2002/10/07 17:20:00 jhb Exp $
- * $DragonFly: src/sys/platform/pc32/i386/sys_machdep.c,v 1.32 2008/01/06 16:55:53 swildner Exp $
  *
  */
 
@@ -380,7 +379,7 @@ ki386_get_ldt(struct lwp *lwp, char *args, int *res)
                num = min(uap->num, nldt);
                lp = &((union descriptor *)(pcb_ldt->ldt_base))[uap->start];
        } else {
-               nldt = (unsigned int)(sizeof(ldt) / sizeof(ldt[0]));
+               nldt = (unsigned int)(NELEM(ldt));
                num = min(uap->num, nldt);
                lp = &ldt[uap->start];
        }
index d9f4332..059e9ca 100644 (file)
@@ -23,7 +23,6 @@
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/i386/i386/mpapic.c,v 1.37.2.7 2003/01/25 02:31:47 peter Exp $
- * $DragonFly: src/sys/platform/pc32/apic/mpapic.c,v 1.22 2008/04/20 13:44:26 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -90,8 +89,7 @@ static const uint32_t lapic_timer_divisors[] = {
        APIC_TDCR_2,    APIC_TDCR_4,    APIC_TDCR_8,    APIC_TDCR_16,
        APIC_TDCR_32,   APIC_TDCR_64,   APIC_TDCR_128,  APIC_TDCR_1
 };
-#define APIC_TIMER_NDIVISORS \
-       (int)(sizeof(lapic_timer_divisors) / sizeof(lapic_timer_divisors[0]))
+#define APIC_TIMER_NDIVISORS (int)(NELEM(lapic_timer_divisors))
 
 
 void
index d98662a..b806649 100644 (file)
@@ -237,7 +237,7 @@ boot_translate_majdev(int bmajor)
 {
        static int conv[] = { BOOTMAJOR_CONVARY };
 
-       if (bmajor >= 0 && bmajor < sizeof(conv)/sizeof(conv[0]))
+       if (bmajor >= 0 && bmajor < NELEM(conv))
                return(conv[bmajor]);
        return(-1);
 }
index bce81a7..3f55442 100644 (file)
@@ -126,7 +126,7 @@ struct db_variable db_regs[] = {
        { "dr6",        NULL,                db_dr6 },
        { "dr7",        NULL,                db_dr7 },
 };
-struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]);
+struct db_variable *db_eregs = db_regs + NELEM(db_regs);
 
 /*
  * Stack trace.
index 1425eff..4e6a65b 100644 (file)
@@ -80,7 +80,7 @@ md_pa_init(void)
        int n, idx;
 
        bzero(dump_map, sizeof(dump_map));
-       for (n = 0; n < sizeof(dump_map) / sizeof(dump_map[0]); n++) {
+       for (n = 0; n < NELEM(dump_map); n++) {
                idx = n * 2;
                if (dump_avail[idx] == 0 && dump_avail[idx + 1] == 0)
                        break;
index dec5900..701f575 100644 (file)
@@ -85,7 +85,6 @@
  *   ACPI objects: _PCT is MSR location, _PSS is freq/voltage, _PPC is caps.
  *
  * $NetBSD: est.c,v 1.25 2006/06/18 16:39:56 nonaka Exp $
- * $DragonFly: src/sys/platform/pc32/i386/est.c,v 1.11 2008/06/05 18:06:32 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -533,27 +532,27 @@ struct est_cpu {
 static const struct est_cpu est_cpus[] = {
        {
                "Intel(R) Pentium(R) M processor ", "MHz",
-               (sizeof(pentium_m) / sizeof(pentium_m[0])),
+               NELEM(pentium_m),
                pentium_m
        },
        {
                "Intel(R) Pentium(R) M processor ", "GHz",
-               (sizeof(pentium_m_dothan) / sizeof(pentium_m_dothan[0])),
+               NELEM(pentium_m_dothan),
                pentium_m_dothan
        },
        {
                "Genuine Intel(R) CPU           T2300  @ ", "GHz",
-               (sizeof(pentium_yonah) / sizeof(pentium_yonah[0])),
+               NELEM(pentium_yonah),
                pentium_yonah
        },
        {
                "Intel(R) Core(TM)2 Duo CPU     T7500  @ ", "GHz",
-               (sizeof(pentium_merom) / sizeof(pentium_merom[0])),
+               NELEM(pentium_merom),
                pentium_merom
        },
 };
 
-#define NESTCPUS  (sizeof(est_cpus) / sizeof(est_cpus[0]))
+#define NESTCPUS  (NELEM(est_cpus))
 
 #define MSR2MV(msr)    (((int) (msr) & 0xff) * 16 + 700)
 #define MSR2MHZ(msr)   (((((int) (msr) >> 8) & 0xff) * 100 * fsbmult + 1)/ 3)
index 04b3a75..858598d 100644 (file)
@@ -494,7 +494,7 @@ find_cpu_vendor_id(void)
 {
        int     i;
 
-       for (i = 0; i < sizeof(cpu_vendors) / sizeof(cpu_vendors[0]); i++)
+       for (i = 0; i < NELEM(cpu_vendors); i++)
                if (strcmp(cpu_vendor, cpu_vendors[i].vendor) == 0)
                        return (cpu_vendors[i].vendor_id);
        return (0);
index cb84343..405ddc8 100644 (file)
@@ -219,8 +219,8 @@ vm_paddr_t phys_avail[PHYSMAP_SIZE + 2];
 vm_paddr_t dump_avail[PHYSMAP_SIZE + 2];
 
 /* must be 2 less so 0 0 can signal end of chunks */
-#define PHYS_AVAIL_ARRAY_END ((sizeof(phys_avail) / sizeof(phys_avail[0])) - 2)
-#define DUMP_AVAIL_ARRAY_END ((sizeof(dump_avail) / sizeof(dump_avail[0])) - 2)
+#define PHYS_AVAIL_ARRAY_END (NELEM(phys_avail) - 2)
+#define DUMP_AVAIL_ARRAY_END (NELEM(dump_avail) - 2)
 
 static vm_offset_t buffer_sva, buffer_eva;
 vm_offset_t clean_sva, clean_eva;
index 8a807fd..476d0cf 100644 (file)
@@ -282,7 +282,7 @@ boot_translate_majdev(int bmajor)
 {
        static int conv[] = { BOOTMAJOR_CONVARY };
 
-       if (bmajor >= 0 && bmajor < sizeof(conv)/sizeof(conv[0]))
+       if (bmajor >= 0 && bmajor < NELEM(conv))
                return(conv[bmajor]);
        return(-1);
 }
index 87b301e..e6872b1 100644 (file)
@@ -24,7 +24,6 @@
  * rights to redistribute these changes.
  *
  * $FreeBSD: src/sys/i386/i386/db_trace.c,v 1.35.2.3 2002/02/21 22:31:25 silby Exp $
- * $DragonFly: src/sys/platform/vkernel/i386/db_trace.c,v 1.9 2008/02/03 15:10:26 nth Exp $
  */
 
 #include <sys/param.h>
@@ -81,7 +80,7 @@ struct db_variable db_regs[] = {
        { "dr6",        NULL,                db_dr },
        { "dr7",        NULL,                db_dr },
 };
-struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]);
+struct db_variable *db_eregs = db_regs + NELEM(db_regs);
 
 /*
  * Stack trace.
index c378a58..c7a0ff6 100644 (file)
@@ -30,8 +30,6 @@
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- * 
- * $DragonFly: src/sys/platform/vkernel/platform/systimer.c,v 1.17 2008/06/06 13:19:25 swildner Exp $
  */
 
 #include <sys/types.h>
@@ -124,7 +122,7 @@ cpu_initclocks(void *arg __unused)
                         NULL, 0) < 0) {
                panic("cpu_initclocks: can't get kern.cputimer.freq!");
        }
-       len = sizeof(cputimer_mib)/sizeof(cputimer_mib[0]);
+       len = NELEM(cputimer_mib);
        if (sysctlnametomib("kern.cputimer.clock", cputimer_mib, &len) < 0)
                panic("cpu_initclocks: can't get kern.cputimer.clock!");
        cputimer_miblen = len;
index 0c0760f..1e94aca 100644 (file)
@@ -31,7 +31,6 @@
  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $DragonFly: src/sys/platform/vkernel/platform/systimer.c,v 1.17 2008/06/06 13:19:25 swildner Exp $
  */
 
 #include <sys/types.h>
@@ -124,7 +123,7 @@ cpu_initclocks(void *arg __unused)
                         NULL, 0) < 0) {
                panic("cpu_initclocks: can't get kern.cputimer.freq!");
        }
-       len = sizeof(cputimer_mib)/sizeof(cputimer_mib[0]);
+       len = NELEM(cputimer_mib);
        if (sysctlnametomib("kern.cputimer.clock", cputimer_mib, &len) < 0)
                panic("cpu_initclocks: can't get kern.cputimer.clock!");
        cputimer_miblen = len;
index dc06d17..0dd1511 100644 (file)
@@ -279,7 +279,7 @@ boot_translate_majdev(int bmajor)
 {
        static int conv[] = { BOOTMAJOR_CONVARY };
 
-       if (bmajor >= 0 && bmajor < sizeof(conv)/sizeof(conv[0]))
+       if (bmajor >= 0 && bmajor < NELEM(conv))
                return(conv[bmajor]);
        return(-1);
 }
index e0c048c..a5dcc03 100644 (file)
@@ -126,7 +126,7 @@ struct db_variable db_regs[] = {
        { "dr6",        NULL,                db_dr6 },
        { "dr7",        NULL,                db_dr7 },
 };
-struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]);
+struct db_variable *db_eregs = db_regs + NELEM(db_regs);
 
 /*
  * Stack trace.
index e418ab6..2d52cac 100644 (file)
@@ -32,7 +32,6 @@
  *
  *     @(#)disklabel.h 8.2 (Berkeley) 7/10/94
  * $FreeBSD: src/sys/sys/disklabel.h,v 1.49.2.7 2001/05/27 05:58:26 jkh Exp $
- * $DragonFly: src/sys/sys/dtype.h,v 1.2 2008/03/22 20:52:00 dillon Exp $
  */
 
 #ifndef _SYS_DTYPE_H_
@@ -74,7 +73,7 @@ static const char *dktypenames[] = {
        "DOC2K",
        NULL
 };
-#define DKMAXTYPES     (sizeof(dktypenames) / sizeof(dktypenames[0]) - 1)
+#define DKMAXTYPES     (NELEM(dktypenames) - 1)
 #endif
 
 /*
@@ -141,7 +140,7 @@ static const char *fstypenames[] = {
        "ZFS",
        NULL
 };
-#define FSMAXTYPES     (sizeof(fstypenames) / sizeof(fstypenames[0]) - 1)
+#define FSMAXTYPES     (NELEM(fstypenames) - 1)
 #endif
 
 #endif /* SYS_DTYPE_H_ */
index ee2df36..d575e13 100644 (file)
@@ -5,7 +5,6 @@
  *  University of Utah, Department of Computer Science
  *
  * $FreeBSD: src/sys/gnu/ext2fs/ext2_lookup.c,v 1.21.2.3 2002/11/17 02:02:42 bde Exp $
- * $DragonFly: src/sys/vfs/gnu/ext2fs/ext2_lookup.c,v 1.27 2007/11/20 21:03:50 dillon Exp $
  */
 /*
  * Copyright (c) 1989, 1993
@@ -84,7 +83,7 @@ static u_char ext2_ft_to_dt[] = {
        DT_LNK,                 /* EXT2_FT_SYMLINK */
 };
 #define        FTTODT(ft)                                              \
-    ((ft) > sizeof(ext2_ft_to_dt) / sizeof(ext2_ft_to_dt[0]) ? \
+    ((ft) > NELEM(ext2_ft_to_dt) ?     \
     DT_UNKNOWN : ext2_ft_to_dt[(ft)])
 
 static u_char dt_to_ext2_ft[] = {
@@ -105,7 +104,7 @@ static u_char dt_to_ext2_ft[] = {
        EXT2_FT_UNKNOWN,        /* DT_WHT */
 };
 #define        DTTOFT(dt)                                              \
-    ((dt) > sizeof(dt_to_ext2_ft) / sizeof(dt_to_ext2_ft[0]) ? \
+    ((dt) > NELEM(dt_to_ext2_ft) ?     \
     EXT2_FT_UNKNOWN : dt_to_ext2_ft[(dt)])
 
 static int     ext2_dirbadentry (struct vnode *dp,
index 7d4abe8..cb1b968 100644 (file)
@@ -37,7 +37,6 @@
  *     @(#)procfs_vnops.c      8.18 (Berkeley) 5/21/95
  *
  * $FreeBSD: src/sys/miscfs/procfs/procfs_vnops.c,v 1.76.2.7 2002/01/22 17:22:59 nectar Exp $
- * $DragonFly: src/sys/vfs/procfs/procfs_vnops.c,v 1.46 2007/11/20 21:03:50 dillon Exp $
  */
 
 /*
@@ -150,7 +149,7 @@ static struct proc_target {
        { DT_LNK, N("file"),    Pfile,          NULL },
 #undef N
 };
-static const int nproc_targets = sizeof(proc_targets) / sizeof(proc_targets[0]);
+static const int nproc_targets = NELEM(proc_targets);
 
 static pid_t atopid (const char *, u_int);
 
index f0ec534..0002ef1 100644 (file)
@@ -64,7 +64,6 @@
  * rights to redistribute these changes.
  *
  * $FreeBSD: src/sys/vm/vm_pager.c,v 1.54.2.2 2001/11/18 07:11:00 dillon Exp $
- * $DragonFly: src/sys/vm/vm_pager.c,v 1.24 2007/11/06 03:50:01 dillon Exp $
  */
 
 /*
@@ -167,7 +166,7 @@ struct pagerops *pagertab[] = {
        &deadpagerops           /* OBJT_DEAD */
 };
 
-int npagers = sizeof(pagertab) / sizeof(pagertab[0]);
+int npagers = NELEM(pagertab);
 
 /*
  * Kernel address space for mapping pages.