Displaying 2 results from an estimated 2 matches for "release_hv_pages".
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 01/13] HV VM Fix map area for HV.
...f (i < pages)
+ return 0;
+
+ /*
+ * OK we found a location where we can map our pages
+ * so now we set them used, and do the mapping.
+ */
+ bit = found_bit;
+ for (i=0; i < pages; i++)
+ set_bit(bit++, hvvm_avail_pages);
+
+ return HVVM_START + found_bit * PAGE_SIZE;
+}
+
+static void release_hv_pages(unsigned long addr, int pages)
+{
+ unsigned int bit;
+ int i;
+
+ /* FIXME : ADD LOCKING!!! */
+
+ bit = (addr - HVVM_START) / PAGE_SIZE;
+
+ for (i=0; i < pages; i++) {
+ BUG_ON(!test_bit(bit, hvvm_avail_pages));
+ clear_bit(bit++, hvvm_avail_pages);
+ }
+}
+
+
+/**
+ * hvvm_map_pages - map...
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 01/13] HV VM Fix map area for HV.
...f (i < pages)
+ return 0;
+
+ /*
+ * OK we found a location where we can map our pages
+ * so now we set them used, and do the mapping.
+ */
+ bit = found_bit;
+ for (i=0; i < pages; i++)
+ set_bit(bit++, hvvm_avail_pages);
+
+ return HVVM_START + found_bit * PAGE_SIZE;
+}
+
+static void release_hv_pages(unsigned long addr, int pages)
+{
+ unsigned int bit;
+ int i;
+
+ /* FIXME : ADD LOCKING!!! */
+
+ bit = (addr - HVVM_START) / PAGE_SIZE;
+
+ for (i=0; i < pages; i++) {
+ BUG_ON(!test_bit(bit, hvvm_avail_pages));
+ clear_bit(bit++, hvvm_avail_pages);
+ }
+}
+
+
+/**
+ * hvvm_map_pages - map...