[PATCH 0/5 gnumach] More smp progress

2023-02-13 Thread Damien Zammit
This adds a few more things we need for smp.
Per-cpu curr_ipl[] for example.
With these changes compiled for smp and apic,
the kernel fails to boot with -smp {2,4,6,8}
due to the first task getting lost somewhere.

If you boot with $(prompt-task-resume) in grub,
it enters the debugger just before loading the boot task,
but when you continue, it prints "start acpi: " and then sits idle.

I think something could be wrong with the idle threads.

Damien






[PATCH 1/5 gnumach] interrupt.S: Dont change ipl for pmap_update_interrupt

2023-02-13 Thread Damien Zammit
---
 i386/i386at/interrupt.S | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/i386/i386at/interrupt.S b/i386/i386at/interrupt.S
index 1103b1c8..55f4fa0f 100644
--- a/i386/i386at/interrupt.S
+++ b/i386/i386at/interrupt.S
@@ -43,6 +43,9 @@ ENTRY(interrupt)
cmpl$255,%eax   /* was this a spurious intr? */
je  _no_eoi /* if so, just return */
 #endif
+   cmpl$CALL_SINGLE_FUNCTION_BASE,%eax /* was this a SMP call 
single function request? */
+   je  _call_single
+
subl$24,%esp/* Two local variables + 4 parameters */
movl%eax,S_IRQ  /* save irq number */
callspl7/* set ipl */
@@ -58,8 +61,6 @@ ENTRY(interrupt)
movl%eax,12(%esp)   /* address of interrupted registers as 
4th arg */

movlS_IRQ,%eax  /* copy irq number */
-   cmpl$CALL_SINGLE_FUNCTION_BASE,%eax /* was this a SMP call 
single function request? */
-   je  _call_single

shll$2,%eax /* irq * 4 */
movlEXT(iunit)(%eax),%edx   /* get device unit number */
@@ -124,6 +125,5 @@ _no_eoi:
 _call_single:
callEXT(lapic_eoi)  /* lapic EOI before the handler to 
allow extra update */
callEXT(pmap_update_interrupt) /* TODO: Allow other functions */
-   addl$24,%esp
ret
 END(interrupt)
--
2.34.1





[PATCH 2/5 gnumach] pmap: Signal cpu for TLB update if kernel_pmap

2023-02-13 Thread Damien Zammit
---
 i386/intel/pmap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index 0a805e4c..40ddcd6a 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -3013,7 +3013,7 @@ voidsignal_cpus(
cpu_update_needed[which_cpu] = TRUE;
simple_unlock(&update_list_p->lock);

-   if ((cpus_idle & (1 << which_cpu)) == 0)
+   if (((cpus_idle & (1 << which_cpu)) == 0) || (pmap == kernel_pmap))
interrupt_processor(which_cpu);
use_list &= ~(1 << which_cpu);
}
--
2.34.1





[PATCH 3/5 gnumach] Make curr_ipl[] per cpu

2023-02-13 Thread Damien Zammit
---
 i386/i386/cpu_number.h  | 13 ---
 i386/i386/fpu.c |  4 ++--
 i386/i386/ipl.h |  2 +-
 i386/i386/pic.c |  6 +++--
 i386/i386/spl.S | 34 ++---
 i386/i386at/ioapic.c|  7 --
 linux/dev/arch/i386/kernel/irq.c|  4 ++--
 linux/dev/include/asm-i386/system.h |  5 +++--
 x86_64/spl.S| 33 +---
 xen/evt.c   |  7 --
 10 files changed, 67 insertions(+), 48 deletions(-)

diff --git a/i386/i386/cpu_number.h b/i386/i386/cpu_number.h
index b6c3a629..a5658471 100644
--- a/i386/i386/cpu_number.h
+++ b/i386/i386/cpu_number.h
@@ -32,23 +32,18 @@

 #ifNCPUS > 1

-/* More-specific code must define cpu_number() and CPU_NUMBER.  */
 #ifdef __i386__
 #defineCX(addr, reg)   addr(,reg,4)
+#endif
+#ifdef __x86_64__
+#defineCX(addr, reg)   addr(,reg,8)
+#endif

 #defineCPU_NUMBER(reg) \
movl%cs:lapic, reg  ;\
movl%cs:APIC_ID(reg), reg   ;\
shrl$24, reg;\

