Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-5]: src/sys/arch/alpha/include Pull up revision 1.47 (requested...



details:   https://anonhg.NetBSD.org/src/rev/c92004a5c05b
branches:  netbsd-1-5
changeset: 493099:c92004a5c05b
user:      he <he%NetBSD.org@localhost>
date:      Sat Apr 27 10:25:42 2002 +0000

description:
Pull up revision 1.47 (requested by thorpej):
  Fix a DMA resource leak on Alpha systems with more than 1GB of
  RAM.

diffstat:

 sys/arch/alpha/include/bus.h |  13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

diffs (35 lines):

diff -r 72de00c7e1e1 -r c92004a5c05b sys/arch/alpha/include/bus.h
--- a/sys/arch/alpha/include/bus.h      Sat Apr 27 10:25:26 2002 +0000
+++ b/sys/arch/alpha/include/bus.h      Sat Apr 27 10:25:42 2002 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: bus.h,v 1.39.2.2 2000/08/06 02:02:46 briggs Exp $ */
+/* $NetBSD: bus.h,v 1.39.2.3 2002/04/27 10:25:42 he Exp $ */
 
 /*-
  * Copyright (c) 1997, 1998, 2000 The NetBSD Foundation, Inc.
@@ -648,9 +648,11 @@
 #define        bus_dmamap_load_raw(t, m, sg, n, s, f)                  \
        (*(t)->_dmamap_load_raw)((t), (m), (sg), (n), (s), (f))
 #define        bus_dmamap_unload(t, p)                                 \
-       (*(t)->_dmamap_unload)((t), (p))
+       (void)(t),                                              \
+       (*(p)->_dm_window->_dmamap_unload)((p)->_dm_window, (p))
 #define        bus_dmamap_sync(t, p, o, l, ops)                        \
-       (*(t)->_dmamap_sync)((t), (p), (o), (l), (ops))
+       (void)(t),                                              \
+       (*(p)->_dm_window->_dmamap_sync)((p)->_dm_window, (p), (o), (l), (ops))
 #define        bus_dmamem_alloc(t, s, a, b, sg, n, r, f)               \
        (*(t)->_dmamem_alloc)((t), (s), (a), (b), (sg), (n), (r), (f))
 #define        bus_dmamem_free(t, sg, n)                               \
@@ -692,6 +694,11 @@
        void            *_dm_cookie;
 
        /*
+        * The DMA window that we ended up being mapped in.
+        */
+       bus_dma_tag_t   _dm_window;
+
+       /*
         * PUBLIC MEMBERS: these are used by machine-independent code.
         */
        bus_size_t      dm_mapsize;     /* size of the mapping */



Home | Main Index | Thread Index | Old Index