ia64/xen-unstable

changeset 4418:941598a91ed0

bitkeeper revision 1.1236.1.182 (424d1709I2BepRFmTt3ZX8gxYVBdrQ)

sync_lazy_execstate functions are now all arch-specific. We may want
to finetune their behaviour later.
Signed-off-by: Keir Fraser <keir@xensource.com>
author kaf24@firebug.cl.cam.ac.uk
date Fri Apr 01 09:40:25 2005 +0000 (2005-04-01)
parents 5fbc250ab25b
children d1b9f9da04c2
files xen/arch/ia64/xenmisc.c xen/arch/x86/domain.c xen/include/xen/sched.h
line diff
     1.1 --- a/xen/arch/ia64/xenmisc.c	Fri Apr 01 09:23:54 2005 +0000
     1.2 +++ b/xen/arch/ia64/xenmisc.c	Fri Apr 01 09:40:25 2005 +0000
     1.3 @@ -54,6 +54,9 @@ platform_is_hp_ski(void)
     1.4  
     1.5  /* calls in xen/common code that are unused on ia64 */
     1.6  
     1.7 +void sync_lazy_execstate_cpuset(unsigned long cpuset) {}
     1.8 +void sync_lazy_execstate_all(void) {}
     1.9 +
    1.10  int grant_table_create(struct domain *d) { return 0; }
    1.11  void grant_table_destroy(struct domain *d)
    1.12  {
     2.1 --- a/xen/arch/x86/domain.c	Fri Apr 01 09:23:54 2005 +0000
     2.2 +++ b/xen/arch/x86/domain.c	Fri Apr 01 09:40:25 2005 +0000
     2.3 @@ -864,6 +864,16 @@ int __sync_lazy_execstate(void)
     2.4      return 1;
     2.5  }
     2.6  
     2.7 +void sync_lazy_execstate_cpuset(unsigned long cpuset)
     2.8 +{
     2.9 +    flush_tlb_mask(cpuset);
    2.10 +}
    2.11 +
    2.12 +void sync_lazy_execstate_all(void)
    2.13 +{
    2.14 +    flush_tlb_all();
    2.15 +}
    2.16 +
    2.17  unsigned long __hypercall_create_continuation(
    2.18      unsigned int op, unsigned int nr_args, ...)
    2.19  {
     3.1 --- a/xen/include/xen/sched.h	Fri Apr 01 09:23:54 2005 +0000
     3.2 +++ b/xen/include/xen/sched.h	Fri Apr 01 09:40:25 2005 +0000
     3.3 @@ -255,8 +255,8 @@ void domain_sleep(struct exec_domain *d)
     3.4   * Force loading of currently-executing domain state on the specified set
     3.5   * of CPUs. This is used to counteract lazy state switching where required.
     3.6   */
     3.7 -#define sync_lazy_execstate_cpuset(_cpuset) flush_tlb_mask(_cpuset)
     3.8 -#define sync_lazy_execstate_all()           flush_tlb_all()
     3.9 +extern void sync_lazy_execstate_cpuset(unsigned long cpuset);
    3.10 +extern void sync_lazy_execstate_all(void);
    3.11  extern int __sync_lazy_execstate(void);
    3.12  
    3.13  extern void context_switch(