CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Sat Oct 15 08:37:55 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: There are several leaks in here, just fix one that should have been fixed in rev1.21 To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.21 src/sys/dev/if_ndis/if_ndis_pci.c:1.22 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.21 Sat Apr 4 15:22:02 2015 +++ src/sys/dev/if_ndis/if_ndis_pci.c Sat Oct 15 08:37:55 2016 @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_ndis_pci.c,v 1.21 2015/04/04 15:22:02 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_ndis_pci.c,v 1.22 2016/10/15 08:37:55 maxv Exp $"); #ifdef __FreeBSD__ __FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $"); #endif @@ -300,7 +300,7 @@ void ndis_attach_pci(device_t parent, de if((sc->ndis_res_altmem = malloc(sizeof(struct ndis_resource), M_DEVBUF, M_NOWAIT | M_ZERO)) == NULL) { sc->error = ENOMEM; - return; + goto out; } sc->ndis_res_altmem->res_base = base; sc->ndis_res_altmem->res_size = size;
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Sat Oct 15 08:37:55 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: There are several leaks in here, just fix one that should have been fixed in rev1.21 To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Mon Aug 15 08:40:23 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis_pccard.c Log Message: Uninitialized var, found by brainy. FreeBSD fixed it this way four years ago. I haven't tested this change, but it is rather obvious, as the FreeBSD commit indicates, that sc->ndis_io_rid should be used instead. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/dev/if_ndis/if_ndis_pccard.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Mon Aug 15 08:40:23 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis_pccard.c Log Message: Uninitialized var, found by brainy. FreeBSD fixed it this way four years ago. I haven't tested this change, but it is rather obvious, as the FreeBSD commit indicates, that sc->ndis_io_rid should be used instead. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/dev/if_ndis/if_ndis_pccard.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pccard.c diff -u src/sys/dev/if_ndis/if_ndis_pccard.c:1.4 src/sys/dev/if_ndis/if_ndis_pccard.c:1.5 --- src/sys/dev/if_ndis/if_ndis_pccard.c:1.4 Sat Mar 14 15:36:18 2009 +++ src/sys/dev/if_ndis/if_ndis_pccard.c Mon Aug 15 08:40:23 2016 @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_ndis_pccard.c,v 1.4 2009/03/14 15:36:18 dsl Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_ndis_pccard.c,v 1.5 2016/08/15 08:40:23 maxv Exp $"); #ifdef __FreeBSD__ __FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis_pccard.c,v 1.6.2.3 2005/03/31 04:24:36 wpaul Exp $"); #endif @@ -209,7 +209,7 @@ ndis_attach_pccard(device_t dev) goto fail; } sc->ndis_rescnt++; - resource_list_add(>ndis_rl, SYS_RES_IOPORT, rid, + resource_list_add(>ndis_rl, SYS_RES_IOPORT, sc->ndis_io_rid, rman_get_start(sc->ndis_res_io), rman_get_end(sc->ndis_res_io), rman_get_size(sc->ndis_res_io));
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Mon Aug 15 08:12:32 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis.c Log Message: Uninitialized var, found by brainy To generate a diff of this commit: cvs rdiff -u -r1.36 -r1.37 src/sys/dev/if_ndis/if_ndis.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis.c diff -u src/sys/dev/if_ndis/if_ndis.c:1.36 src/sys/dev/if_ndis/if_ndis.c:1.37 --- src/sys/dev/if_ndis/if_ndis.c:1.36 Fri Jun 10 13:27:14 2016 +++ src/sys/dev/if_ndis/if_ndis.c Mon Aug 15 08:12:32 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: if_ndis.c,v 1.36 2016/06/10 13:27:14 ozaki-r Exp $ */ +/* $NetBSD: if_ndis.c,v 1.37 2016/08/15 08:12:32 maxv Exp $ */ /*- * Copyright (c) 2003 @@ -37,7 +37,7 @@ __FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.69.2.6 2005/03/31 04:24:36 wpaul Exp $"); #endif #ifdef __NetBSD__ -__KERNEL_RCSID(0, "$NetBSD: if_ndis.c,v 1.36 2016/06/10 13:27:14 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_ndis.c,v 1.37 2016/08/15 08:12:32 maxv Exp $"); #endif @@ -1967,7 +1967,7 @@ ndis_getstate_80211(struct ndis_softc *s break; default: aprint_error_dev(sc->ndis_dev, "unknown nettype %d\n", - arg); +(int)bs->nwbx_nettype); break; } free(bs, M_TEMP);
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: maxv Date: Mon Aug 15 08:12:32 UTC 2016 Modified Files: src/sys/dev/if_ndis: if_ndis.c Log Message: Uninitialized var, found by brainy To generate a diff of this commit: cvs rdiff -u -r1.36 -r1.37 src/sys/dev/if_ndis/if_ndis.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: christos Date: Sat Apr 4 15:22:02 UTC 2015 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: don't leak rl (but there are other leaks), found by Brainy. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.20 src/sys/dev/if_ndis/if_ndis_pci.c:1.21 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.20 Mon Sep 1 15:46:55 2014 +++ src/sys/dev/if_ndis/if_ndis_pci.c Sat Apr 4 11:22:02 2015 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.20 2014/09/01 19:46:55 he Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.21 2015/04/04 15:22:02 christos Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -204,6 +204,7 @@ void ndis_attach_pci(device_t parent, de int revision, i; #endif int bar; + size_t rllen; printf(in ndis_attach_pci()\n); @@ -227,9 +228,9 @@ void ndis_attach_pci(device_t parent, de printf(sc-ndis_mtag = %x\n, (unsigned int)sc-ndis_mtag); - rl = malloc(sizeof(ndis_resource_list) + - (sizeof(cm_partial_resource_desc) * (MAX_RESOURCES-1)), - M_DEVBUF, M_NOWAIT|M_ZERO); + rllen = sizeof(ndis_resource_list) + + sizeof(cm_partial_resource_desc) * (MAX_RESOURCES - 1); + rl = malloc(rllen, M_DEVBUF, M_NOWAIT|M_ZERO); if(rl == NULL) { sc-error = ENOMEM; @@ -272,7 +273,7 @@ void ndis_attach_pci(device_t parent, de malloc(sizeof(struct ndis_resource), M_DEVBUF, M_NOWAIT | M_ZERO)) == NULL) { //printf(error: out of memory\n); sc-error = ENOMEM; - return; + goto out; } sc-ndis_res_io-res_base = base; sc-ndis_res_io-res_size = size; @@ -293,7 +294,7 @@ void ndis_attach_pci(device_t parent, de sc-ndis_res_altmem != NULL) { printf(too many resources\n); sc-error = ENXIO; - return; + goto out; } if(sc-ndis_res_mem) { if((sc-ndis_res_altmem = @@ -317,7 +318,7 @@ void ndis_attach_pci(device_t parent, de if((sc-ndis_res_mem = malloc(sizeof(struct ndis_resource), M_DEVBUF, M_NOWAIT | M_ZERO)) == NULL) { sc-error = ENOMEM; - return; + goto out; } sc-ndis_res_mem-res_base = base; sc-ndis_res_mem-res_size = size; @@ -364,6 +365,10 @@ void ndis_attach_pci(device_t parent, de kthread_create(PRI_NONE, 0, NULL, ndis_attach, (void *)sc, NULL, ndis_attach); + return; +out: + free(rl, M_DEVBUF); + return; }
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: christos Date: Sat Apr 4 15:22:02 UTC 2015 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: don't leak rl (but there are other leaks), found by Brainy. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: he Date: Mon Sep 1 19:46:55 UTC 2014 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: Remove redundant test for rl == NULL, that's already established right after its allocation, and rl isn't re-assigned later. To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.19 src/sys/dev/if_ndis/if_ndis_pci.c:1.20 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.19 Sat Oct 27 17:18:23 2012 +++ src/sys/dev/if_ndis/if_ndis_pci.c Mon Sep 1 19:46:55 2014 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.19 2012/10/27 17:18:23 chs Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.20 2014/09/01 19:46:55 he Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -358,11 +358,6 @@ void ndis_attach_pci(device_t parent, de printf(pci interrupt: %s\n, pci_intr_string(pa-pa_pc, ih)); - if(rl == NULL) { - sc-error = ENOMEM; - return; - } - /* save resource list in the softc */ sc-ndis_rl = rl; sc-ndis_rescnt = rl-cprl_count;
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: he Date: Mon Sep 1 19:46:55 UTC 2014 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: Remove redundant test for rl == NULL, that's already established right after its allocation, and rl isn't re-assigned later. To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: dyoung Date: Wed Feb 24 18:16:50 UTC 2010 Modified Files: src/sys/dev/if_ndis: if_ndisvar.h Log Message: Start to tuck Cardbus under the PCI abstraction. Step #1, textual substitution: for all practical purposes, pcitag_t and cardbustag_t are interchangeable, so just use pcitag_t. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/dev/if_ndis/if_ndisvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: dyoung Date: Wed Feb 24 18:16:50 UTC 2010 Modified Files: src/sys/dev/if_ndis: if_ndisvar.h Log Message: Start to tuck Cardbus under the PCI abstraction. Step #1, textual substitution: for all practical purposes, pcitag_t and cardbustag_t are interchangeable, so just use pcitag_t. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/dev/if_ndis/if_ndisvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndisvar.h diff -u src/sys/dev/if_ndis/if_ndisvar.h:1.5 src/sys/dev/if_ndis/if_ndisvar.h:1.6 --- src/sys/dev/if_ndis/if_ndisvar.h:1.5 Thu Dec 20 21:08:19 2007 +++ src/sys/dev/if_ndis/if_ndisvar.h Wed Feb 24 18:16:50 2010 @@ -175,7 +175,7 @@ /* cardbus specific */ cardbus_devfunc_tndis_res_ct; /* cardbus devfuncs */ - cardbustag_t ndis_res_ctag; /* carbus tag */ + pcitag_t ndis_res_ctag; /* carbus tag */ bus_size_t ndis_res_mapsize; /* size of mapped bus space region */ #endif /* end __NetBSD__ section */ int ndis_rescnt;
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: christos Date: Tue Oct 20 19:04:59 UTC 2009 Modified Files: src/sys/dev/if_ndis: if_ndis.c if_ndis_pci.c Log Message: make this compile again. To generate a diff of this commit: cvs rdiff -u -r1.28 -r1.29 src/sys/dev/if_ndis/if_ndis.c cvs rdiff -u -r1.16 -r1.17 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis.c diff -u src/sys/dev/if_ndis/if_ndis.c:1.28 src/sys/dev/if_ndis/if_ndis.c:1.29 --- src/sys/dev/if_ndis/if_ndis.c:1.28 Sun Aug 2 16:22:34 2009 +++ src/sys/dev/if_ndis/if_ndis.c Tue Oct 20 15:04:59 2009 @@ -35,7 +35,7 @@ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.69.2.6 2005/03/31 04:24:36 wpaul Exp $); #endif #ifdef __NetBSD__ -__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.28 2009/08/02 20:22:34 dsl Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.29 2009/10/20 19:04:59 christos Exp $); #endif @@ -94,13 +94,12 @@ #include ndis_driver_data.h -void ndis_attach (void *); -int ndis_detach (device_t, int); -int ndis_suspend (device_t); -int ndis_resume (device_t); -void ndis_shutdown (device_t); +void ndis_attach(void *); +int ndis_detach(device_t, int); +int ndis_suspend(device_t); +int ndis_resume(device_t); +void ndis_shutdown(device_t); -int ndisdrv_modevent (struct lkm_table *lkmtp, int cmd); /* I moved these to if_ndisvar.h */ /* @@ -143,8 +142,13 @@ static void ndis_setmulti (struct ndis_softc *); static void ndis_map_sclist (void *, bus_dma_segment_t *, int, bus_size_t, int); + +#ifdef _MODULE + static int ndisdrv_loaded = 0; +int ndisdrv_modevent(module_t, int); +MODULE(MODULE_CLASS_DRIVER, ndisdrv_modevent, NULL); /* * This routine should call windrv_load() once for each driver * image. This will do the relocation and dynalinking for the @@ -152,9 +156,7 @@ * saved in our driver database. */ int -ndisdrv_modevent(mod, cmd) - module_t mod; - int cmd; +ndisdrv_modevent(module_t mod, int cmd) { int error = 0; @@ -162,7 +164,7 @@ printf(in ndisdrv_modevent\n); #endif switch (cmd) { - case MOD_LOAD: + case MODULE_CMD_INIT: ndisdrv_loaded++; if (ndisdrv_loaded 1) break; @@ -173,7 +175,7 @@ windrv_wrap((funcptr)ndis_linksts_done, ndis_linksts_done_wrap); break; - case MOD_UNLOAD: + case MODULE_CMD_FINI: ndisdrv_loaded--; if (ndisdrv_loaded 0) break; @@ -183,16 +185,17 @@ windrv_unwrap(ndis_linksts_wrap); windrv_unwrap(ndis_linksts_done_wrap); break; -/* TODO: Do we need a LKM_E_STAT for NetBSD? */ + case MODULE_CMD_STAT: + error = ENOTTY; + break; default: error = EINVAL; break; } - return (error); + return error; } -#ifdef NDIS_LKM int if_ndis_lkmentry(struct lkm_table *lkmtp, int cmd, int ver); CFDRIVER_DECL(ndis, DV_DULL, NULL); @@ -229,7 +232,7 @@ DISPATCH(lkmtp, cmd, ver, lkm_nofunc, lkm_nofunc, lkm_nofunc); } -#endif /* NIDS_LKM */ +#endif /* _MODULE */ /* * Program the 64-bit multicast hash filter. @@ -889,7 +892,6 @@ #endif sc = device_get_softc(dev); - KASSERT(mtx_initialized(sc-ndis_mtx)); NDIS_LOCK(sc); @@ -944,9 +946,6 @@ * TODO: Unmap dma for NetBSD */ - - mtx_destroy(sc-ndis_mtx); - return(0); } Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.16 src/sys/dev/if_ndis/if_ndis_pci.c:1.17 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.16 Sun Aug 2 16:22:34 2009 +++ src/sys/dev/if_ndis/if_ndis_pci.c Tue Oct 20 15:04:59 2009 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.16 2009/08/02 20:22:34 dsl Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.17 2009/10/20 19:04:59 christos Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -67,7 +67,7 @@ #include ndis_driver_data.h -#ifndef NDIS_LKM +#ifndef _MODULE #include compat/ndis/hal_var.h #endif @@ -101,7 +101,7 @@ extern unsigned char drv_data[]; -#ifndef NDIS_LKM +#ifndef _MODULE //static funcptr ndis_txeof_wrap; //static funcptr ndis_rxeof_wrap; //static funcptr ndis_linksts_wrap; @@ -123,8 +123,7 @@ -extern int -ndis_lkm_handle(struct lkm_table *lkmtp, int cmd); +#ifdef _MODULE extern int ndisdrv_modevent(module_t mod, int cmd); @@ -143,6 +142,7 @@ { ndisdrv_modevent(NULL, MOD_LOAD); } +#endif /*static*/ int ndis_probe_pci(device_t parent, cfdata_t match, void *aux) @@ -165,12 +165,10 @@ t-ndis_vid, t-ndis_did); #endif if((vendor == t-ndis_vid) (product == t-ndis_did)) { -#ifndef NDIS_LKM - ndis_lkm_handle(NULL, LKM_E_LOAD); - //kthread_create(load_ndisapi, NULL); -#endif /* NDIS_LKM */ +#ifdef _MODULE ndisdrv_modevent(NULL, MOD_LOAD); //kthread_create(load_ndisdrv, NULL); +#endif /* _MODULE */ drv = windrv_lookup(0, PCI Bus);
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: dsl Date: Sun Aug 2 20:22:34 UTC 2009 Modified Files: src/sys/dev/if_ndis: if_ndis.c if_ndis_pci.c Log Message: Patch from PR/39034 - should make this compile! I've not removed the mtx_destroy() since that has to be in there somewhere. Patch may apply to netbsd 5.0 To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/sys/dev/if_ndis/if_ndis.c cvs rdiff -u -r1.15 -r1.16 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis.c diff -u src/sys/dev/if_ndis/if_ndis.c:1.27 src/sys/dev/if_ndis/if_ndis.c:1.28 --- src/sys/dev/if_ndis/if_ndis.c:1.27 Sat Apr 18 14:58:03 2009 +++ src/sys/dev/if_ndis/if_ndis.c Sun Aug 2 20:22:34 2009 @@ -35,7 +35,7 @@ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.69.2.6 2005/03/31 04:24:36 wpaul Exp $); #endif #ifdef __NetBSD__ -__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.27 2009/04/18 14:58:03 tsutsui Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.28 2009/08/02 20:22:34 dsl Exp $); #endif @@ -253,7 +253,7 @@ error = ndis_set_info(sc, OID_GEN_CURRENT_PACKET_FILTER, sc-ndis_filter, len); if (error) { - aprint_error_dev(sc-ndif_dev, set filter failed: %d\n, + aprint_error_dev(sc-ndis_dev, set filter failed: %d\n, error); } return; @@ -550,7 +550,7 @@ } /* Tell the user what version of the API the driver is using. */ - aprint_normal_dev(sc-ndis_dev, NDIS API version: %d.%d\n, + aprint_normal_dev(sc-ndis_dev, NDIS API version: %d.%d\n, sc-ndis_chars-nmc_version_major, sc-ndis_chars-nmc_version_minor); @@ -2129,7 +2129,7 @@ error = ifmedia_ioctl(ifp, ifr, sc-ifmedia, command); break; case SIOCSIFCAP: - if ((error = ether_ioctl(ifp, cmd, data)) == ENETRESET) { + if ((error = ether_ioctl(ifp, command, data)) == ENETRESET) { ndis_set_offload(sc); error = 0; } Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.15 src/sys/dev/if_ndis/if_ndis_pci.c:1.16 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.15 Tue May 12 14:28:22 2009 +++ src/sys/dev/if_ndis/if_ndis_pci.c Sun Aug 2 20:22:34 2009 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.15 2009/05/12 14:28:22 cegger Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.16 2009/08/02 20:22:34 dsl Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -369,7 +369,8 @@ sc-ndis_rl = rl; sc-ndis_rescnt = rl-cprl_count; - kthread_create(ndis_attach, (void *)sc); + kthread_create(PRI_NONE, 0, NULL, ndis_attach, (void *)sc, + NULL, ndis_attach); }
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: cegger Date: Tue May 12 12:17:51 UTC 2009 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: struct cfdata * - cfdata_t, no functional changes intended. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.13 src/sys/dev/if_ndis/if_ndis_pci.c:1.14 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.13 Fri Mar 27 16:15:24 2009 +++ src/sys/dev/if_ndis/if_ndis_pci.c Tue May 12 12:17:51 2009 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.13 2009/03/27 16:15:24 dyoung Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.14 2009/05/12 12:17:51 cegger Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -86,7 +86,7 @@ }; /*static*/ int ndis_probe_pci(struct device *parent, -struct cfdata *match, +cfdata_t match, void *aux); /*static*/ void ndis_attach_pci(struct device *parent, struct device *self, @@ -145,7 +145,7 @@ } /*static*/ int -ndis_probe_pci(struct device *parent, struct cfdata *match, void *aux) +ndis_probe_pci(struct device *parent, cfdata_t match, void *aux) { struct pci_attach_args *pa = aux; int vendor = PCI_VENDOR(pa-pa_id);
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: cegger Date: Tue May 12 14:28:22 UTC 2009 Modified Files: src/sys/dev/if_ndis: if_ndis_pci.c Log Message: struct device * - device_t, no functional changes intended. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/sys/dev/if_ndis/if_ndis_pci.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis_pci.c diff -u src/sys/dev/if_ndis/if_ndis_pci.c:1.14 src/sys/dev/if_ndis/if_ndis_pci.c:1.15 --- src/sys/dev/if_ndis/if_ndis_pci.c:1.14 Tue May 12 12:17:51 2009 +++ src/sys/dev/if_ndis/if_ndis_pci.c Tue May 12 14:28:22 2009 @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.14 2009/05/12 12:17:51 cegger Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis_pci.c,v 1.15 2009/05/12 14:28:22 cegger Exp $); #ifdef __FreeBSD__ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $); #endif @@ -85,11 +85,11 @@ { 0, 0, 0, NULL } }; -/*static*/ int ndis_probe_pci(struct device *parent, +/*static*/ int ndis_probe_pci(device_t parent, cfdata_t match, void *aux); -/*static*/ void ndis_attach_pci(struct device *parent, -struct device *self, +/*static*/ void ndis_attach_pci(device_t parent, +device_t self, void *aux); extern void ndis_attach (void *); extern int ndis_shutdown (device_t); @@ -145,7 +145,7 @@ } /*static*/ int -ndis_probe_pci(struct device *parent, cfdata_t match, void *aux) +ndis_probe_pci(device_t parent, cfdata_t match, void *aux) { struct pci_attach_args *pa = aux; int vendor = PCI_VENDOR(pa-pa_id); @@ -187,7 +187,7 @@ #define MAX_RESOURCES 7 /*static*/ -void ndis_attach_pci(struct device *parent, struct device *self, void *aux) +void ndis_attach_pci(device_t parent, device_t self, void *aux) { struct ndis_softc *sc = (struct ndis_softc*)self; struct pci_attach_args *pa = aux;
CVS commit: src/sys/dev/if_ndis
Module Name:src Committed By: dyoung Date: Thu Apr 2 00:39:37 UTC 2009 Modified Files: src/sys/dev/if_ndis: if_ndis.c Log Message: I find myself making a lot of changes in this code to keep it compiling and (let us hope) working in the 21st century, so I have put it through unifdef -D__NetBSD__ -U__FreeBSD__ so that it is less of a chore to read and to maintain. To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/sys/dev/if_ndis/if_ndis.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/if_ndis/if_ndis.c diff -u src/sys/dev/if_ndis/if_ndis.c:1.24 src/sys/dev/if_ndis/if_ndis.c:1.25 --- src/sys/dev/if_ndis/if_ndis.c:1.24 Wed Mar 18 17:06:49 2009 +++ src/sys/dev/if_ndis/if_ndis.c Thu Apr 2 00:39:37 2009 @@ -35,12 +35,9 @@ __FBSDID($FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.69.2.6 2005/03/31 04:24:36 wpaul Exp $); #endif #ifdef __NetBSD__ -__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.24 2009/03/18 17:06:49 cegger Exp $); +__KERNEL_RCSID(0, $NetBSD: if_ndis.c,v 1.25 2009/04/02 00:39:37 dyoung Exp $); #endif -#ifdef __FreeBSD__ -#include opt_bdg.h -#endif #include sys/param.h #include sys/systm.h @@ -51,30 +48,18 @@ #include sys/socket.h #include sys/queue.h -#ifdef __NetBSD__ #include sys/device.h #include sys/kauth.h -#endif -#ifdef __FreeBSD__ -#include sys/module.h -#else /* __NetBSD__ */ #include sys/module.h -#endif #include sys/proc.h -#if __FreeBSD_version 502113 #include sys/sysctl.h -#endif #include net/if.h #include net/if_arp.h -#ifdef __FreeBSD__ -#include net/ethernet.h -#else #include net/if_ether.h -#endif #include net/if_dl.h #include net/if_media.h @@ -82,33 +67,18 @@ #include net/bpf.h -#ifdef __FreeBSD__ -#include machine/bus_memio.h -#include machine/bus_pio.h -#include machine/resource.h -#endif #include sys/bus.h -#ifdef __FreeBSD__ -#include sys/bus.h -#include sys/rman.h -#endif #include net80211/ieee80211_var.h #include net80211/ieee80211_ioctl.h -#ifdef __FreeBSD__ -#include dev/wi/if_wavelan_ieee.h -#else /* __NetBSD__ */ #include dev/ic/wi_ieee.h -#endif #include dev/pci/pcireg.h #include dev/pci/pcivar.h -#ifdef __NetBSD__ #include dev/pci/pcidevs.h -#endif #include compat/ndis/pe_var.h #include compat/ndis/resource_var.h @@ -116,9 +86,7 @@ #include compat/ndis/hal_var.h #include compat/ndis/ndis_var.h #include compat/ndis/cfg_var.h -#ifdef __NetBSD__ #include compat/ndis/nbcompat.h -#endif #include dev/if_ndis/if_ndisvar.h #define NDIS_IMAGE @@ -126,25 +94,13 @@ #include ndis_driver_data.h -#ifdef __FreeBSD__ -int ndis_attach (device_t); -#else /* __NetBSD__ */ void ndis_attach (void *); -#endif -#ifdef __FreeBSD__ -int ndis_detach (device_t); -#else /* __NetBSD__ */ int ndis_detach (device_t, int); -#endif int ndis_suspend (device_t); int ndis_resume (device_t); void ndis_shutdown (device_t); -#ifdef __FreeBSD__ -int ndisdrv_modevent (module_t, int, void *); -#else /* __NetBSD__ */ int ndisdrv_modevent (struct lkm_table *lkmtp, int cmd); -#endif /* I moved these to if_ndisvar.h */ /* @@ -164,11 +120,7 @@ static funcptr ndis_linksts_wrap; static funcptr ndis_linksts_done_wrap; -#ifdef __FreeBSD__ -static void ndis_intr (void *); -#else /* __NetBSD__ */ int ndis_intr(void *); -#endif static void ndis_tick (void *); static void ndis_ticktask (void *); static void ndis_start (struct ifnet *); @@ -176,11 +128,7 @@ static int ndis_ioctl (struct ifnet *, u_long, void *); static int ndis_wi_ioctl_get (struct ifnet *, u_long, void *); static int ndis_wi_ioctl_set (struct ifnet *, u_long, void *); -#ifdef __FreeBSD__ -static void ndis_init (void *); -#else /* __NetBSD__ */ static int ndis_init (struct ifnet *); -#endif static void ndis_stop (struct ndis_softc *); static void ndis_watchdog (struct ifnet *); static int ndis_ifmedia_upd (struct ifnet *); @@ -195,12 +143,7 @@ static void ndis_setmulti (struct ndis_softc *); static void ndis_map_sclist (void *, bus_dma_segment_t *, int, bus_size_t, int); -#ifdef __NetBSD__ -static int ndisdrv_loaded = 0; -#endif /* __NetBSD__ */ -#ifdef __FreeBSD__ static int ndisdrv_loaded = 0; -#endif /* * This routine should call windrv_load() once for each driver @@ -209,16 +152,9 @@ * saved in our driver database. */ int -#ifdef __FreeBSD__ -ndisdrv_modevent(mod, cmd, arg) - module_t mod; - int cmd; - void *arg; -#else ndisdrv_modevent(mod, cmd) module_t mod; int cmd; -#endif { int error = 0; @@ -248,14 +184,6 @@ windrv_unwrap(ndis_linksts_done_wrap); break; /* TODO: Do we need a LKM_E_STAT for NetBSD? */ -#ifdef __FreeBSD__ - case MOD_SHUTDOWN: - windrv_unwrap(ndis_rxeof_wrap); - windrv_unwrap(ndis_txeof_wrap); - windrv_unwrap(ndis_linksts_wrap); - windrv_unwrap(ndis_linksts_done_wrap); - break; -#endif /* __FreeBSD__ */ default: error =