syscons.c (5a66b66324ec6d44e260932d754b2437e9de9499) syscons.c (1b1618fb125865af900298ff5d5a2c2bb77ecd34)
1/*-
2 * Copyright (c) 1992-1998 S�ren Schmidt
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to The DragonFly Project
6 * by Sascha Wildner <saw@online.de>
7 *
8 * Redistribution and use in source and binary forms, with or without

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

2321
2322 /* this is the start of vty switching process... */
2323 ++sc->switch_in_progress;
2324 sc->old_scp = cur_scp;
2325 sc->new_scp = sc_get_stat(SC_DEV(sc, next_scr));
2326 if (sc->new_scp == sc->old_scp) {
2327 sc->switch_in_progress = 0;
2328 /*
1/*-
2 * Copyright (c) 1992-1998 S�ren Schmidt
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to The DragonFly Project
6 * by Sascha Wildner <saw@online.de>
7 *
8 * Redistribution and use in source and binary forms, with or without

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

2321
2322 /* this is the start of vty switching process... */
2323 ++sc->switch_in_progress;
2324 sc->old_scp = cur_scp;
2325 sc->new_scp = sc_get_stat(SC_DEV(sc, next_scr));
2326 if (sc->new_scp == sc->old_scp) {
2327 sc->switch_in_progress = 0;
2328 /*
2329 * XXX wakeup() calls mtx_lock(&sched_lock) which will hang if
2330 * sched_lock is in an in-between state, e.g., when we stop at
2329 * XXX wakeup() locks the scheduler lock which will hang if
2330 * the lock is in an in-between state, e.g., when we stop at
2331 * a breakpoint at fork_exit. It has always been wrong to call
2332 * wakeup() when the debugger is active. In RELENG_4, wakeup()
2333 * is supposed to be locked by splhigh(), but the debugger may
2334 * be invoked at splhigh().
2335 */
2336 if (debugger == 0)
2337 wakeup(&sc->new_scp->smode);
2338 splx(s);

--- 1353 unchanged lines hidden ---
2331 * a breakpoint at fork_exit. It has always been wrong to call
2332 * wakeup() when the debugger is active. In RELENG_4, wakeup()
2333 * is supposed to be locked by splhigh(), but the debugger may
2334 * be invoked at splhigh().
2335 */
2336 if (debugger == 0)
2337 wakeup(&sc->new_scp->smode);
2338 splx(s);

--- 1353 unchanged lines hidden ---