]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE14-freedatabufs-mark-free-20051215
authorTom Keiser <tkeiser@gmail.com>
Fri, 16 Dec 2005 03:33:08 +0000 (03:33 +0000)
committerDerrick Brashear <shadow@dementia.org>
Fri, 16 Dec 2005 03:33:08 +0000 (03:33 +0000)
avoid an error with marking data packets free

(cherry picked from commit 914ac9204801982e1b1b9e827a92cd519ef18bfd)

src/rx/rx_packet.c

index 4963667e41eff92d6e84795febad71c2862d69a2..27a7e9f56f3f483eb422d7272dd8cf0177b9797b 100644 (file)
@@ -810,6 +810,7 @@ static int
 rxi_FreeDataBufsToQueue(struct rx_packet *p, int first, struct rx_queue * q)
 {
     struct iovec *iov;
+    struct rx_packet * cb;
     int count = 0;
 
     if (first < 2)
@@ -818,7 +819,9 @@ rxi_FreeDataBufsToQueue(struct rx_packet *p, int first, struct rx_queue * q)
        iov = &p->wirevec[first];
        if (!iov->iov_base)
            osi_Panic("rxi_PacketIOVToQueue: unexpected NULL iov");
-       queue_Append(q, RX_CBUF_TO_PACKET(iov->iov_base, p));
+       cb = RX_CBUF_TO_PACKET(iov->iov_base, p);
+       RX_FPQ_MARK_FREE(cb);
+       queue_Append(q, cb);
     }
     p->length = 0;
     p->niovecs = 0;