Changeset 5
- Timestamp:
- 09/17/05 18:16:38 (6 years ago)
- Files:
-
- arch/i386/kernel/head.S (modified) (1 diff)
- .config (modified) (1 diff)
- crypto/deflate.c (modified) (1 diff)
- fs/xfs/linux-2.6/kmem.h (modified) (1 diff)
- include/asm-i386/pgtable.h (modified) (1 diff)
- include/asm-i386/segment.h (modified) (2 diffs)
- include/config/module/unload.h (modified) (1 diff)
- include/linux/autoconf.h (modified) (1 diff)
- include/linux/mm.h (modified) (2 diffs)
- include/linux/vmalloc.h (modified) (1 diff)
- mm/vmalloc.c (modified) (6 diffs)
- Module.symvers (modified) (3 diffs)
- .version (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
arch/i386/kernel/head.S
r1 r5 489 489 .quad 0x0040920000000000 /* 0xc8 APM DS data */ 490 490 491 .quad 0x00 00000000000000 /* 0xd0 - unused*/492 .quad 0x00 00000000000000 /* 0xd8 - unused*/493 .quad 0x00 00000000000000 /* 0xe0 - unused*/494 .quad 0x00 00000000000000 /* 0xe8 - unused*/491 .quad 0x00ccba0000000000 /* 0xd0 - Ring 1 CS */ 492 .quad 0x00ccb20000000000 /* 0xd8 - Ring 1 DS */ 493 .quad 0x00cada0000000000 /* 0xe0 - Ring 2 CS */ 494 .quad 0x00cad20000000000 /* 0xe8 - Ring 2 DS */ 495 495 .quad 0x0000000000000000 /* 0xf0 - unused */ 496 496 .quad 0x0000000000000000 /* 0xf8 - GDT entry 31: double-fault TSS */ .config
r4 r5 42 42 # 43 43 CONFIG_MODULES=y 44 # CONFIG_MODULE_UNLOAD is not set 44 CONFIG_MODULE_UNLOAD=y 45 # CONFIG_MODULE_FORCE_UNLOAD is not set 45 46 CONFIG_OBSOLETE_MODPARM=y 46 47 # CONFIG_MODVERSIONS is not set crypto/deflate.c
r1 r5 77 77 stream->workspace = __vmalloc(zlib_deflate_workspacesize(), 78 78 deflate_gfp()|__GFP_HIGHMEM, 79 PAGE_KERNEL );79 PAGE_KERNEL,0); 80 80 if (!stream->workspace ) { 81 81 ret = -ENOMEM; fs/xfs/linux-2.6/kmem.h
r1 r5 114 114 if (unlikely(MAX_SLAB_SIZE < size)) 115 115 /* Avoid doing filesystem sensitive stuff to get this */ 116 return __vmalloc(size, kmem_flags_convert(flags), PAGE_KERNEL );116 return __vmalloc(size, kmem_flags_convert(flags), PAGE_KERNEL, 0); 117 117 return kmalloc(size, kmem_flags_convert(flags)); 118 118 } include/asm-i386/pgtable.h
r1 r5 86 86 #define VMALLOC_START (((unsigned long) high_memory + 2*VMALLOC_OFFSET-1) & \ 87 87 ~(VMALLOC_OFFSET-1)) 88 89 #define VMALLOC_START_RING1 0xA0000000 90 #define VMALLOC_END_RING1 0xC0000000 91 92 #define VMALLOC_START_RING2 0x80000000 93 #define VMALLOC_END_RING2 0xA0000000 94 95 88 96 #ifdef CONFIG_HIGHMEM 89 97 # define VMALLOC_END (PKMAP_BASE-2*PAGE_SIZE) include/asm-i386/segment.h
r1 r5 39 39 * 25 - APM BIOS support 40 40 * 41 * 26 - unused42 * 27 - unused43 * 28 - unused44 * 29 - unused41 * 26 - *NEW* ring 1 driver code segment 42 * 27 - *NEW* ring 1 driver data segment 43 * 28 - *NEW* ring 2 driver code segment 44 * 29 - *NEW* ring 2 driver data segment 45 45 * 30 - unused 46 46 * 31 - TSS for double fault handler … … 65 65 #define GDT_ENTRY_KERNEL_DS (GDT_ENTRY_KERNEL_BASE + 1) 66 66 #define __KERNEL_DS (GDT_ENTRY_KERNEL_DS * 8) 67 68 #define GDT_ENTRY_DRIVER_BASE 26 69 70 #define GDT_ENTRY_RING1_CS (GDT_ENTRY_DRIVER_BASE + 0) 71 #define __RING1_CS (GDT_ENTRY_RING1_CS * 8) 72 73 #define GDT_ENTRY_RING1_DS (GDT_ENTRY_DRIVER_BASE + 1) 74 #define __RING1_DS (GDT_ENTRY_RING1_DS * 8) 75 76 #define GDT_ENTRY_RING2_CS (GDT_ENTRY_DRIVER_BASE + 2) 77 #define __RING2_CS (GDT_ENTRY_RING2_CS * 8) 78 79 #define GDT_ENTRY_RING2_DS (GDT_ENTRY_DRIVER_BASE + 3) 80 #define __RING2_DS (GDT_ENTRY_RING2_DS * 8) 67 81 68 82 #define GDT_ENTRY_TSS (GDT_ENTRY_KERNEL_BASE + 4) include/config/module/unload.h
r1 r5 1 # undef CONFIG_MODULE_UNLOAD1 #define CONFIG_MODULE_UNLOAD 1 include/linux/autoconf.h
r4 r5 43 43 */ 44 44 #define CONFIG_MODULES 1 45 #undef CONFIG_MODULE_UNLOAD 45 #define CONFIG_MODULE_UNLOAD 1 46 #undef CONFIG_MODULE_FORCE_UNLOAD 46 47 #define CONFIG_OBSOLETE_MODPARM 1 47 48 #undef CONFIG_MODVERSIONS include/linux/mm.h
r1 r5 136 136 #define VM_NONLINEAR 0x00800000 /* Is non-linear (remap_file_pages) */ 137 137 138 // NEW FLAGS FOR vmalloc() 139 #define VMALLOC_RING1 0x01000000 //request va between 2.5GB-3GB 140 #define VMALLOC_RING2 0x02000000 //request va between 2GB-2.5GB 141 138 142 #ifndef VM_STACK_DEFAULT_FLAGS /* arch can override this */ 139 143 #define VM_STACK_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS … … 151 155 #define VM_SequentialReadHint(v) ((v)->vm_flags & VM_SEQ_READ) 152 156 #define VM_RandomReadHint(v) ((v)->vm_flags & VM_RAND_READ) 157 153 158 154 159 /* include/linux/vmalloc.h
r1 r5 25 25 extern void *vmalloc(unsigned long size); 26 26 extern void *vmalloc_32(unsigned long size); 27 extern void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot );27 extern void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot, unsigned long flags); 28 28 extern void vfree(void *addr); 29 29 mm/vmalloc.c
r1 r5 245 245 struct vm_struct *get_vm_area(unsigned long size, unsigned long flags) 246 246 { 247 return __get_vm_area(size, flags, VMALLOC_START, VMALLOC_END); 247 if (flags & VMALLOC_RING1) 248 return __get_vm_area(size, flags, VMALLOC_START_RING1, VMALLOC_END_RING1); 249 else if (flags & VMALLOC_RING2) 250 return __get_vm_area(size, flags, VMALLOC_START_RING2, VMALLOC_END_RING2); 251 else 252 return __get_vm_area(size, flags, VMALLOC_START, VMALLOC_END); 248 253 } 249 254 … … 380 385 381 386 EXPORT_SYMBOL(vmap); 382 383 /** 387 /* 384 388 * __vmalloc - allocate virtually contiguous memory 385 389 * … … 392 396 * kernel virtual space, using a pagetable protection of @prot. 393 397 */ 394 void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot )398 void *__vmalloc(unsigned long size, int gfp_mask, pgprot_t prot, unsigned long flags) 395 399 { 396 400 struct vm_struct *area; … … 402 406 return NULL; 403 407 404 area = get_vm_area(size, VM_ALLOC );408 area = get_vm_area(size, VM_ALLOC | flags); 405 409 if (!area) 406 410 return NULL; … … 451 455 void *vmalloc(unsigned long size) 452 456 { 453 return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL); 454 } 457 return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL, 0); 458 } 459 455 460 456 461 EXPORT_SYMBOL(vmalloc); … … 466 471 void *vmalloc_32(unsigned long size) 467 472 { 468 return __vmalloc(size, GFP_KERNEL, PAGE_KERNEL );473 return __vmalloc(size, GFP_KERNEL, PAGE_KERNEL, 0); 469 474 } 470 475 Module.symvers
r4 r5 171 171 0x00000000 elv_remove_request vmlinux 172 172 0x00000000 rpc_unlink net/sunrpc/sunrpc 173 0x00000000 module_refcount vmlinux 173 174 0x00000000 console_unblank vmlinux 174 175 0x00000000 SELECT_DRIVE vmlinux … … 1628 1629 0x00000000 xprt_udp_slot_table_entries net/sunrpc/sunrpc 1629 1630 0x00000000 tcp_protocol vmlinux 1631 0x00000000 symbol_put_addr vmlinux 1630 1632 0x00000000 i2c_smbus_read_word_data drivers/i2c/i2c-core 1631 1633 0x00000000 usb_buffer_unmap vmlinux … … 1865 1867 0x00000000 log_wait_commit vmlinux 1866 1868 0x00000000 blkdev_open vmlinux 1869 0x00000000 __symbol_put vmlinux 1867 1870 0x00000000 get_zeroed_page vmlinux 1868 1871 0x00000000 input_close_device vmlinux .version
r4 r5 1 1 01 12
