db_interface.c (70034) | db_interface.c (70861) |
---|---|
1/* 2 * Mach Operating System 3 * Copyright (c) 1991,1990 Carnegie Mellon University 4 * All Rights Reserved. 5 * 6 * Permission to use, copy, modify and distribute this software and its 7 * documentation is hereby granted, provided that both the copyright 8 * notice and this permission notice appear in all copies of the --- 9 unchanged lines hidden (view full) --- 18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 19 * School of Computer Science 20 * Carnegie Mellon University 21 * Pittsburgh PA 15213-3890 22 * 23 * any improvements or extensions that they make and grant Carnegie the 24 * rights to redistribute these changes. 25 * | 1/* 2 * Mach Operating System 3 * Copyright (c) 1991,1990 Carnegie Mellon University 4 * All Rights Reserved. 5 * 6 * Permission to use, copy, modify and distribute this software and its 7 * documentation is hereby granted, provided that both the copyright 8 * notice and this permission notice appear in all copies of the --- 9 unchanged lines hidden (view full) --- 18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 19 * School of Computer Science 20 * Carnegie Mellon University 21 * Pittsburgh PA 15213-3890 22 * 23 * any improvements or extensions that they make and grant Carnegie the 24 * rights to redistribute these changes. 25 * |
26 * $FreeBSD: head/sys/i386/i386/db_interface.c 70034 2000-12-14 23:57:30Z jhb $ | 26 * $FreeBSD: head/sys/i386/i386/db_interface.c 70861 2001-01-10 04:43:51Z jake $ |
27 */ 28 29/* 30 * Interface to new debugger. 31 */ 32#include <sys/param.h> 33#include <sys/systm.h> 34#include <sys/reboot.h> --- 102 unchanged lines hidden (view full) --- 137 ddb_regs.tf_esp = (int)®s->tf_esp; 138 ddb_regs.tf_ss = rss(); 139 } 140 141#ifdef SMP 142#ifdef CPUSTOP_ON_DDBBREAK 143 144#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) | 27 */ 28 29/* 30 * Interface to new debugger. 31 */ 32#include <sys/param.h> 33#include <sys/systm.h> 34#include <sys/reboot.h> --- 102 unchanged lines hidden (view full) --- 137 ddb_regs.tf_esp = (int)®s->tf_esp; 138 ddb_regs.tf_ss = rss(); 139 } 140 141#ifdef SMP 142#ifdef CPUSTOP_ON_DDBBREAK 143 144#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) |
145 db_printf("\nCPU%d stopping CPUs: 0x%08x...", cpuid, other_cpus); | 145 db_printf("\nCPU%d stopping CPUs: 0x%08x...", PCPU_GET(cpuid), 146 PCPU_GET(other_cpus)); |
146#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 147 148 /* We stop all CPUs except ourselves (obviously) */ | 147#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 148 149 /* We stop all CPUs except ourselves (obviously) */ |
149 stop_cpus(other_cpus); | 150 stop_cpus(PCPU_GET(other_cpus)); |
150 151#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) 152 db_printf(" stopped.\n"); 153#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 154 155#endif /* CPUSTOP_ON_DDBBREAK */ 156#endif /* SMP */ 157 --- 8 unchanged lines hidden (view full) --- 166 gdb_handle_exception(&ddb_regs, type, code); 167 db_active--; 168 db_global_jmpbuf_valid = FALSE; 169 170#ifdef SMP 171#ifdef CPUSTOP_ON_DDBBREAK 172 173#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) | 151 152#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) 153 db_printf(" stopped.\n"); 154#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 155 156#endif /* CPUSTOP_ON_DDBBREAK */ 157#endif /* SMP */ 158 --- 8 unchanged lines hidden (view full) --- 167 gdb_handle_exception(&ddb_regs, type, code); 168 db_active--; 169 db_global_jmpbuf_valid = FALSE; 170 171#ifdef SMP 172#ifdef CPUSTOP_ON_DDBBREAK 173 174#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) |
174 db_printf("\nCPU%d restarting CPUs: 0x%08x...", cpuid, stopped_cpus); | 175 db_printf("\nCPU%d restarting CPUs: 0x%08x...", PCPU_GET(cpuid), 176 stopped_cpus); |
175#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 176 177 /* Restart all the CPUs we previously stopped */ | 177#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 178 179 /* Restart all the CPUs we previously stopped */ |
178 if (stopped_cpus != other_cpus && smp_started != 0) { | 180 if (stopped_cpus != PCPU_GET(other_cpus) && smp_started != 0) { |
179 db_printf("whoa, other_cpus: 0x%08x, stopped_cpus: 0x%08x\n", | 181 db_printf("whoa, other_cpus: 0x%08x, stopped_cpus: 0x%08x\n", |
180 other_cpus, stopped_cpus); | 182 PCPU_GET(other_cpus), stopped_cpus); |
181 panic("stop_cpus() failed"); 182 } 183 restart_cpus(stopped_cpus); 184 185#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) 186 db_printf(" restarted.\n"); 187#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 188 --- 140 unchanged lines hidden --- | 183 panic("stop_cpus() failed"); 184 } 185 restart_cpus(stopped_cpus); 186 187#if defined(VERBOSE_CPUSTOP_ON_DDBBREAK) 188 db_printf(" restarted.\n"); 189#endif /* VERBOSE_CPUSTOP_ON_DDBBREAK */ 190 --- 140 unchanged lines hidden --- |