patch-2.4.0-test6 linux/net/packet/af_packet.c

Next file: linux/net/socket.c
Previous file: linux/net/packet/Makefile
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test5/linux/net/packet/af_packet.c linux/net/packet/af_packet.c
@@ -5,7 +5,7 @@
  *
  *		PACKET - implements raw packet sockets.
  *
- * Version:	$Id: af_packet.c,v 1.36 2000/07/08 00:20:43 davem Exp $
+ * Version:	$Id: af_packet.c,v 1.39 2000/08/09 08:04:45 davem Exp $
  *
  * Authors:	Ross Biro, <bir7@leland.Stanford.Edu>
  *		Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
@@ -1564,11 +1564,11 @@
 
 	for (i=0; i<len; i++) {
 		if (pg_vec[i]) {
-			unsigned long map, mapend;
+			struct page *page, *pend;
 
-			mapend = MAP_NR(pg_vec[i] + (PAGE_SIZE << order) - 1);
-			for (map = MAP_NR(pg_vec[i]); map <= mapend; map++)
-				clear_bit(PG_reserved, &mem_map[map].flags);
+			pend = virt_to_page(pg_vec[i] + (PAGE_SIZE << order) - 1);
+			for (page = virt_to_page(pg_vec[i]); page <= pend; page++)
+				clear_bit(PG_reserved, &page->flags);
 			free_pages(pg_vec[i], order);
 		}
 	}
@@ -1616,14 +1616,14 @@
 		memset(pg_vec, 0, req->tp_block_nr*sizeof(unsigned long*));
 
 		for (i=0; i<req->tp_block_nr; i++) {
-			unsigned long map, mapend;
+			struct page *page, *pend;
 			pg_vec[i] = __get_free_pages(GFP_KERNEL, order);
 			if (!pg_vec[i])
 				goto out_free_pgvec;
 
-			mapend = MAP_NR(pg_vec[i] + (PAGE_SIZE << order) - 1);
-			for (map = MAP_NR(pg_vec[i]); map <= mapend; map++)
-				set_bit(PG_reserved, &mem_map[map].flags);
+			pend = virt_to_page(pg_vec[i] + (PAGE_SIZE << order) - 1);
+			for (page = virt_to_page(pg_vec[i]); page <= pend; page++)
+				set_bit(PG_reserved, &page->flags);
 		}
 		/* Page vector is allocated */
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)