3 #if defined I386 || defined X86_64 || defined X32
8 print_user_desc(struct tcb *tcp, long addr)
10 struct user_desc desc;
12 if (umove(tcp, addr, &desc) < 0) {
18 tprintf("{entry_number:%d, ...}", desc.entry_number);
22 tprintf("{entry_number:%d, "
29 "seg_not_present:%d, "
43 sys_modify_ldt(struct tcb *tcp)
46 tprintf("%ld, ", tcp->u_arg[0]);
47 if (tcp->u_arg[1] == 0
48 || tcp->u_arg[2] != sizeof(struct user_desc)) {
49 tprintf("%lx", tcp->u_arg[1]);
51 print_user_desc(tcp, tcp->u_arg[1]);
53 tprintf(", %lu", tcp->u_arg[2]);
59 sys_set_thread_area(struct tcb *tcp)
62 print_user_desc(tcp, tcp->u_arg[0]);
64 struct user_desc desc;
66 if (syserror(tcp) || umove(tcp, tcp->u_arg[0], &desc) < 0) {
67 /* returned entry_number is not available */
69 static char outstr[32];
71 sprintf(outstr, "entry_number:%d", desc.entry_number);
80 sys_get_thread_area(struct tcb *tcp)
84 tprintf("%lx", tcp->u_arg[0]);
86 print_user_desc(tcp, tcp->u_arg[0]);
91 #endif /* I386 || X86_64 || X32 */
93 #if defined(M68K) || defined(MIPS)
95 sys_set_thread_area(struct tcb *tcp)
98 tprintf("%#lx", tcp->u_arg[0]);
106 sys_get_thread_area(struct tcb *tcp)