Deleted Added
full compact
subr_kdb.c (228424) subr_kdb.c (228632)
1/*-
2 * Copyright (c) 2004 The FreeBSD Project
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *

--- 11 unchanged lines hidden (view full) ---

20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2004 The FreeBSD Project
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *

--- 11 unchanged lines hidden (view full) ---

20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
28__FBSDID("$FreeBSD: head/sys/kern/subr_kdb.c 228424 2011-12-11 21:02:01Z avg $");
28__FBSDID("$FreeBSD: head/sys/kern/subr_kdb.c 228632 2011-12-17 15:11:22Z avg $");
29
30#include "opt_kdb.h"
31#include "opt_stack.h"
32
33#include <sys/param.h>
34#include <sys/systm.h>
29
30#include "opt_kdb.h"
31#include "opt_stack.h"
32
33#include <sys/param.h>
34#include <sys/systm.h>
35#include <sys/cons.h>
35#include <sys/kdb.h>
36#include <sys/kernel.h>
37#include <sys/malloc.h>
38#include <sys/pcpu.h>
39#include <sys/proc.h>
40#include <sys/sbuf.h>
41#include <sys/smp.h>
42#include <sys/stack.h>

--- 574 unchanged lines hidden (view full) ---

617 kdb_frame = tf;
618
619 /* Let MD code do its thing first... */
620 kdb_cpu_trap(type, code);
621
622 makectx(tf, &kdb_pcb);
623 kdb_thr_select(curthread);
624
36#include <sys/kdb.h>
37#include <sys/kernel.h>
38#include <sys/malloc.h>
39#include <sys/pcpu.h>
40#include <sys/proc.h>
41#include <sys/sbuf.h>
42#include <sys/smp.h>
43#include <sys/stack.h>

--- 574 unchanged lines hidden (view full) ---

618 kdb_frame = tf;
619
620 /* Let MD code do its thing first... */
621 kdb_cpu_trap(type, code);
622
623 makectx(tf, &kdb_pcb);
624 kdb_thr_select(curthread);
625
626 cngrab();
627
625 for (;;) {
626 handled = be->dbbe_trap(type, code);
627 if (be == kdb_dbbe)
628 break;
629 be = kdb_dbbe;
630 if (be == NULL || be->dbbe_trap == NULL)
631 break;
632 printf("Switching to %s back-end\n", be->dbbe_name);
633 }
634
628 for (;;) {
629 handled = be->dbbe_trap(type, code);
630 if (be == kdb_dbbe)
631 break;
632 be = kdb_dbbe;
633 if (be == NULL || be->dbbe_trap == NULL)
634 break;
635 printf("Switching to %s back-end\n", be->dbbe_name);
636 }
637
638 cnungrab();
639
635 kdb_active--;
636
637#ifdef SMP
638 if (did_stop_cpus)
639 restart_cpus(stopped_cpus);
640#endif
641
642 intr_restore(intr);
643
644 return (handled);
645}
640 kdb_active--;
641
642#ifdef SMP
643 if (did_stop_cpus)
644 restart_cpus(stopped_cpus);
645#endif
646
647 intr_restore(intr);
648
649 return (handled);
650}