lkml.org 
[lkml]   [2005]   [Aug]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: [RFC] Demand faulting for large pages
    Date
    Adam Litke wrote on Friday, August 05, 2005 8:22 AM
    > +int hugetlb_pte_fault(struct mm_struct *mm, struct vm_area_struct *vma,
    > + unsigned long address, int write_access)
    > +{
    > + int ret = VM_FAULT_MINOR;
    > + unsigned long idx;
    > + pte_t *pte;
    > + struct page *page;
    > + struct address_space *mapping;
    > +
    > + WARN_ON(!is_vm_hugetlb_page(vma));

    Spurious WARN_ON. Calls to hugetlb_pte_fault() is conditioned upon
    if (is_vm_hugetlb_page(vma))



    > +int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
    > + unsigned long address, int write_access)
    > +{
    > + ....
    > + if (pte_none(*ptep))
    > + rc = hugetlb_pte_fault(mm, vma, address, write_access);
    > +}

    Broken here. Return VM_FAULT_SIGBUS when *pte is present?? Why
    can't you move all the logic into hugetlb_pte_fault and simply call
    it directly from handle_mm_fault?

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-08-05 23:45    [W:0.024 / U:1.000 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site