diff --git a/src/vnet/pg/cli.c b/src/vnet/pg/cli.c
index 8b543d3..a09107c 100644
--- a/src/vnet/pg/cli.c
+++ b/src/vnet/pg/cli.c
@@ -305,7 +305,7 @@
   s.sw_if_index[VLIB_RX] = s.sw_if_index[VLIB_TX] = ~0;
   s.node_index = ~0;
   s.max_packet_bytes = s.min_packet_bytes = 64;
-  s.buffer_bytes = VLIB_BUFFER_DEFAULT_FREE_LIST_BYTES;
+  s.buffer_bytes = VLIB_BUFFER_DATA_SIZE;
   s.if_id = 0;
   pcap_file_name = 0;
   while (unformat_check_input (input) != UNFORMAT_END_OF_INPUT)
diff --git a/src/vnet/pg/input.c b/src/vnet/pg/input.c
index ee6aad4..4db4b45 100644
--- a/src/vnet/pg/input.c
+++ b/src/vnet/pg/input.c
@@ -1190,10 +1190,7 @@
   uword is_start_of_packet = bi == s->buffer_indices;
   u32 n_allocated;
 
-  n_allocated = vlib_buffer_alloc_from_free_list (vm,
-						  buffers,
-						  n_alloc,
-						  bi->free_list_index);
+  n_allocated = vlib_buffer_alloc (vm, buffers, n_alloc);
   if (n_allocated == 0)
     return 0;
 
@@ -1525,12 +1522,13 @@
       head = clib_fifo_head (bi0->buffer_fifo);
 
       if (head + n_this_frame <= end)
-	vlib_copy_buffers (to_next, head, n_this_frame);
+	clib_memcpy_fast (to_next, head, n_this_frame * sizeof (u32));
       else
 	{
 	  u32 n = end - head;
-	  vlib_copy_buffers (to_next + 0, head, n);
-	  vlib_copy_buffers (to_next + n, start, n_this_frame - n);
+	  clib_memcpy_fast (to_next + 0, head, n * sizeof (u32));
+	  clib_memcpy_fast (to_next + n, start,
+			    (n_this_frame - n) * sizeof (u32));
 	}
 
       vec_foreach (bi, s->buffer_indices)
diff --git a/src/vnet/pg/pg.h b/src/vnet/pg/pg.h
index 99652b4..0b06803 100644
--- a/src/vnet/pg/pg.h
+++ b/src/vnet/pg/pg.h
@@ -89,8 +89,6 @@
   /* Buffers pre-initialized with fixed buffer data for this stream. */
   u32 *buffer_fifo;
 
-  /* Buffer free list for this buffer index in stream. */
-  vlib_buffer_free_list_index_t free_list_index;
 } pg_buffer_index_t;
 
 typedef struct pg_stream_t
diff --git a/src/vnet/pg/stream.c b/src/vnet/pg/stream.c
index bf0eac3..ddd15d6 100644
--- a/src/vnet/pg/stream.c
+++ b/src/vnet/pg/stream.c
@@ -435,17 +435,13 @@
   s->last_increment_packet_size = s->min_packet_bytes;
 
   {
-    pg_buffer_index_t *bi;
     int n;
 
-    s->buffer_bytes = VLIB_BUFFER_DEFAULT_FREE_LIST_BYTES;
+    s->buffer_bytes = VLIB_BUFFER_DATA_SIZE;
     n = s->max_packet_bytes / s->buffer_bytes;
     n += (s->max_packet_bytes % s->buffer_bytes) != 0;
 
     vec_resize (s->buffer_indices, n);
-
-    vec_foreach (bi, s->buffer_indices)
-      bi->free_list_index = VLIB_BUFFER_DEFAULT_FREE_LIST_INDEX;
   }
 
   /* Find an interface to use. */
