Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Dec 1996 11:02:06 +0800
From:      Peter Wemm <peter@spinner.dialix.com>
To:        Peter Wemm <peter@freefall.freebsd.org>
Cc:        freebsd-smp@freefall.freebsd.org
Subject:   Re: cvs commit: sys/i386/isa vector.s 
Message-ID:  <199612040302.LAA00443@spinner.DIALix.COM>
In-Reply-To: Your message of "Tue, 03 Dec 1996 18:47:00 PST." <199612040247.SAA00731@freefall.freebsd.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
Peter Wemm wrote:
> peter       96/12/03 18:47:00
> 
>   Modified:    i386/isa  vector.s
>   Log:
>   Fix IPI_INTR handler code.  It was not setting %ds with the kernel
>   selector, so if it took an IPI while in user mode, it got a GPF when
>   trying to access kernel data.  (%cs is set by the hardware)

I'm not sure why this used to work before..  It should never have..  I
somehow suspect that this might be somehow related to the SMP_AUTOSTART
code that is now disabled.  I suspect all the tests were done while
it was unconditionally active.  This might be a clue as to what was going
wrong with the code..  It looks like %ds was always set to the kernel
data segment selector, even while in user mode on both cpu's.  This
would have been rather bad if so..  I have no idea how this could have
been caused though.

Cheers,
-Peter



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612040302.LAA00443>