Whamcloud - gitweb
Fix lov stripe offset calculations.
[fs/lustre-release.git] / lustre / patches / patch-2.4.18-um
1 --- lum-pristine/arch/um/kernel/mem.c   Mon Aug 12 11:05:20 2002
2 +++ lum/arch/um/kernel/mem.c    Thu Aug  1 18:07:35 2002
3 @@ -527,6 +527,22 @@
4         return(phys_mem_map(pte_val(pte)));
5  }
6  
7 +struct page *check_get_page(unsigned long kaddr)
8 +{
9 +        struct page *page;
10 +        struct mem_region *mr;
11 +        unsigned long phys = __pa(kaddr);
12 +       unsigned int n = phys_region_index(phys);
13 +
14 +       if(regions[n] == NULL) 
15 +                return NULL; 
16 +
17 +        mr = regions[n];
18 +        page = (struct page *) mr->mem_map;
19 +       return page + ((phys_addr(phys)) >> PAGE_SHIFT);
20 +}
21 +
22 +
23  struct mem_region *page_region(struct page *page, int *index_out)
24  {
25         int i;
26 @@ -542,12 +558,14 @@
27                         return(region);
28                 }
29         }
30 -       panic("No region found for page");
31 +//panic("No region found for page");
32         return(NULL);
33  }
34  
35  struct page *page_mem_map(struct page *page)
36  {
37 +        if (!page_region(page, NULL))
38 +            return NULL; 
39         return((struct page *) page_region(page, NULL)->mem_map);
40  }
41  
42 @@ -564,7 +582,7 @@
43                    (addr <= region->start + region->len))
44                         return(mk_phys(addr - region->start, i));
45         }
46 -       panic("region_pa : no region for virtual address");
47 +       //panic("region_pa : no region for virtual address");
48         return(0);
49  }
50