From owner-freebsd-hackers Wed Apr 15 01:41:16 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id BAA05822 for freebsd-hackers-outgoing; Wed, 15 Apr 1998 01:41:16 -0700 (PDT) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from ifi.uio.no (0@ifi.uio.no [129.240.64.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id IAA05811 for ; Wed, 15 Apr 1998 08:41:10 GMT (envelope-from dag-erli@ifi.uio.no) Received: from hrotti.ifi.uio.no (2602@hrotti.ifi.uio.no [129.240.64.15]) by ifi.uio.no (8.8.8/8.8.7/ifi0.2) with ESMTP id KAA04462 for ; Wed, 15 Apr 1998 10:41:09 +0200 (MET DST) Received: (from dag-erli@localhost) by hrotti.ifi.uio.no ; Wed, 15 Apr 1998 10:41:08 +0200 (MET DST) Mime-Version: 1.0 To: hackers@FreeBSD.ORG Subject: syscons.c Organization: Gutteklubben Terrasse / KRST / PUMS / YASMW X-url: http://www.stud.ifi.uio.no/~dag-erli/ X-Stop-Spam: http://www.cauce.org From: dag-erli@ifi.uio.no (Dag-Erling Coidan =?iso-8859-1?Q?Sm=F8rgrav?= ) Date: 15 Apr 1998 10:41:08 +0200 Message-ID: Lines: 40 X-Mailer: Gnus v5.5/Emacs 19.34 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG There was a discussion a while back (jan/feb) about graphical screensavers and changes needed in /sys/i386/isa/syscons.s to support them. AFAIK none of these changes have been committed. I want to commit *one* of them (the most conservative one): slightly change the order in which things are done in scrn_timer.c to prevent the deadlock that arises on wakeup (syscons wants to stop the screensaver but doesn't dare to because the console is in an unknown mode). --- /sys/i386/isa/syscons.c.orig Sat Feb 28 06:16:14 1998 +++ /sys/i386/isa/syscons.c Wed Apr 15 10:39:51 1998 @@ -2226,19 +2226,19 @@ scintr(0); } - /* should we just return ? */ - if ((scp->status&UNKNOWN_MODE) || blink_in_progress || switch_in_progress) { - timeout(scrn_timer, NULL, hz / 10); - splx(s); - return; - } - /* should we stop the screen saver? */ if (panicstr) scrn_time_stamp = mono_time.tv_sec; if (mono_time.tv_sec <= scrn_time_stamp + scrn_blank_time) if (scrn_blanked > 0) stop_scrn_saver(current_saver); + + /* should we just return ? */ + if ((scp->status&UNKNOWN_MODE) || blink_in_progress || switch_in_progress) { + timeout(scrn_timer, NULL, hz / 10); + splx(s); + return; + } scp = cur_console; if (scrn_blanked <= 0) -- fprintf(stderr, "I have a closed mind. It helps keeping the rain out.\n"); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message