Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Dec 2010 17:41:14 +0000 (UTC)
From:      Colin Percival <cperciva@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/i386/i386 sys_machdep.c
Message-ID:  <201012311741.oBVHfSAT046281@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
cperciva    2010-12-31 17:41:14 UTC

  FreeBSD src repository

  Modified files:
    sys/i386/i386        sys_machdep.c 
  Log:
  SVN rev 216846 on 2010-12-31 17:41:14Z by cperciva
  
  Make i386_set_ldt work on i386/XEN, step 4/5.
  
  Use xen_update_descriptor to update the LDT rather than bcopy.  Under Xen,
  pages used for holding LDTs must be read-only, so we can't make the change
  ourselves.
  
  Ths obvious alternative of "remap the page read-write, make the change, then
  map it read-only again" doesn't work since Xen won't allow an LDT page to be
  remapped as R/W.  An arguably better solution is used by NetBSD: They don't
  modify LDTs in-place at all, but instead copy the entire LDT, modify the new
  version, then atomically swap.
  
  MFC after:      3 days
  
  Revision  Changes    Path
  1.122     +8 -4      src/sys/i386/i386/sys_machdep.c



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