-
-#endif
-#ifdef __x86_64__
-#defineCX(addr, reg)   addr(,reg,8)
-#warning Missing CPU_NUMBER() for 64 bit
-#define CPU_NUMBER(reg)
-#endif
-
 #ifndef __ASSEMBLER__
 #include "kern/cpu_number.h"
 int cpu_number(void);
diff --git a/i386/i386/fpu.c b/i386/i386/fpu.c
index 36bdb41d..fefe5e49 100644
--- a/i386/i386/fpu.c
+++ b/i386/i386/fpu.c
@@ -60,8 +60,8 @@
 #include 
 #define ASSERT_IPL(L) \
 { \
-  if (curr_ipl != L) { \
- printf("IPL is %d, expected %d\n", curr_ipl, L); \
+  if (curr_ipl[cpu_number()] != L) { \
+ printf("IPL is %d, expected %d\n", curr_ipl[cpu_number()], L); \
  panic("fpu: wrong ipl"); \
   } \
 }
diff --git a/i386/i386/ipl.h b/i386/i386/ipl.h
index 20e7428b..6e59b368 100644
--- a/i386/i386/ipl.h
+++ b/i386/i386/ipl.h
@@ -76,7 +76,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 typedef void (*interrupt_handler_fn)(int);
 extern interrupt_handler_fn ivect[];
 extern int iunit[];
-extern spl_t   curr_ipl;
+extern spl_t   curr_ipl[NCPUS];
 #endif /* __ASSEMBLER__ */
 #endif /* KERNEL */

diff --git a/i386/i386/pic.c b/i386/i386/pic.c
index 4d51a535..2431c838 100644
--- a/i386/i386/pic.c
+++ b/i386/i386/pic.c
@@ -74,7 +74,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #include 
 #include 

-spl_t  curr_ipl;
+spl_t  curr_ipl[NCPUS] = {0};
 intcurr_pic_mask;

 intiunit[NINTR] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
@@ -112,8 +112,10 @@ picinit(void)
/*
** 0. Initialise the current level to match cli()
*/
+   int i;

-   curr_ipl = SPLHI;
+   for (i = 0; i < NCPUS; i++)
+   curr_ipl[i] = SPLHI;
curr_pic_mask = 0;

/*
diff --git a/i386/i386/spl.S b/i386/i386/spl.S
index 215142c9..ee359ca1 100644
--- a/i386/i386/spl.S
+++ b/i386/i386/spl.S
@@ -21,6 +21,7 @@
 #include 
 #include 
 #include 
+#include 

 #if NCPUS > 1
 #define mb lock; addl $0,(%esp)
@@ -46,7 +47,8 @@ lock  orl $1,hyp_shared_info+CPU_PENDING_SEL; /* Yes, 
activate it */ \

 ENTRY(spl0)
mb;
-   movlEXT(curr_ipl),%eax  /* save current ipl */
+   CPU_NUMBER(%edx)
+   movlCX(EXT(curr_ipl),%edx),%eax /* save current ipl */
pushl   %eax
cli /* disable interrupts */
 #ifdef LINUX_DEV
@@ -74,9 +76,10 @@ ENTRY(spl0)
 #endif
cli /* disable interrupts */
 1:
-   cmpl$(SPL0),EXT(curr_ipl)   /* are we at spl0? */
-   je  1f  /* yes, all done */
-   movl$(SPL0),EXT(curr_ipl)   /* set ipl */
+   CPU_NUMBER(%edx)
+   cmpl$(SPL0),CX(EXT(curr_ipl),%edx)  /* are we at spl0? */
+   je  1f  /* yes, all done */
+   movl$(SPL0),CX(EXT(curr_ipl),%edx)  /* set ipl */
 #ifdef MACH_XEN
movlEXT(int_mask)+SPL0*4,%eax
/* get xen mask */
@@ -119,16 +122,17 @@ ENTRY(spl7)
mb;
/* just clear IF */
cli
+   CPU_NUMBER(%edx)
movl$SPL7,%eax
-   xchgl   EXT(curr_ipl),%eax
+   xchgl   CX(EXT(curr_ipl),%edx),%eax
ret

 ENTRY(splx)
movlS_ARG0,%edx /* get ipl */
-
+   CPU_NUMBER(%eax)
 #if (MACH_KDB || MACH_TTD) && !defined(MACH_XEN)
/* First make sure that if we're exitting from ipl7, IF is still 
cleared */
-   cmpl$SPL7,EXT(curr_ipl) /* from ipl7? */
+   cmpl$SPL7,CX(EXT(curr_ipl),%eax)/* from ipl7? */
jne 0f
pushfl
popl%eax
@@ -140,7 +144,8 @@ ENTRY(splx)
 #endif /* (MACH_KDB || MACH_TTD) && !MACH_XEN */
testl   %edx,%edx   /* spl0? */
jz  EXT(spl0)   /* yes, handle specially */
-   cmplEXT(curr_ipl),%edx  /* same

[PATCH 5/5 gnumach] x86_64: Fix broken int_stack_base

2023-02-13 Thread Damien Zammit
---
 x86_64/cswitch.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/x86_64/cswitch.S b/x86_64/cswitch.S
index 1a7471c3..015e884c 100644
--- a/x86_64/cswitch.S
+++ b/x86_64/cswitch.S
@@ -137,7 +137,7 @@ ud2
movqS_ARG2,%rsi /* get its argument */

CPU_NUMBER(%eax)
-   movqEXT(interrupt_stack)(,%eax,8),%rcx  /* point to its 
interrupt stack */
+   movqCX(EXT(int_stack_base),%eax),%rcx   /* point to its 
interrupt stack */
lea INTSTACK_SIZE(%rcx),%rsp/* switch to it (top) */

movq%rax,%rdi   /* push thread */
--
2.34.1





[PATCH 4/5 gnumach] Remove verbose debug printfs

2023-02-13 Thread Damien Zammit
---
 i386/i386/mp_desc.c | 1 -
 i386/i386/smp.c | 1 -
 i386/intel/pmap.c   | 1 -
 3 files changed, 3 deletions(-)

diff --git a/i386/i386/mp_desc.c b/i386/i386/mp_desc.c
index 446fedb5..e6fcbf62 100644
--- a/i386/i386/mp_desc.c
+++ b/i386/i386/mp_desc.c
@@ -199,7 +199,6 @@ cpu_control(int cpu, const int *info, unsigned int count)
 void
 interrupt_processor(int cpu)
 {
-   printf("interrupt cpu %d\n",cpu);
smp_pmap_update(apic_get_cpu_apic_id(cpu));
 }

diff --git a/i386/i386/smp.c b/i386/i386/smp.c
index c6a62958..7441ffbb 100644
--- a/i386/i386/smp.c
+++ b/i386/i386/smp.c
@@ -53,7 +53,6 @@ void smp_pmap_update(unsigned apic_id)

 cpu_intr_save(&flags);

-printf("IPI(%d>%u)\n", cpu_number(), apic_id);
 apic_send_ipi(NO_SHORTHAND, FIXED, PHYSICAL, ASSERT, EDGE, 
CALL_SINGLE_FUNCTION_BASE, apic_id);

 do {
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index 40ddcd6a..0316d15a 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -3054,7 +3054,6 @@ void pmap_update_interrupt(void)
int s;

my_cpu = cpu_number();
-   printf("PMAP(%d)\n", my_cpu);

/*
 *  Exit now if we're idle.  We'll pick up the update request
--
2.34.1





[sr #110199] Cross-building of GNU/Hurd and additional packages

2023-02-13 Thread Ineiev
Update of sr #110199 (project administration):

  Status: In Progress => Need Info  
 Open/Closed:Open => Closed 

___

Follow-up Comment #34:

Some files still lack valid license notices: in particular,
patches/Linux-PAM/hurd_no_setfsuid.diff refers to an absent ./COPYING; if the
license is permissive, it should be included entirely in the covered file.


___

Reply to this item at:

  

___
Message sent via Savannah
https://savannah.nongnu.org/




Re: [PATCH 0/5 gnumach] More smp progress

2023-02-13 Thread Almudena Garcia
Hi:

Have you checked the bound processor that I sent you some days ago? Maybe
it's related

Added to this, you can debug better using gdb

Try with this

El lun., 13 feb. 2023 9:49, Damien Zammit  escribió:

> This adds a few more things we need for smp.
> Per-cpu curr_ipl[] for example.
> With these changes compiled for smp and apic,
> the kernel fails to boot with -smp {2,4,6,8}
> due to the first task getting lost somewhere.
>
> If you boot with $(prompt-task-resume) in grub,
> it enters the debugger just before loading the boot task,
> but when you continue, it prints "start acpi: " and then sits idle.
>
> I think something could be wrong with the idle threads.
>
> Damien
>
>
>
>
>


Re: [PATCH 5/5 gnumach] x86_64: Fix broken int_stack_base

2023-02-13 Thread Samuel Thibault
Applied, thanks!

Damien Zammit, le lun. 13 févr. 2023 08:50:08 +, a ecrit:
> ---
>  x86_64/cswitch.S | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/x86_64/cswitch.S b/x86_64/cswitch.S
> index 1a7471c3..015e884c 100644
> --- a/x86_64/cswitch.S
> +++ b/x86_64/cswitch.S
> @@ -137,7 +137,7 @@ ud2
>   movqS_ARG2,%rsi /* get its argument */
> 
>   CPU_NUMBER(%eax)
> - movqEXT(interrupt_stack)(,%eax,8),%rcx  /* point to its 
> interrupt stack */
> + movqCX(EXT(int_stack_base),%eax),%rcx   /* point to its 
> interrupt stack */
>   lea INTSTACK_SIZE(%rcx),%rsp/* switch to it (top) */
> 
>   movq%rax,%rdi   /* push thread */
> --
> 2.34.1
> 
> 
> 

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.



Re: [PATCH 2/5 gnumach] pmap: Signal cpu for TLB update if kernel_pmap

2023-02-13 Thread Samuel Thibault
Applied, thanks!

Damien Zammit, le lun. 13 févr. 2023 08:49:45 +, a ecrit:
> ---
>  i386/intel/pmap.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
> index 0a805e4c..40ddcd6a 100644
> --- a/i386/intel/pmap.c
> +++ b/i386/intel/pmap.c
> @@ -3013,7 +3013,7 @@ voidsignal_cpus(
>   cpu_update_needed[which_cpu] = TRUE;
>   simple_unlock(&update_list_p->lock);
> 
> - if ((cpus_idle & (1 << which_cpu)) == 0)
> + if (((cpus_idle & (1 << which_cpu)) == 0) || (pmap == kernel_pmap))
>   interrupt_processor(which_cpu);
>   use_list &= ~(1 << which_cpu);
>   }
> --
> 2.34.1
> 
> 
> 

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.



Re: [PATCH 1/5 gnumach] interrupt.S: Dont change ipl for pmap_update_interrupt

2023-02-13 Thread Samuel Thibault
Applied, thanks!

Damien Zammit, le lun. 13 févr. 2023 08:49:39 +, a ecrit:
> ---
>  i386/i386at/interrupt.S | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/i386/i386at/interrupt.S b/i386/i386at/interrupt.S
> index 1103b1c8..55f4fa0f 100644
> --- a/i386/i386at/interrupt.S
> +++ b/i386/i386at/interrupt.S
> @@ -43,6 +43,9 @@ ENTRY(interrupt)
>   cmpl$255,%eax   /* was this a spurious intr? */
>   je  _no_eoi /* if so, just return */
>  #endif
> + cmpl$CALL_SINGLE_FUNCTION_BASE,%eax /* was this a SMP call 
> single function request? */
> + je  _call_single
> +
>   subl$24,%esp/* Two local variables + 4 parameters */
>   movl%eax,S_IRQ  /* save irq number */
>   callspl7/* set ipl */
> @@ -58,8 +61,6 @@ ENTRY(interrupt)
>   movl%eax,12(%esp)   /* address of interrupted registers as 
> 4th arg */
> 
>   movlS_IRQ,%eax  /* copy irq number */
> - cmpl$CALL_SINGLE_FUNCTION_BASE,%eax /* was this a SMP call 
> single function request? */
> - je  _call_single
> 
>   shll$2,%eax /* irq * 4 */
>   movlEXT(iunit)(%eax),%edx   /* get device unit number */
> @@ -124,6 +125,5 @@ _no_eoi:
>  _call_single:
>   callEXT(lapic_eoi)  /* lapic EOI before the handler to 
> allow extra update */
>   callEXT(pmap_update_interrupt) /* TODO: Allow other functions */
> - addl$24,%esp
>   ret
>  END(interrupt)
> --
> 2.34.1
> 
> 
> 

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.



Re: [PATCH 3/5 gnumach] Make curr_ipl[] per cpu

2023-02-13 Thread Samuel Thibault
Applied, thanks!

Damien Zammit, le lun. 13 févr. 2023 08:49:52 +, a ecrit:
> ---
>  i386/i386/cpu_number.h  | 13 ---
>  i386/i386/fpu.c |  4 ++--
>  i386/i386/ipl.h |  2 +-
>  i386/i386/pic.c |  6 +++--
>  i386/i386/spl.S | 34 ++---
>  i386/i386at/ioapic.c|  7 --
>  linux/dev/arch/i386/kernel/irq.c|  4 ++--
>  linux/dev/include/asm-i386/system.h |  5 +++--
>  x86_64/spl.S| 33 +---
>  xen/evt.c   |  7 --
>  10 files changed, 67 insertions(+), 48 deletions(-)
> 
> diff --git a/i386/i386/cpu_number.h b/i386/i386/cpu_number.h
> index b6c3a629..a5658471 100644
> --- a/i386/i386/cpu_number.h
> +++ b/i386/i386/cpu_number.h
> @@ -32,23 +32,18 @@
> 
>  #if  NCPUS > 1
> 
> -/* More-specific code must define cpu_number() and CPU_NUMBER.  */
>  #ifdef __i386__
>  #define  CX(addr, reg)   addr(,reg,4)
> +#endif
> +#ifdef __x86_64__
> +#define  CX(addr, reg)   addr(,reg,8)
> +#endif
> 
>  #define  CPU_NUMBER(reg) \
>   movl%cs:lapic, reg  ;\
>   movl%cs:APIC_ID(reg), reg   ;\
>   shrl$24, reg;\
> 
> -
> -#endif
> -#ifdef __x86_64__
> -#define  CX(addr, reg)   addr(,reg,8)
> -#warning Missing CPU_NUMBER() for 64 bit
> -#define CPU_NUMBER(reg)
> -#endif
> -
>  #ifndef __ASSEMBLER__
>  #include "kern/cpu_number.h"
>  int cpu_number(void);
> diff --git a/i386/i386/fpu.c b/i386/i386/fpu.c
> index 36bdb41d..fefe5e49 100644
> --- a/i386/i386/fpu.c
> +++ b/i386/i386/fpu.c
> @@ -60,8 +60,8 @@
>  #include 
>  #define ASSERT_IPL(L) \
>  { \
> -  if (curr_ipl != L) { \
> -   printf("IPL is %d, expected %d\n", curr_ipl, L); \
> +  if (curr_ipl[cpu_number()] != L) { \
> +   printf("IPL is %d, expected %d\n", curr_ipl[cpu_number()], L); \
> panic("fpu: wrong ipl"); \
>} \
>  }
> diff --git a/i386/i386/ipl.h b/i386/i386/ipl.h
> index 20e7428b..6e59b368 100644
> --- a/i386/i386/ipl.h
> +++ b/i386/i386/ipl.h
> @@ -76,7 +76,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
>  typedef void (*interrupt_handler_fn)(int);
>  extern interrupt_handler_fn ivect[];
>  extern int   iunit[];
> -extern spl_t curr_ipl;
> +extern spl_t curr_ipl[NCPUS];
>  #endif   /* __ASSEMBLER__ */
>  #endif   /* KERNEL */
> 
> diff --git a/i386/i386/pic.c b/i386/i386/pic.c
> index 4d51a535..2431c838 100644
> --- a/i386/i386/pic.c
> +++ b/i386/i386/pic.c
> @@ -74,7 +74,7 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
>  #include 
>  #include 
> 
> -spl_tcurr_ipl;
> +spl_tcurr_ipl[NCPUS] = {0};
>  int  curr_pic_mask;
> 
>  int  iunit[NINTR] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
> @@ -112,8 +112,10 @@ picinit(void)
>   /*
>   ** 0. Initialise the current level to match cli()
>   */
> + int i;
> 
> - curr_ipl = SPLHI;
> + for (i = 0; i < NCPUS; i++)
> + curr_ipl[i] = SPLHI;
>   curr_pic_mask = 0;
> 
>   /*
> diff --git a/i386/i386/spl.S b/i386/i386/spl.S
> index 215142c9..ee359ca1 100644
> --- a/i386/i386/spl.S
> +++ b/i386/i386/spl.S
> @@ -21,6 +21,7 @@
>  #include 
>  #include 
>  #include 
> +#include 
> 
>  #if NCPUS > 1
>  #define mb lock; addl $0,(%esp)
> @@ -46,7 +47,8 @@ lockorl $1,hyp_shared_info+CPU_PENDING_SEL; /* 
> Yes, activate it */ \
> 
>  ENTRY(spl0)
>   mb;
> - movlEXT(curr_ipl),%eax  /* save current ipl */
> + CPU_NUMBER(%edx)
> + movlCX(EXT(curr_ipl),%edx),%eax /* save current ipl */
>   pushl   %eax
>   cli /* disable interrupts */
>  #ifdef LINUX_DEV
> @@ -74,9 +76,10 @@ ENTRY(spl0)
>  #endif
>   cli /* disable interrupts */
>  1:
> - cmpl$(SPL0),EXT(curr_ipl)   /* are we at spl0? */
> - je  1f  /* yes, all done */
> - movl$(SPL0),EXT(curr_ipl)   /* set ipl */
> + CPU_NUMBER(%edx)
> + cmpl$(SPL0),CX(EXT(curr_ipl),%edx)  /* are we at spl0? */
> + je  1f  /* yes, all done */
> + movl$(SPL0),CX(EXT(curr_ipl),%edx)  /* set ipl */
>  #ifdef MACH_XEN
>   movlEXT(int_mask)+SPL0*4,%eax
>   /* get xen mask */
> @@ -119,16 +122,17 @@ ENTRY(spl7)
>   mb;
>   /* just clear IF */
>   cli
> + CPU_NUMBER(%edx)
>   movl$SPL7,%eax
> - xchgl   EXT(curr_ipl),%eax
> + xchgl   CX(EXT(curr_ipl),%edx),%eax
>   ret
> 
>  ENTRY(splx)
>   movlS_ARG0,%edx /* get ipl */
> -
> + CPU_NUMBER(%eax)
>  #if (MACH_KDB || MACH_TTD) && !defined(MACH_XEN)
>   /* First make sure that if we're exitting from ipl7, IF is still 
> cleared */
> - cmpl$SPL7,EXT(curr_ipl) /* from ipl7? */
> + cmpl$SPL7,CX(EXT(curr_ipl),%eax)/* from ipl

Re: [PATCH 4/5 gnumach] Remove verbose debug printfs

2023-02-13 Thread Samuel Thibault
Applied, thanks!

Damien Zammit, le lun. 13 févr. 2023 08:50:02 +, a ecrit:
> ---
>  i386/i386/mp_desc.c | 1 -
>  i386/i386/smp.c | 1 -
>  i386/intel/pmap.c   | 1 -
>  3 files changed, 3 deletions(-)
> 
> diff --git a/i386/i386/mp_desc.c b/i386/i386/mp_desc.c
> index 446fedb5..e6fcbf62 100644
> --- a/i386/i386/mp_desc.c
> +++ b/i386/i386/mp_desc.c
> @@ -199,7 +199,6 @@ cpu_control(int cpu, const int *info, unsigned int count)
>  void
>  interrupt_processor(int cpu)
>  {
> - printf("interrupt cpu %d\n",cpu);
>   smp_pmap_update(apic_get_cpu_apic_id(cpu));
>  }
> 
> diff --git a/i386/i386/smp.c b/i386/i386/smp.c
> index c6a62958..7441ffbb 100644
> --- a/i386/i386/smp.c
> +++ b/i386/i386/smp.c
> @@ -53,7 +53,6 @@ void smp_pmap_update(unsigned apic_id)
> 
>  cpu_intr_save(&flags);
> 
> -printf("IPI(%d>%u)\n", cpu_number(), apic_id);
>  apic_send_ipi(NO_SHORTHAND, FIXED, PHYSICAL, ASSERT, EDGE, 
> CALL_SINGLE_FUNCTION_BASE, apic_id);
> 
>  do {
> diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
> index 40ddcd6a..0316d15a 100644
> --- a/i386/intel/pmap.c
> +++ b/i386/intel/pmap.c
> @@ -3054,7 +3054,6 @@ void pmap_update_interrupt(void)
>   int s;
> 
>   my_cpu = cpu_number();
> - printf("PMAP(%d)\n", my_cpu);
> 
>   /*
>*  Exit now if we're idle.  We'll pick up the update request
> --
> 2.34.1
> 
> 
> 

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.