Module Name: src
Committed By: ozaki-r
Date: Wed Jan 7 07:05:48 UTC 2015
Modified Files:
src/sys/arch/x86/x86: cpu_ucode.c
src/sys/arch/xen/xen: xen_ucode.c
src/sys/dev/i2c: xc3028.c xc5k.c
src/sys/dev/ic: bwi.c rt2661.c
src/sys/dev/pci: if_ipw.c if_iwi.c if_iwivar.h
src/sys/dev/usb: if_athn_usb.c if_rum.c if_urtwn.c if_zyd.c
src/sys/kern: kern_cpu.c
Log Message:
Pass a correct firmware size (instead of 0) to firmware_free
firmware_free now uses kmem_free(9) instead of free(9),
so we need to pass a correct size to it.
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/x86/x86/cpu_ucode.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/xen/xen/xen_ucode.c
cvs rdiff -u -r1.5 -r1.6 src/sys/dev/i2c/xc3028.c
cvs rdiff -u -r1.4 -r1.5 src/sys/dev/i2c/xc5k.c
cvs rdiff -u -r1.24 -r1.25 src/sys/dev/ic/bwi.c
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/ic/rt2661.c
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/pci/if_ipw.c
cvs rdiff -u -r1.97 -r1.98 src/sys/dev/pci/if_iwi.c
cvs rdiff -u -r1.16 -r1.17 src/sys/dev/pci/if_iwivar.h
cvs rdiff -u -r1.6 -r1.7 src/sys/dev/usb/if_athn_usb.c
cvs rdiff -u -r1.48 -r1.49 src/sys/dev/usb/if_rum.c
cvs rdiff -u -r1.34 -r1.35 src/sys/dev/usb/if_urtwn.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/usb/if_zyd.c
cvs rdiff -u -r1.66 -r1.67 src/sys/kern/kern_cpu.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/arch/x86/x86/cpu_ucode.c
diff -u src/sys/arch/x86/x86/cpu_ucode.c:1.4 src/sys/arch/x86/x86/cpu_ucode.c:1.5
--- src/sys/arch/x86/x86/cpu_ucode.c:1.4 Sat Jul 6 12:03:11 2013
+++ src/sys/arch/x86/x86/cpu_ucode.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu_ucode.c,v 1.4 2013/07/06 12:03:11 gdt Exp $ */
+/* $NetBSD: cpu_ucode.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $ */
/*
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpu_ucode.c,v 1.4 2013/07/06 12:03:11 gdt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu_ucode.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $");
#include "opt_cpu_ucode.h"
#include "opt_compat_netbsd.h"
@@ -116,7 +116,7 @@ cpu_ucode_apply(const struct cpu_ucode *
}
if (sc->sc_blob != NULL)
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
return error;
@@ -140,7 +140,7 @@ compat6_cpu_ucode_apply(const struct com
error = cpu_ucode_amd_apply(sc, CPU_UCODE_ALL_CPUS);
if (sc->sc_blob != NULL)
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
return error;
Index: src/sys/arch/xen/xen/xen_ucode.c
diff -u src/sys/arch/xen/xen/xen_ucode.c:1.4 src/sys/arch/xen/xen/xen_ucode.c:1.5
--- src/sys/arch/xen/xen/xen_ucode.c:1.4 Sat Jul 6 12:06:24 2013
+++ src/sys/arch/xen/xen/xen_ucode.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: xen_ucode.c,v 1.4 2013/07/06 12:06:24 gdt Exp $ */
+/* $NetBSD: xen_ucode.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $ */
/*
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xen_ucode.c,v 1.4 2013/07/06 12:06:24 gdt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xen_ucode.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $");
#include "opt_cpu_ucode.h"
#include "opt_compat_netbsd.h"
@@ -115,7 +115,7 @@ cpu_ucode_apply(const struct cpu_ucode *
error = -HYPERVISOR_platform_op(&op);
if (sc->sc_blob)
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
return error;
@@ -141,7 +141,7 @@ compat6_cpu_ucode_apply(const struct com
error = -HYPERVISOR_platform_op(&op);
if (sc->sc_blob != NULL)
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
return error;
Index: src/sys/dev/i2c/xc3028.c
diff -u src/sys/dev/i2c/xc3028.c:1.5 src/sys/dev/i2c/xc3028.c:1.6
--- src/sys/dev/i2c/xc3028.c:1.5 Sun Oct 2 19:03:56 2011
+++ src/sys/dev/i2c/xc3028.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: xc3028.c,v 1.5 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: xc3028.c,v 1.6 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2011 Jared D. McNeill <[email protected]>
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xc3028.c,v 1.5 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xc3028.c,v 1.6 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -219,7 +219,7 @@ xc3028_firmware_open(struct xc3028 *xc)
done:
if (fw)
- firmware_free(fw, 0);
+ firmware_free(fw, fwlen);
mutex_exit(&xc3028_firmware_lock);
if (error)
Index: src/sys/dev/i2c/xc5k.c
diff -u src/sys/dev/i2c/xc5k.c:1.4 src/sys/dev/i2c/xc5k.c:1.5
--- src/sys/dev/i2c/xc5k.c:1.4 Sun Oct 2 19:03:56 2011
+++ src/sys/dev/i2c/xc5k.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: xc5k.c,v 1.4 2011/10/02 19:03:56 jmcneill Exp $ */
+/* $NetBSD: xc5k.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2010 Jared D. McNeill <[email protected]>
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xc5k.c,v 1.4 2011/10/02 19:03:56 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xc5k.c,v 1.5 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -174,7 +174,7 @@ xc5k_firmware_open(struct xc5k *xc)
done:
if (fw)
- firmware_free(fw, 0);
+ firmware_free(fw, fwlen);
mutex_exit(&xc5k_firmware_lock);
if (error)
Index: src/sys/dev/ic/bwi.c
diff -u src/sys/dev/ic/bwi.c:1.24 src/sys/dev/ic/bwi.c:1.25
--- src/sys/dev/ic/bwi.c:1.24 Tue Feb 25 18:30:09 2014
+++ src/sys/dev/ic/bwi.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: bwi.c,v 1.24 2014/02/25 18:30:09 pooka Exp $ */
+/* $NetBSD: bwi.c,v 1.25 2015/01/07 07:05:48 ozaki-r Exp $ */
/* $OpenBSD: bwi.c,v 1.74 2008/02/25 21:13:30 mglocker Exp $ */
/*
@@ -48,7 +48,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: bwi.c,v 1.24 2014/02/25 18:30:09 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bwi.c,v 1.25 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/callout.h>
@@ -1939,7 +1939,7 @@ invalid:
error = EINVAL;
free_and_fail:
- firmware_free(fwi->fwi_data, 0);
+ firmware_free(fwi->fwi_data, fwi->fwi_size);
fwi->fwi_data = NULL;
fwi->fwi_size = 0;
@@ -1953,7 +1953,7 @@ bwi_mac_fw_image_free(struct bwi_mac *ma
if (fwi->fwi_data != NULL) {
DPRINTF(mac->mac_sc, BWI_DBG_FIRMWARE, "freeing firmware %s\n",
fwi->fwi_name);
- firmware_free(fwi->fwi_data, 0);
+ firmware_free(fwi->fwi_data, fwi->fwi_size);
fwi->fwi_data = NULL;
fwi->fwi_size = 0;
}
Index: src/sys/dev/ic/rt2661.c
diff -u src/sys/dev/ic/rt2661.c:1.29 src/sys/dev/ic/rt2661.c:1.30
--- src/sys/dev/ic/rt2661.c:1.29 Sat Feb 18 13:38:36 2012
+++ src/sys/dev/ic/rt2661.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: rt2661.c,v 1.29 2012/02/18 13:38:36 drochner Exp $ */
+/* $NetBSD: rt2661.c,v 1.30 2015/01/07 07:05:48 ozaki-r Exp $ */
/* $OpenBSD: rt2661.c,v 1.17 2006/05/01 08:41:11 damien Exp $ */
/* $FreeBSD: rt2560.c,v 1.5 2006/06/02 19:59:31 csjp Exp $ */
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rt2661.c,v 1.29 2012/02/18 13:38:36 drochner Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rt2661.c,v 1.30 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
@@ -2572,7 +2572,7 @@ rt2661_init(struct ifnet *ifp)
if (firmware_read(fh, 0, ucode, size) != 0) {
aprint_error_dev(sc->sc_dev, "could not read microcode %s\n", name);
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
firmware_close(fh);
rt2661_stop(ifp, 1);
return EIO;
@@ -2580,13 +2580,13 @@ rt2661_init(struct ifnet *ifp)
if (rt2661_load_microcode(sc, ucode, size) != 0) {
aprint_error_dev(sc->sc_dev, "could not load 8051 microcode\n");
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
firmware_close(fh);
rt2661_stop(ifp, 1);
return EIO;
}
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
firmware_close(fh);
sc->sc_flags |= RT2661_FWLOADED;
}
Index: src/sys/dev/pci/if_ipw.c
diff -u src/sys/dev/pci/if_ipw.c:1.57 src/sys/dev/pci/if_ipw.c:1.58
--- src/sys/dev/pci/if_ipw.c:1.57 Sat Mar 29 19:28:24 2014
+++ src/sys/dev/pci/if_ipw.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ipw.c,v 1.57 2014/03/29 19:28:24 christos Exp $ */
+/* $NetBSD: if_ipw.c,v 1.58 2015/01/07 07:05:48 ozaki-r Exp $ */
/* FreeBSD: src/sys/dev/ipw/if_ipw.c,v 1.15 2005/11/13 17:17:40 damien Exp */
/*-
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ipw.c,v 1.57 2014/03/29 19:28:24 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ipw.c,v 1.58 2015/01/07 07:05:48 ozaki-r Exp $");
/*-
* Intel(R) PRO/Wireless 2100 MiniPCI driver
@@ -1907,8 +1907,8 @@ ipw_cache_firmware(struct ipw_softc *sc)
return 0;
-fail3: firmware_free(fw->ucode, 0);
-fail2: firmware_free(fw->main, 0);
+fail3: firmware_free(fw->ucode, fw->ucode_size);
+fail2: firmware_free(fw->main, fw->main_size);
fail1: firmware_close(fwh);
fail0:
return error;
@@ -1920,8 +1920,8 @@ ipw_free_firmware(struct ipw_softc *sc)
if (!(sc->flags & IPW_FLAG_FW_CACHED))
return;
- firmware_free(sc->fw.main, 0);
- firmware_free(sc->fw.ucode, 0);
+ firmware_free(sc->fw.main, sc->fw.main_size);
+ firmware_free(sc->fw.ucode, sc->fw.ucode_size);
sc->flags &= ~IPW_FLAG_FW_CACHED;
}
Index: src/sys/dev/pci/if_iwi.c
diff -u src/sys/dev/pci/if_iwi.c:1.97 src/sys/dev/pci/if_iwi.c:1.98
--- src/sys/dev/pci/if_iwi.c:1.97 Sat Mar 29 19:28:24 2014
+++ src/sys/dev/pci/if_iwi.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: if_iwi.c,v 1.97 2014/03/29 19:28:24 christos Exp $ */
+/* $NetBSD: if_iwi.c,v 1.98 2015/01/07 07:05:48 ozaki-r Exp $ */
/* $OpenBSD: if_iwi.c,v 1.111 2010/11/15 19:11:57 damien Exp $ */
/*-
@@ -19,7 +19,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_iwi.c,v 1.97 2014/03/29 19:28:24 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iwi.c,v 1.98 2015/01/07 07:05:48 ozaki-r Exp $");
/*-
* Intel(R) PRO/Wireless 2200BG/2225BG/2915ABG driver
@@ -2187,6 +2187,7 @@ iwi_cache_firmware(struct iwi_softc *sc)
error = EIO;
goto fail1;
}
+ sc->sc_blobsize = size;
sc->sc_blob = firmware_malloc(size);
if (sc->sc_blob == NULL) {
@@ -2246,7 +2247,7 @@ iwi_cache_firmware(struct iwi_softc *sc)
return 0;
-fail2: firmware_free(sc->sc_blob, 0);
+fail2: firmware_free(sc->sc_blob, sc->sc_blobsize);
fail1:
return error;
}
@@ -2258,7 +2259,7 @@ iwi_free_firmware(struct iwi_softc *sc)
if (!(sc->flags & IWI_FLAG_FW_CACHED))
return;
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->flags &= ~IWI_FLAG_FW_CACHED;
}
Index: src/sys/dev/pci/if_iwivar.h
diff -u src/sys/dev/pci/if_iwivar.h:1.16 src/sys/dev/pci/if_iwivar.h:1.17
--- src/sys/dev/pci/if_iwivar.h:1.16 Tue Jan 19 22:07:00 2010
+++ src/sys/dev/pci/if_iwivar.h Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: if_iwivar.h,v 1.16 2010/01/19 22:07:00 pooka Exp $ */
+/* $NetBSD: if_iwivar.h,v 1.17 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2004, 2005
@@ -123,6 +123,7 @@ struct iwi_softc {
struct iwi_firmware fw;
const char *sc_fwname;
char *sc_blob;
+ size_t sc_blobsize;
uint32_t flags;
#define IWI_FLAG_FW_CACHED (1 << 0)
Index: src/sys/dev/usb/if_athn_usb.c
diff -u src/sys/dev/usb/if_athn_usb.c:1.6 src/sys/dev/usb/if_athn_usb.c:1.7
--- src/sys/dev/usb/if_athn_usb.c:1.6 Wed Oct 16 18:23:39 2013
+++ src/sys/dev/usb/if_athn_usb.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: if_athn_usb.c,v 1.6 2013/10/16 18:23:39 christos Exp $ */
+/* $NetBSD: if_athn_usb.c,v 1.7 2015/01/07 07:05:48 ozaki-r Exp $ */
/* $OpenBSD: if_athn_usb.c,v 1.12 2013/01/14 09:50:31 jsing Exp $ */
/*-
@@ -22,7 +22,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_athn_usb.c,v 1.6 2013/10/16 18:23:39 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_athn_usb.c,v 1.7 2015/01/07 07:05:48 ozaki-r Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -831,7 +831,7 @@ athn_usb_load_firmware(struct athn_usb_s
if (error != 0) {
aprint_error_dev(usc->usc_dev,
"failed to read firmware (error %d)\n", error);
- firmware_free(fw, 0);
+ firmware_free(fw, size);
return error;
}
@@ -848,14 +848,14 @@ athn_usb_load_firmware(struct athn_usb_s
USETW(req.wLength, mlen);
error = usbd_do_request(usc->usc_udev, &req, ptr);
if (error != 0) {
- free(fw, M_DEVBUF);
+ firmware_free(fw, size);
return error;
}
addr += mlen >> 8;
ptr += mlen;
size -= mlen;
}
- free(fw, M_DEVBUF);
+ firmware_free(fw, size);
/* Start firmware. */
if (usc->usc_flags & ATHN_USB_FLAG_AR7010)
Index: src/sys/dev/usb/if_rum.c
diff -u src/sys/dev/usb/if_rum.c:1.48 src/sys/dev/usb/if_rum.c:1.49
--- src/sys/dev/usb/if_rum.c:1.48 Sat Mar 29 00:59:05 2014
+++ src/sys/dev/usb/if_rum.c Wed Jan 7 07:05:48 2015
@@ -1,5 +1,5 @@
/* $OpenBSD: if_rum.c,v 1.40 2006/09/18 16:20:20 damien Exp $ */
-/* $NetBSD: if_rum.c,v 1.48 2014/03/29 00:59:05 zafer Exp $ */
+/* $NetBSD: if_rum.c,v 1.49 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2005-2007 Damien Bergamini <[email protected]>
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.48 2014/03/29 00:59:05 zafer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_rum.c,v 1.49 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/sockio.h>
@@ -283,18 +283,18 @@ rum_attachhook(void *xsc)
if (error != 0) {
printf("%s: failed to read firmware (error %d)\n",
device_xname(sc->sc_dev), error);
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
return error;
}
if (rum_load_microcode(sc, ucode, size) != 0) {
printf("%s: could not load 8051 microcode\n",
device_xname(sc->sc_dev));
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
return ENXIO;
}
- firmware_free(ucode, 0);
+ firmware_free(ucode, size);
sc->sc_flags |= RT2573_FWLOADED;
return 0;
Index: src/sys/dev/usb/if_urtwn.c
diff -u src/sys/dev/usb/if_urtwn.c:1.34 src/sys/dev/usb/if_urtwn.c:1.35
--- src/sys/dev/usb/if_urtwn.c:1.34 Fri Jul 25 15:07:03 2014
+++ src/sys/dev/usb/if_urtwn.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: if_urtwn.c,v 1.34 2014/07/25 15:07:03 nonaka Exp $ */
+/* $NetBSD: if_urtwn.c,v 1.35 2015/01/07 07:05:48 ozaki-r Exp $ */
/* $OpenBSD: if_urtwn.c,v 1.20 2011/11/26 06:39:33 ckuethe Exp $ */
/*-
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.34 2014/07/25 15:07:03 nonaka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.35 2015/01/07 07:05:48 ozaki-r Exp $");
#ifdef _KERNEL_OPT
#include "opt_inet.h"
@@ -3085,7 +3085,7 @@ urtwn_load_firmware(struct urtwn_softc *
if (error != 0) {
aprint_error_dev(sc->sc_dev,
"failed to read firmware (error %d)\n", error);
- firmware_free(fw, 0);
+ firmware_free(fw, len);
return (error);
}
@@ -3175,7 +3175,7 @@ urtwn_load_firmware(struct urtwn_softc *
goto fail;
}
fail:
- firmware_free(fw, 0);
+ firmware_free(fw, len);
return (error);
}
Index: src/sys/dev/usb/if_zyd.c
diff -u src/sys/dev/usb/if_zyd.c:1.36 src/sys/dev/usb/if_zyd.c:1.37
--- src/sys/dev/usb/if_zyd.c:1.36 Tue Jan 22 12:40:43 2013
+++ src/sys/dev/usb/if_zyd.c Wed Jan 7 07:05:48 2015
@@ -1,5 +1,5 @@
/* $OpenBSD: if_zyd.c,v 1.52 2007/02/11 00:08:04 jsg Exp $ */
-/* $NetBSD: if_zyd.c,v 1.36 2013/01/22 12:40:43 jmcneill Exp $ */
+/* $NetBSD: if_zyd.c,v 1.37 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2006 by Damien Bergamini <[email protected]>
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.36 2013/01/22 12:40:43 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_zyd.c,v 1.37 2015/01/07 07:05:48 ozaki-r Exp $");
#include <sys/param.h>
#include <sys/sockio.h>
@@ -278,7 +278,7 @@ zyd_attachhook(device_t self)
if (error != 0) {
aprint_error_dev(sc->sc_dev,
"failed to read firmware (error %d)\n", error);
- firmware_free(fw, 0);
+ firmware_free(fw, size);
return;
}
@@ -286,11 +286,11 @@ zyd_attachhook(device_t self)
if (error != 0) {
aprint_error_dev(sc->sc_dev,
"could not load firmware (error=%d)\n", error);
- firmware_free(fw, 0);
+ firmware_free(fw, size);
return;
}
- firmware_free(fw, 0);
+ firmware_free(fw, size);
sc->sc_flags |= ZD1211_FWLOADED;
/* complete the attach process */
Index: src/sys/kern/kern_cpu.c
diff -u src/sys/kern/kern_cpu.c:1.66 src/sys/kern/kern_cpu.c:1.67
--- src/sys/kern/kern_cpu.c:1.66 Fri Jul 25 08:10:40 2014
+++ src/sys/kern/kern_cpu.c Wed Jan 7 07:05:48 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: kern_cpu.c,v 1.66 2014/07/25 08:10:40 dholland Exp $ */
+/* $NetBSD: kern_cpu.c,v 1.67 2015/01/07 07:05:48 ozaki-r Exp $ */
/*-
* Copyright (c) 2007, 2008, 2009, 2010, 2012 The NetBSD Foundation, Inc.
@@ -56,7 +56,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.66 2014/07/25 08:10:40 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.67 2015/01/07 07:05:48 ozaki-r Exp $");
#include "opt_cpu_ucode.h"
#include "opt_compat_netbsd.h"
@@ -605,7 +605,7 @@ cpu_ucode_load(struct cpu_ucode_softc *s
int error;
if (sc->sc_blob != NULL) {
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
}
@@ -632,7 +632,7 @@ cpu_ucode_load(struct cpu_ucode_softc *s
return 0;
err1:
- firmware_free(sc->sc_blob, 0);
+ firmware_free(sc->sc_blob, sc->sc_blobsize);
sc->sc_blob = NULL;
sc->sc_blobsize = 0;
err0: