Changeset f8ddd17 in mainline for kernel/arch/sparc64/src/mm/page.c


Ignore:
Timestamp:
2006-12-09T20:20:50Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b82a13c
Parents:
9ab9c2ec
Message:

Rework support for virtually indexed cache.
Instead of repeatedly flushing the data cache, which was a huge overkill, refuse to create an illegal address alias
in the kernel (again) and allocate appropriate page color in userspace instead. Extend the detection also to
SYS_PHYSMEM_MAP syscall.

Add support for tracking physical memory areas mappable by SYS_PHYSMEM_MAP.

Lots of coding style changes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc64/src/mm/page.c

    r9ab9c2ec rf8ddd17  
    7474                for (i = 0; i < bsp_locked_dtlb_entries; i++) {
    7575                        dtlb_insert_mapping(bsp_locked_dtlb_entry[i].virt_page,
    76                                 bsp_locked_dtlb_entry[i].phys_page, bsp_locked_dtlb_entry[i].pagesize_code,
    77                                 true, false);
     76                                bsp_locked_dtlb_entry[i].phys_page,
     77                                bsp_locked_dtlb_entry[i].pagesize_code, true,
     78                                false);
    7879                }
    7980#endif 
     
    152153                 * Second, save the information about the mapping for APs.
    153154                 */
    154                 bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].virt_page = virtaddr + i*sizemap[order].increment;
    155                 bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].phys_page = physaddr + i*sizemap[order].increment;
    156                 bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].pagesize_code = sizemap[order].pagesize_code;
     155                bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].virt_page =
     156                        virtaddr + i*sizemap[order].increment;
     157                bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].phys_page =
     158                        physaddr + i*sizemap[order].increment;
     159                bsp_locked_dtlb_entry[bsp_locked_dtlb_entries].pagesize_code =
     160                        sizemap[order].pagesize_code;
    157161                bsp_locked_dtlb_entries++;
    158162#endif
Note: See TracChangeset for help on using the changeset viewer.