Changeset bfb87df in mainline for arch/ia32


Ignore:
Timestamp:
2006-02-09T17:02:36Z (20 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
8f00329
Parents:
874878a
Message:

Remove WAKEUP_IPI stuff.

Make it possible to use PAGE_GLOBAL on ia32, amd64 and mips32.
Make ia32 and amd64 map the kernel using PAGE_GLOBAL.

Location:
arch/ia32
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/include/interrupt.h

    r874878a rbfb87df  
    6060#define VECTOR_SYSCALL                  (IVT_FREEBASE+0)
    6161#define VECTOR_TLB_SHOOTDOWN_IPI        (IVT_FREEBASE+1)
    62 #define VECTOR_WAKEUP_IPI               (IVT_FREEBASE+2)
    6362
    6463extern void (* disable_irqs_function)(__u16 irqmask);
     
    7372extern void syscall(int n, void *stack);
    7473extern void tlb_shootdown_ipi(int n, void *stack);
    75 extern void wakeup_ipi(int n, void *stack);
    7674
    7775extern void trap_virtual_enable_irqs(__u16 irqmask);
  • arch/ia32/include/mm/page.h

    r874878a rbfb87df  
    8686        unsigned accessed : 1;
    8787        unsigned dirty : 1;
    88         unsigned : 2;
     88        unsigned pat : 1;
     89        unsigned global : 1;
    8990        unsigned avl : 3;
    9091        unsigned frame_address : 20;
     
    101102                1<<PAGE_READ_SHIFT |
    102103                p->writeable<<PAGE_WRITE_SHIFT |
    103                 1<<PAGE_EXEC_SHIFT
     104                1<<PAGE_EXEC_SHIFT |
     105                p->global<<PAGE_GLOBAL_SHIFT
    104106        );
    105107}
     
    113115        p->uaccessible = (flags & PAGE_USER) != 0;
    114116        p->writeable = (flags & PAGE_WRITE) != 0;
     117        p->global = (flags & PAGE_GLOBAL) != 0;
    115118}
    116119
  • arch/ia32/src/ia32.c

    r874878a rbfb87df  
    6666                exc_register(VECTOR_TLB_SHOOTDOWN_IPI, "tlb_shootdown",
    6767                             tlb_shootdown_ipi);
    68                 exc_register(VECTOR_WAKEUP_IPI, "wakeup_ipi", wakeup_ipi);
    6968                #endif /* CONFIG_SMP */
    7069        }
  • arch/ia32/src/interrupt.c

    r874878a rbfb87df  
    128128}
    129129
    130 void wakeup_ipi(int n, void *stack)
    131 {
    132         trap_virtual_eoi();
    133 }
    134 
    135130void trap_virtual_enable_irqs(__u16 irqmask)
    136131{
  • arch/ia32/src/mm/page.c

    r874878a rbfb87df  
    4646{
    4747        __address cur;
     48        int flags;
    4849
    4950        if (config.cpu_active == 1) {
     
    5354                 * PA2KA(identity) mapping for all frames until last_frame.
    5455                 */
    55                 for (cur = 0; cur < last_frame; cur += FRAME_SIZE)
    56                         page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, PAGE_CACHEABLE);
     56                for (cur = 0; cur < last_frame; cur += FRAME_SIZE) {
     57                        flags = PAGE_CACHEABLE;
     58                        if ((PA2KA(cur) >= config.base) && (PA2KA(cur) < config.base + config.kernel_size))
     59                                flags |= PAGE_GLOBAL;
     60                        page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, flags);
     61                }
    5762
    5863                exc_register(14, "page_fault", page_fault);
Note: See TracChangeset for help on using the changeset viewer.