atom feed7 messages in org.freebsd.freebsd-currentRE: sys/i386/i386/machdep.c:cpu_idle(...
FromSent OnAttachments
Manfred AntarOct 18, 2000 8:45 pm 
Valentin ChopovOct 19, 2000 5:44 am 
Valentin ChopovOct 20, 2000 1:11 pm 
John BaldwinOct 20, 2000 1:21 pm 
Manfred AntarOct 20, 2000 10:04 pm 
Tor....@fast.noOct 22, 2000 3:31 pm 
John BaldwinOct 23, 2000 3:40 pm 
Subject:RE: sys/i386/i386/machdep.c:cpu_idle() changes causes this Was:
From:John Baldwin (jh@FreeBSD.org)
Date:Oct 23, 2000 3:40:35 pm
List:org.freebsd.freebsd-current

On 22-Oct-00 Tor.@fast.no wrote:

On 20-Oct-00 Valentin Chopov wrote:

I found that if I remove #ifndef SMP /#endif in:

Errr, this doesn't really make sense, and if anything is probably hiding the problem. Also, this change will potentially increase interrupt latency even further on SMP machines.

Interrupts are disabled if Giant is busy in vm_page_zero_idle, thus the idle proc calls mi_switch with interrupts disabled and the process being scheduled starts running with interrupts disabled.

I suggest removing the asm statement from vm_page_zero_idle as a first stage in rewriting vm_page_zero_idle.

Ahhhh.. Thanks for the tip. I didn't know that vm_page_zero_idle was this evil. Yuck. In fact, vm_page_zero_idle() is no longer called with interrupts disabled, so all the interrupt foolishness can go away.

To Unsubscribe: send mail to majo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message