module.c (11e4afb49b7fa1fc8e1ffd850c1806dd86a08204) | module.c (dff9d3c215251022dd8bb3823c9f75edb4b63fe9) |
---|---|
1/* Kernel module help for sparc64. 2 * 3 * Copyright (C) 2001 Rusty Russell. 4 * Copyright (C) 2002 David S. Miller. 5 */ 6 7#include <linux/moduleloader.h> 8#include <linux/kernel.h> --- 4 unchanged lines hidden (view full) --- 13#include <linux/string.h> 14#include <linux/ctype.h> 15#include <linux/mm.h> 16 17#include <asm/processor.h> 18#include <asm/spitfire.h> 19 20#ifdef CONFIG_SPARC64 | 1/* Kernel module help for sparc64. 2 * 3 * Copyright (C) 2001 Rusty Russell. 4 * Copyright (C) 2002 David S. Miller. 5 */ 6 7#include <linux/moduleloader.h> 8#include <linux/kernel.h> --- 4 unchanged lines hidden (view full) --- 13#include <linux/string.h> 14#include <linux/ctype.h> 15#include <linux/mm.h> 16 17#include <asm/processor.h> 18#include <asm/spitfire.h> 19 20#ifdef CONFIG_SPARC64 |
21 22#include <linux/jump_label.h> 23 |
|
21static void *module_map(unsigned long size) 22{ 23 struct vm_struct *area; 24 25 size = PAGE_ALIGN(size); 26 if (!size || size > MODULES_LEN) 27 return NULL; 28 --- 193 unchanged lines hidden (view full) --- 222 return 0; 223} 224 225#ifdef CONFIG_SPARC64 226int module_finalize(const Elf_Ehdr *hdr, 227 const Elf_Shdr *sechdrs, 228 struct module *me) 229{ | 24static void *module_map(unsigned long size) 25{ 26 struct vm_struct *area; 27 28 size = PAGE_ALIGN(size); 29 if (!size || size > MODULES_LEN) 30 return NULL; 31 --- 193 unchanged lines hidden (view full) --- 225 return 0; 226} 227 228#ifdef CONFIG_SPARC64 229int module_finalize(const Elf_Ehdr *hdr, 230 const Elf_Shdr *sechdrs, 231 struct module *me) 232{ |
233 /* make jump label nops */ 234 jump_label_apply_nops(me); 235 |
|
230 /* Cheetah's I-cache is fully coherent. */ 231 if (tlb_type == spitfire) { 232 unsigned long va; 233 234 flushw_all(); 235 for (va = 0; va < (PAGE_SIZE << 1); va += 32) 236 spitfire_put_icache_tag(va, 0x0); 237 __asm__ __volatile__("flush %g6"); --- 16 unchanged lines hidden --- | 236 /* Cheetah's I-cache is fully coherent. */ 237 if (tlb_type == spitfire) { 238 unsigned long va; 239 240 flushw_all(); 241 for (va = 0; va < (PAGE_SIZE << 1); va += 32) 242 spitfire_put_icache_tag(va, 0x0); 243 __asm__ __volatile__("flush %g6"); --- 16 unchanged lines hidden --- |