Changeset 0ff03f3 in mainline for kernel/arch


Ignore:
Timestamp:
2011-05-21T16:23:43Z (15 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
235e6c7
Parents:
9d47440
Message:

Allow calling page_mapping_find() with unlocked page tables.

Location:
kernel/arch
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia64/src/mm/tlb.c

    r9d47440 r0ff03f3  
    481481       
    482482        page_table_lock(AS, true);
    483         t = page_mapping_find(AS, va);
     483        t = page_mapping_find(AS, va, true);
    484484        if (t) {
    485485                /*
     
    599599       
    600600        page_table_lock(AS, true);
    601         pte_t *entry = page_mapping_find(AS, va);
     601        pte_t *entry = page_mapping_find(AS, va, true);
    602602        if (entry) {
    603603                /*
     
    651651       
    652652        page_table_lock(AS, true);
    653         t = page_mapping_find(AS, va);
     653        t = page_mapping_find(AS, va, true);
    654654        ASSERT((t) && (t->p));
    655655        if ((t) && (t->p) && (t->w)) {
     
    684684       
    685685        page_table_lock(AS, true);
    686         t = page_mapping_find(AS, va);
     686        t = page_mapping_find(AS, va, true);
    687687        ASSERT((t) && (t->p));
    688688        if ((t) && (t->p) && (t->x)) {
     
    717717       
    718718        page_table_lock(AS, true);
    719         t = page_mapping_find(AS, va);
     719        t = page_mapping_find(AS, va, true);
    720720        ASSERT((t) && (t->p));
    721721        if ((t) && (t->p)) {
     
    753753         */
    754754        page_table_lock(AS, true);
    755         t = page_mapping_find(AS, va);
     755        t = page_mapping_find(AS, va, true);
    756756        ASSERT((t) && (t->p));
    757757        ASSERT(!t->w);
     
    778778       
    779779        page_table_lock(AS, true);
    780         t = page_mapping_find(AS, va);
     780        t = page_mapping_find(AS, va, true);
    781781        ASSERT(t);
    782782       
  • kernel/arch/mips32/src/mm/tlb.c

    r9d47440 r0ff03f3  
    379379         * Check if the mapping exists in page tables.
    380380         */     
    381         pte = page_mapping_find(AS, badvaddr);
     381        pte = page_mapping_find(AS, badvaddr, true);
    382382        if (pte && pte->p && (pte->w || access != PF_ACCESS_WRITE)) {
    383383                /*
     
    401401                         */
    402402                        page_table_lock(AS, true);
    403                         pte = page_mapping_find(AS, badvaddr);
     403                        pte = page_mapping_find(AS, badvaddr, true);
    404404                        ASSERT(pte && pte->p);
    405405                        ASSERT(pte->w || access != PF_ACCESS_WRITE);
  • kernel/arch/ppc32/src/mm/tlb.c

    r9d47440 r0ff03f3  
    6767         * Check if the mapping exists in page tables.
    6868         */
    69         pte_t *pte = page_mapping_find(as, badvaddr);
     69        pte_t *pte = page_mapping_find(as, badvaddr, true);
    7070        if ((pte) && (pte->present)) {
    7171                /*
     
    8989                         */
    9090                        page_table_lock(as, true);
    91                         pte = page_mapping_find(as, badvaddr);
     91                        pte = page_mapping_find(as, badvaddr, true);
    9292                        ASSERT((pte) && (pte->present));
    9393                        *pfrc = 0;
  • kernel/arch/sparc64/src/mm/sun4u/tlb.c

    r9d47440 r0ff03f3  
    207207
    208208        page_table_lock(AS, true);
    209         t = page_mapping_find(AS, page_16k);
     209        t = page_mapping_find(AS, page_16k, true);
    210210        if (t && PTE_EXECUTABLE(t)) {
    211211                /*
     
    275275
    276276        page_table_lock(AS, true);
    277         t = page_mapping_find(AS, page_16k);
     277        t = page_mapping_find(AS, page_16k, true);
    278278        if (t) {
    279279                /*
     
    319319
    320320        page_table_lock(AS, true);
    321         t = page_mapping_find(AS, page_16k);
     321        t = page_mapping_find(AS, page_16k, true);
    322322        if (t && PTE_WRITABLE(t)) {
    323323                /*
  • kernel/arch/sparc64/src/mm/sun4v/tlb.c

    r9d47440 r0ff03f3  
    219219
    220220        page_table_lock(AS, true);
    221         t = page_mapping_find(AS, va);
     221        t = page_mapping_find(AS, va, true);
    222222
    223223        if (t && PTE_EXECUTABLE(t)) {
     
    275275
    276276        page_table_lock(AS, true);
    277         t = page_mapping_find(AS, va);
     277        t = page_mapping_find(AS, va, true);
    278278        if (t) {
    279279                /*
     
    317317
    318318        page_table_lock(AS, true);
    319         t = page_mapping_find(AS, va);
     319        t = page_mapping_find(AS, va, true);
    320320        if (t && PTE_WRITABLE(t)) {
    321321                /*
Note: See TracChangeset for help on using the changeset viewer.