:The following files under sys/ still use MFREE():
:
:alpha/tc/am7990.c
:netatm/port.h
:security/lomac/kernel_socket.c
:
:Please fix.
:
:
:Cheers,
:-- 
:Ruslan Ermilov         Sysadmin and DBA,

    Please review the following patch.  Note that the KB_ macros in 
    netatm could be further rewritten and the (one line of) code that uses
    them could be cleaned up, but I only made the minimum changes necessary
    to remove MFREE().  I did rewrite the tangle of code in am7990.c,
    it's about an order of magnitude easier to read now.

                                                -Matt

Index: alpha/tc/am7990.c
===================================================================
RCS file: /home/ncvs/src/sys/alpha/tc/am7990.c,v
retrieving revision 1.12
diff -u -r1.12 am7990.c
--- alpha/tc/am7990.c   14 Jun 2001 19:36:37 -0000      1.12
+++ alpha/tc/am7990.c   6 Feb 2002 11:24:51 -0000
@@ -442,19 +442,16 @@
        int boff;
        register struct mbuf *m;
 {
-       register struct mbuf *n;
        register int len, tlen = 0;
 
-       for (; m; m = n) {
+       while (m) {
                len = m->m_len;
-               if (len == 0) {
-                       MFREE(m, n);
-                       continue;
+               if (len != 0) {
+                       (*sc->sc_copytobuf)(sc, mtod(m, caddr_t), boff, len);
+                       boff += len;
+                       tlen += len;
                }
-               (*sc->sc_copytobuf)(sc, mtod(m, caddr_t), boff, len);
-               boff += len;
-               tlen += len;
-               MFREE(m, n);
+               m = m_free(m);
        }
        if (tlen < LEMINSIZE) {
                (*sc->sc_zerobuf)(sc, boff, LEMINSIZE - tlen);
Index: netatm/port.h
===================================================================
RCS file: /home/ncvs/src/sys/netatm/port.h,v
retrieving revision 1.5
diff -u -r1.5 port.h
--- netatm/port.h       20 Mar 2001 10:42:48 -0000      1.5
+++ netatm/port.h       6 Feb 2002 11:27:06 -0000
@@ -274,10 +274,10 @@
        (prev)->m_next = (new);                         \
 }
 #define        KB_UNLINKHEAD(head, next) {                     \
-       MFREE((head), (next));                          \
+       (next) = m_free(head);                          \
 }
 #define        KB_UNLINK(old, prev, next) {                    \
-       MFREE((old), (next));                           \
+       (next) = m_free(old);                           \
        (prev)->m_next = (next);                        \
 }
 #define        KB_ISPKT(bfr)           (((bfr)->m_flags & M_PKTHDR) != 0)
@@ -407,10 +407,10 @@
        (prev)->m_next = (new);                         \
 }
 #define        KB_UNLINKHEAD(head, next) {                     \
-       MFREE((head), (next));                          \
+       (next) = m_free(head);                          \
 }
 #define        KB_UNLINK(old, prev, next) {                    \
-       MFREE((old), (next));                           \
+       (next) = m_free(old);                           \
        (prev)->m_next = (next);                        \
 }
 #define        KB_ISPKT(bfr)           (0)
Index: security/lomac/kernel_socket.c
===================================================================
RCS file: /home/ncvs/src/sys/security/lomac/kernel_socket.c,v
retrieving revision 1.3
diff -u -r1.3 kernel_socket.c
--- security/lomac/kernel_socket.c      26 Dec 2001 18:31:22 -0000      1.3
+++ security/lomac/kernel_socket.c      6 Feb 2002 11:28:08 -0000
@@ -644,7 +644,7 @@
                        m = m->m_next;
                } else {
                        sbfree(&so->so_rcv, m);
-                       MFREE(m, so->so_rcv.sb_mb);
+                       so->so_rcv.sb_mb = m_free(m);
                        m = so->so_rcv.sb_mb;
                }
        }
@@ -729,7 +729,7 @@
                                        so->so_rcv.sb_mb = m = m->m_next;
                                        *mp = (struct mbuf *)0;
                                } else {
-                                       MFREE(m, so->so_rcv.sb_mb);
+                                       so->so_rcv.sb_mb = m_free(m);
                                        m = so->so_rcv.sb_mb;
                                }
                                if (m)

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to