| tag | line | file | source code |
| tsk | 77 | include/linux/mm.h | extern unsigned long put_dirty_page(struct task_struct * tsk,unsigned long page, |
| tsk | 80 | include/linux/mm.h | extern void free_page_tables(struct task_struct * tsk); |
| tsk | 81 | include/linux/mm.h | extern void clear_page_tables(struct task_struct * tsk); |
| tsk | 89 | include/linux/mm.h | struct task_struct *tsk, unsigned long user_esp); |
| tsk | 91 | include/linux/mm.h | struct task_struct *tsk, unsigned long user_esp); |
| tsk | 86 | kernel/ptrace.c | static unsigned long get_long(struct task_struct * tsk, |
| tsk | 92 | kernel/ptrace.c | page = tsk->tss.cr3 + ((addr >> 20) & 0xffc); |
| tsk | 100 | kernel/ptrace.c | do_no_page(0,addr,tsk,0); |
| tsk | 114 | kernel/ptrace.c | static void put_long(struct task_struct * tsk, unsigned long addr, |
| tsk | 120 | kernel/ptrace.c | page = tsk->tss.cr3 + ((addr >> 20) & 0xffc); |
| tsk | 130 | kernel/ptrace.c | do_no_page(0,addr,tsk,0); |
| tsk | 134 | kernel/ptrace.c | do_wp_page(0,addr,tsk,0); |
| tsk | 146 | kernel/ptrace.c | static int read_long(struct task_struct * tsk, unsigned long addr, |
| tsk | 154 | kernel/ptrace.c | low = get_long(tsk,addr & 0xfffffffc); |
| tsk | 155 | kernel/ptrace.c | high = get_long(tsk,(addr+4) & 0xfffffffc); |
| tsk | 172 | kernel/ptrace.c | *result = get_long(tsk,addr); |
| tsk | 180 | kernel/ptrace.c | static int write_long(struct task_struct * tsk, unsigned long addr, |
| tsk | 188 | kernel/ptrace.c | low = get_long(tsk,addr & 0xfffffffc); |
| tsk | 189 | kernel/ptrace.c | high = get_long(tsk,(addr+4) & 0xfffffffc); |
| tsk | 213 | kernel/ptrace.c | put_long(tsk,addr & 0xfffffffc,low); |
| tsk | 214 | kernel/ptrace.c | put_long(tsk,(addr+4) & 0xfffffffc,high); |
| tsk | 216 | kernel/ptrace.c | put_long(tsk,addr,data); |
| tsk | 149 | kernel/sys.c | static void mark_screen_rdonly(struct task_struct * tsk) |
| tsk | 154 | kernel/sys.c | if ((tmp = tsk->tss.cr3) != 0) { |
| tsk | 111 | mm/memory.c | void clear_page_tables(struct task_struct * tsk) |
| tsk | 116 | mm/memory.c | if (!tsk) |
| tsk | 118 | mm/memory.c | if (tsk == task[0]) |
| tsk | 120 | mm/memory.c | page_dir = (unsigned long *) tsk->tss.cr3; |
| tsk | 134 | mm/memory.c | void free_page_tables(struct task_struct * tsk) |
| tsk | 140 | mm/memory.c | if (!tsk) |
| tsk | 142 | mm/memory.c | if (tsk == task[0]) { |
| tsk | 146 | mm/memory.c | pg_dir = tsk->tss.cr3; |
| tsk | 151 | mm/memory.c | tsk->tss.cr3 = (unsigned long) swapper_pg_dir; |
| tsk | 152 | mm/memory.c | if (tsk == current) |
| tsk | 153 | mm/memory.c | __asm__ __volatile__("movl %0,%%cr3"::"a" (tsk->tss.cr3)); |
| tsk | 166 | mm/memory.c | int copy_page_tables(struct task_struct * tsk) |
| tsk | 176 | mm/memory.c | tsk->tss.cr3 = new_pg_dir; |
| tsk | 199 | mm/memory.c | free_page_tables(tsk); |
| tsk | 379 | mm/memory.c | static unsigned long put_page(struct task_struct * tsk,unsigned long page,unsigned long address,int wp) |
| tsk | 394 | mm/memory.c | page_table = (unsigned long *) (tsk->tss.cr3 + ((address>>20) & 0xffc)); |
| tsk | 400 | mm/memory.c | oom(tsk); |
| tsk | 423 | mm/memory.c | unsigned long put_dirty_page(struct task_struct * tsk, unsigned long page, unsigned long address) |
| tsk | 433 | mm/memory.c | page_table = (unsigned long *) (tsk->tss.cr3 + ((address>>20) & 0xffc)); |
| tsk | 462 | mm/memory.c | struct task_struct * tsk, unsigned long user_esp) |
| tsk | 468 | mm/memory.c | if (tsk == current && tsk->executable && CODE_SPACE(address, current)) { |
| tsk | 471 | mm/memory.c | send_sig(SIGSEGV, tsk, 1); |
| tsk | 477 | mm/memory.c | pde = tsk->tss.cr3 + ((address>>20) & 0xffc); |
| tsk | 487 | mm/memory.c | send_sig(SIGKILL, tsk, 1); |
| tsk | 503 | mm/memory.c | send_sig(SIGKILL, tsk, 1); |
| tsk | 513 | mm/memory.c | tsk->min_flt++; |
| tsk | 529 | mm/memory.c | oom(tsk); |
| tsk | 542 | mm/memory.c | static void get_empty_page(struct task_struct * tsk, unsigned long address) |
| tsk | 548 | mm/memory.c | oom(tsk); |
| tsk | 551 | mm/memory.c | if (!put_page(tsk,tmp,address,0)) |
| tsk | 563 | mm/memory.c | static int try_to_share(unsigned long address, struct task_struct * tsk, |
| tsk | 573 | mm/memory.c | to_page = tsk->tss.cr3 + ((address>>20) & 0xffc); |
| tsk | 619 | mm/memory.c | static int share_page(struct task_struct * tsk, struct inode * inode, unsigned long address) |
| tsk | 629 | mm/memory.c | if (tsk == *p) |
| tsk | 638 | mm/memory.c | if (try_to_share(address,tsk,*p)) |
| tsk | 647 | mm/memory.c | static unsigned long get_empty_pgtable(struct task_struct * tsk,unsigned long address) |
| tsk | 652 | mm/memory.c | p = (unsigned long *) (tsk->tss.cr3 + ((address >> 20) & 0xffc)); |
| tsk | 673 | mm/memory.c | struct task_struct *tsk, unsigned long user_esp) |
| tsk | 681 | mm/memory.c | page = get_empty_pgtable(tsk,address); |
| tsk | 689 | mm/memory.c | ++tsk->rss; |
| tsk | 691 | mm/memory.c | ++tsk->maj_flt; |
| tsk | 698 | mm/memory.c | if (address < tsk->end_data) { |
| tsk | 699 | mm/memory.c | inode = tsk->executable; |
| tsk | 702 | mm/memory.c | i = tsk->numlibraries; |
| tsk | 704 | mm/memory.c | if (address < tsk->libraries[i].start) |
| tsk | 706 | mm/memory.c | block = address - tsk->libraries[i].start; |
| tsk | 707 | mm/memory.c | if (block >= tsk->libraries[i].length + tsk->libraries[i].bss) |
| tsk | 709 | mm/memory.c | inode = tsk->libraries[i].library; |
| tsk | 710 | mm/memory.c | if (block < tsk->libraries[i].length) |
| tsk | 718 | mm/memory.c | ++tsk->min_flt; |
| tsk | 719 | mm/memory.c | get_empty_page(tsk,address); |
| tsk | 720 | mm/memory.c | if (tsk != current) |
| tsk | 722 | mm/memory.c | if (address < tsk->brk) |
| tsk | 726 | mm/memory.c | send_sig(SIGSEGV,tsk,1); |
| tsk | 729 | mm/memory.c | if (share_page(tsk,inode,address)) { |
| tsk | 730 | mm/memory.c | ++tsk->min_flt; |
| tsk | 733 | mm/memory.c | ++tsk->maj_flt; |
| tsk | 737 | mm/memory.c | put_page(tsk,BAD_PAGE,address,0); |
| tsk | 745 | mm/memory.c | if (share_page(tsk,inode,address)) { |
| tsk | 749 | mm/memory.c | i = address + PAGE_SIZE - tsk->end_data; |
| tsk | 757 | mm/memory.c | if (put_page(tsk,page,address,CODE_SPACE(address, tsk))) |