Pending MFC Reminder [cvs commit: src/sys/amd64/amd64
cpu_switch.S genassym.c src/sys/amd64/ia32 ia32_signal.c
src/sys/amd64/include pcb.h src/sys/amd64/linux32 linux32_machdep.c]
Kostik Belousov
kostikbel at gmail.com
Thu Aug 14 11:00:12 UTC 2008
On Wed, Aug 13, 2008 at 03:48:37PM -0400, John Baldwin wrote:
> On Wednesday 13 August 2008 09:42:10 am Kostik Belousov wrote:
> > On Wed, Aug 13, 2008 at 12:22:12AM +0000, MFC Notification Service wrote:
> > > Dear Konstantin Belousov,
> > >
> > > As you have requested, I would like to notify you that you have
> > > committed a change that may be MFC'ed now, as a testing period
> > > specified at the time of that commit is over.
> > >
> > > For reference purposes following is a copy of your original
> > > commit message.
> > >
> > > Regards,
> > >
> > > Maxim "MFC Reminder" Sobolev
> > > P.S. Please contact Maxim Sobolev <sobomax at FreeBSD.org> if you
> > > believe that you received this message due to an error.
> > >
> > > kib 2008-07-30 11:30:55 UTC
> > >
> > > FreeBSD src repository
> > >
> > > Modified files:
> > > sys/amd64/amd64 cpu_switch.S genassym.c
> > > sys/amd64/ia32 ia32_signal.c
> > > sys/amd64/include pcb.h
> > > sys/amd64/linux32 linux32_machdep.c
> > > Log:
> > > SVN rev 180992 on 2008-07-30 11:30:55Z by kib
> > >
> > > Bring back the save/restore of the %ds, %es, %fs and %gs registers for
> > > the 32bit images on amd64.
> > >
> > > Change the semantic of the PCB_32BIT pcb flag to request the context
> > > switch code to operate on the segment registers. Its previous meaning
> > > of saving or restoring the %gs base offset is assigned to the new
> > > PCB_GS32BIT flag.
> > >
> > > FreeBSD 32bit image activator sets the PCB_32BIT flag, while Linux 32bit
> > > emulation sets PCB_32BIT | PCB_GS32BIT.
> > >
> > > Reviewed by: peter
> > > MFC after: 2 weeks
> > >
> > > Revision Changes Path
> > > 1.162 +29 -18 src/sys/amd64/amd64/cpu_switch.S
> > > 1.169 +1 -0 src/sys/amd64/amd64/genassym.c
> > > 1.18 +1 -1 src/sys/amd64/ia32/ia32_signal.c
> > > 1.65 +1 -0 src/sys/amd64/include/pcb.h
> > > 1.47 +1 -1 src/sys/amd64/linux32/linux32_machdep.c
> >
> > This appeared to be a not quite trivial MFC to perform. The reason for
> > complication is that the HEAD code for amd64 context switch was changed,
> > in particular by the r177535 by peter at .
> >
> > The r177535 formally requires r177533 for the definition of the
> > TDP_KTHREAD symbol for asm. The definition is needed for optimization
> > of the context switch to the "pure kernel thread", introduced in
> > r173004 that is not MFCed either, and possibly never be.
> >
> > I do not want to backport the code to the old context switch, that would
> > mean a rewrite from scratch. Instead, I merged the r177535 (optimization
> > of context switch by peter@), and commented out corresponding test in
> > the cpu_switch.S for the TDP_KTHREAD.
> >
> > I would be glad to get an opinions on the approach taken, and especially
> > for the wider testing on the RELENG_7/amd64. The problem better be
> > solved for 7.1.
> >
> > The patch:
> > http://people.freebsd.org/~kib/misc/amd64_ctx.releng_7.4.patch
>
> FYI, in 6.x and 7.x there is P_KTHREAD in p_flags that is what TDP_KTHREAD
> replaced.
Thank you for note. I updated the patch to use P_KTHREAD.
http://people.freebsd.org/~kib/misc/amd64_ctx.releng_7.5.patch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-amd64/attachments/20080814/8d1bc106/attachment.pgp
More information about the freebsd-amd64
mailing list