Module Name: src Committed By: skrll Date: Tue Sep 27 06:14:41 UTC 2022
Modified Files: src/sys/arch/arm/iomd: vidcaudio.c Log Message: malloc -> kmem To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.62 src/sys/arch/arm/iomd/vidcaudio.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/arm/iomd/vidcaudio.c diff -u src/sys/arch/arm/iomd/vidcaudio.c:1.61 src/sys/arch/arm/iomd/vidcaudio.c:1.62 --- src/sys/arch/arm/iomd/vidcaudio.c:1.61 Wed Feb 3 14:22:21 2021 +++ src/sys/arch/arm/iomd/vidcaudio.c Tue Sep 27 06:14:41 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: vidcaudio.c,v 1.61 2021/02/03 14:22:21 isaki Exp $ */ +/* $NetBSD: vidcaudio.c,v 1.62 2022/09/27 06:14:41 skrll Exp $ */ /* * Copyright (c) 1995 Melvin Tang-Richardson @@ -65,13 +65,13 @@ #include <sys/param.h> /* proc.h */ -__KERNEL_RCSID(0, "$NetBSD: vidcaudio.c,v 1.61 2021/02/03 14:22:21 isaki Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vidcaudio.c,v 1.62 2022/09/27 06:14:41 skrll Exp $"); #include <sys/audioio.h> #include <sys/conf.h> /* autoconfig functions */ #include <sys/device.h> /* device calls */ #include <sys/errno.h> -#include <sys/malloc.h> +#include <sys/kmem.h> #include <sys/proc.h> /* device calls */ #include <sys/systm.h> @@ -121,6 +121,7 @@ struct vidcaudio_softc { vaddr_t sc_poffset; vaddr_t sc_pbufsize; paddr_t *sc_ppages; + size_t sc_szppages; void (*sc_pintr)(void *); void *sc_parg; int sc_pcountdown; @@ -294,8 +295,9 @@ vidcaudio_close(void *addr) DPRINTF(("DEBUG: vidcaudio_close called\n")); sc = addr; if (sc->sc_ppages != NULL) { - free(sc->sc_ppages, M_DEVBUF); + kmem_free(sc->sc_ppages, sc->sc_szppages * sizeof(paddr_t)); sc->sc_ppages = NULL; + sc->sc_szppages = 0; } } @@ -390,8 +392,9 @@ vidcaudio_trigger_output(void *addr, voi sc->sc_pbufsize = (char *)end - (char *)start; npages = sc->sc_pbufsize >> PGSHIFT; if (sc->sc_ppages != NULL) - free(sc->sc_ppages, M_DEVBUF); - sc->sc_ppages = malloc(npages * sizeof(paddr_t), M_DEVBUF, M_WAITOK); + kmem_free(sc->sc_ppages, sc->sc_szppages); + sc->sc_szppages = npages * sizeof(paddr_t); + sc->sc_ppages = kmem_alloc(sc->sc_szppages, KM_SLEEP); if (sc->sc_ppages == NULL) return ENOMEM; for (i = 0; i < npages; i++)