All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] mini-os: some cleanups
@ 2016-08-26 14:35 Juergen Gross
  2016-08-26 14:35 ` [PATCH 1/3] mini-os: cleanup x86_32.S Juergen Gross
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Juergen Gross @ 2016-08-26 14:35 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: Juergen Gross, samuel.thibault, wei.liu2

Do some cleanups in Mini-OS.

Juergen Gross (3):
  mini-os: cleanup x86_32.S
  mini-os: cleanup x86_64.S
  mini-os: remove unused functions from sched.c

 arch/x86/x86_32.S |  7 +------
 arch/x86/x86_64.S | 44 ++++++++++++++++----------------------------
 sched.c           | 48 ------------------------------------------------
 3 files changed, 17 insertions(+), 82 deletions(-)

-- 
2.6.6


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/3] mini-os: cleanup x86_32.S
  2016-08-26 14:35 [PATCH 0/3] mini-os: some cleanups Juergen Gross
@ 2016-08-26 14:35 ` Juergen Gross
  2016-08-26 17:33   ` Samuel Thibault
  2016-08-26 14:35 ` [PATCH 2/3] mini-os: cleanup x86_64.S Juergen Gross
  2016-08-26 14:35 ` [PATCH 3/3] mini-os: remove unused functions from sched.c Juergen Gross
  2 siblings, 1 reply; 8+ messages in thread
From: Juergen Gross @ 2016-08-26 14:35 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: Juergen Gross, samuel.thibault, wei.liu2

arch/x86/x86_32.S has some superfluous instructions. Remove them.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/x86_32.S | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/arch/x86/x86_32.S b/arch/x86/x86_32.S
index f70fc65..3de0027 100644
--- a/arch/x86/x86_32.S
+++ b/arch/x86/x86_32.S
@@ -111,7 +111,6 @@ do_exception:
     jmp ret_from_exception
     
 ret_from_exception:
-    movb CS(%esp),%cl
     addl $8,%esp
     RESTORE_ALL
 
@@ -140,11 +139,7 @@ ENTRY(hypervisor_callback)
         call do_hypervisor_callback
         add  $4,%esp
         movl HYPERVISOR_shared_info,%esi
-        xorl %eax,%eax
-        movb CS(%esp),%cl
-    	test $2,%cl          # slow return to ring 2 or 3
-        jne  safesti
-safesti:movb $0,1(%esi)     # reenable event callbacks
+        movb $0,1(%esi)     # reenable event callbacks
 scrit:  /**** START OF CRITICAL REGION ****/
         testb $0xFF,(%esi)
         jnz  14f              # process more events if necessary...
-- 
2.6.6


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/3] mini-os: cleanup x86_64.S
  2016-08-26 14:35 [PATCH 0/3] mini-os: some cleanups Juergen Gross
  2016-08-26 14:35 ` [PATCH 1/3] mini-os: cleanup x86_32.S Juergen Gross
@ 2016-08-26 14:35 ` Juergen Gross
  2016-08-26 14:46   ` Andrew Cooper
  2016-08-26 14:35 ` [PATCH 3/3] mini-os: remove unused functions from sched.c Juergen Gross
  2 siblings, 1 reply; 8+ messages in thread
From: Juergen Gross @ 2016-08-26 14:35 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: Juergen Gross, samuel.thibault, wei.liu2

arch/x86/x86_64.S contains some unnecessary macros. Remove them.

Add a SAVE_PARAVIRT macro for saving %rcx and %r11 on the stack in
case of CONFIG_PARAVIRT defined.

Remove the parameter from HYPERVISOR_IRET macro as it is used with
0 only.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 arch/x86/x86_64.S | 44 ++++++++++++++++----------------------------
 1 file changed, 16 insertions(+), 28 deletions(-)

diff --git a/arch/x86/x86_64.S b/arch/x86/x86_64.S
index 2046187..3a7116f 100644
--- a/arch/x86/x86_64.S
+++ b/arch/x86/x86_64.S
@@ -45,21 +45,10 @@ hypercall_page:
 
 
 #define XEN_GET_VCPU_INFO(reg)	movq HYPERVISOR_shared_info,reg
-#define XEN_PUT_VCPU_INFO(reg)
-#define XEN_PUT_VCPU_INFO_fixup
 #define XEN_LOCKED_BLOCK_EVENTS(reg)	movb $1,evtchn_upcall_mask(reg)
 #define XEN_LOCKED_UNBLOCK_EVENTS(reg)	movb $0,evtchn_upcall_mask(reg)
 #define XEN_TEST_PENDING(reg)	testb $0xFF,evtchn_upcall_pending(reg)
 
-#define XEN_BLOCK_EVENTS(reg)	XEN_GET_VCPU_INFO(reg)			; \
-                    			XEN_LOCKED_BLOCK_EVENTS(reg)	; \
-    				            XEN_PUT_VCPU_INFO(reg)
-
-#define XEN_UNBLOCK_EVENTS(reg)	XEN_GET_VCPU_INFO(reg)			; \
-                				XEN_LOCKED_UNBLOCK_EVENTS(reg)	; \
-    			            	XEN_PUT_VCPU_INFO(reg)
-
-
 /* Offsets into shared_info_t. */                
 #define evtchn_upcall_pending		/* 0 */
 #define evtchn_upcall_mask		1
@@ -77,12 +66,16 @@ KERNEL_CS_MASK = 0xfc
 
 
 /* Macros */
+.macro SAVE_PARAVIRT
+#ifdef CONFIG_PARAVIRT
+	movq (%rsp),%rcx
+	movq 8(%rsp),%r11
+	addq $0x10,%rsp /* rsp points to the error code */
+#endif
+.endm
+
 .macro zeroentry sym
-#ifdef CONFIG_PARAVIRT
-	movq (%rsp),%rcx
-	movq 8(%rsp),%r11
-	addq $0x10,%rsp /* skip rcx and r11 */
-#endif
+	SAVE_PARAVIRT
 	pushq $0	/* push error code/oldrax */
 	pushq %rax	/* push real oldrax to the rdi slot */
 	leaq  \sym(%rip),%rax
@@ -90,11 +83,7 @@ KERNEL_CS_MASK = 0xfc
 .endm
 
 .macro errorentry sym
-#ifdef CONFIG_PARAVIRT
-	movq (%rsp),%rcx
-	movq 8(%rsp),%r11
-	addq $0x10,%rsp /* rsp points to the error code */
-#endif
+	SAVE_PARAVIRT
 	pushq %rax
 	leaq  \sym(%rip),%rax
 	jmp error_entry
@@ -141,7 +130,7 @@ KERNEL_CS_MASK = 0xfc
 	movq %rdi, RDI(%rsp)	/* put rdi into the slot */
 .endm
 
-.macro HYPERVISOR_IRET flag
+.macro HYPERVISOR_IRET
 #ifdef CONFIG_PARAVIRT
 	testl $NMI_MASK,2*8(%rsp)
 	jnz   2f
@@ -155,7 +144,7 @@ KERNEL_CS_MASK = 0xfc
 #ifdef CONFIG_PARAVIRT
 2:	/* Slow iret via hypervisor. */
 	andl  $~NMI_MASK, 16(%rsp)
-	pushq $\flag
+	pushq $0
 	jmp  hypercall_page + (__HYPERVISOR_iret * 32)
 #endif
 .endm
@@ -207,17 +196,16 @@ error_exit:
 	andb evtchn_upcall_mask(%rsi),%al
 	andb $1,%al			# EAX[0] == IRET_RFLAGS.IF & event_mask
 	jnz restore_all_enable_events	#        != 0 => enable event delivery
-	XEN_PUT_VCPU_INFO(%rsi)
 
 	RESTORE_ALL
-	HYPERVISOR_IRET 0
+	HYPERVISOR_IRET
 
 restore_all_enable_events:
 	RESTORE_ALL
 	pushq %rax                      # save rax for it will be clobbered later
 	RSP_OFFSET=8                    # record the stack frame layout changes
 	XEN_GET_VCPU_INFO(%rax)         # safe to use rax since it is saved
-	XEN_UNBLOCK_EVENTS(%rax)
+	XEN_LOCKED_UNBLOCK_EVENTS(%rax)
 
 scrit:	/**** START OF CRITICAL REGION ****/
 	XEN_TEST_PENDING(%rax)
@@ -229,7 +217,7 @@ scrit:	/**** START OF CRITICAL REGION ****/
 restore_end:
 	jnz hypervisor_prologue         # safe to jump out of critical region
 	                                # because events are masked if ZF = 0
-	HYPERVISOR_IRET 0
+	HYPERVISOR_IRET
 ecrit:  /**** END OF CRITICAL REGION ****/
 
 # Set up the stack as Xen does before calling event callback
@@ -278,7 +266,7 @@ critical_region_fixup:
 #else
 error_exit:
 	RESTORE_ALL
-	HYPERVISOR_IRET 0
+	HYPERVISOR_IRET
 
 /*
  * Xen event (virtual interrupt) entry point.
-- 
2.6.6


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/3] mini-os: remove unused functions from sched.c
  2016-08-26 14:35 [PATCH 0/3] mini-os: some cleanups Juergen Gross
  2016-08-26 14:35 ` [PATCH 1/3] mini-os: cleanup x86_32.S Juergen Gross
  2016-08-26 14:35 ` [PATCH 2/3] mini-os: cleanup x86_64.S Juergen Gross
@ 2016-08-26 14:35 ` Juergen Gross
  2016-08-26 17:34   ` Samuel Thibault
  2 siblings, 1 reply; 8+ messages in thread
From: Juergen Gross @ 2016-08-26 14:35 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: Juergen Gross, samuel.thibault, wei.liu2

sched.c contains some functions nobody is using. Remove them.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 sched.c | 48 ------------------------------------------------
 1 file changed, 48 deletions(-)

diff --git a/sched.c b/sched.c
index 1e843d9..6f89ea4 100644
--- a/sched.c
+++ b/sched.c
@@ -63,16 +63,6 @@ static int threads_started;
 
 struct thread *main_thread;
 
-void inline print_runqueue(void)
-{
-    struct thread *th;
-    MINIOS_TAILQ_FOREACH(th, &thread_list, thread_list)
-    {
-        printk("   Thread \"%s\", runnable=%d\n", th->name, is_runnable(th));
-    }
-    printk("\n");
-}
-
 void schedule(void)
 {
     struct thread *prev, *next, *thread, *tmp;
@@ -245,44 +235,6 @@ void idle_thread_fn(void *unused)
     }
 }
 
-DECLARE_MUTEX(mutex);
-
-void th_f1(void *data)
-{
-    struct timeval tv1, tv2;
-
-    for(;;)
-    {
-        down(&mutex);
-        printk("Thread \"%s\" got semaphore, runnable %d\n", current->name, is_runnable(current));
-        schedule();
-        printk("Thread \"%s\" releases the semaphore\n", current->name);
-        up(&mutex);
-        
-        
-        gettimeofday(&tv1, NULL);
-        for(;;)
-        {
-            gettimeofday(&tv2, NULL);
-            if(tv2.tv_sec - tv1.tv_sec > 2) break;
-        }
-                
-        
-        schedule(); 
-    }
-}
-
-void th_f2(void *data)
-{
-    for(;;)
-    {
-        printk("Thread OTHER executing, data 0x%p\n", data);
-        schedule();
-    }
-}
-
-
-
 void init_sched(void)
 {
     printk("Initialising scheduler\n");
-- 
2.6.6


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/3] mini-os: cleanup x86_64.S
  2016-08-26 14:35 ` [PATCH 2/3] mini-os: cleanup x86_64.S Juergen Gross
@ 2016-08-26 14:46   ` Andrew Cooper
  2016-08-26 14:54     ` Juergen Gross
  0 siblings, 1 reply; 8+ messages in thread
From: Andrew Cooper @ 2016-08-26 14:46 UTC (permalink / raw)
  To: Juergen Gross, minios-devel, xen-devel; +Cc: samuel.thibault, wei.liu2

On 26/08/16 15:35, Juergen Gross wrote:
> arch/x86/x86_64.S contains some unnecessary macros. Remove them.
>
> Add a SAVE_PARAVIRT macro for saving %rcx and %r11 on the stack in
> case of CONFIG_PARAVIRT defined.
>
> Remove the parameter from HYPERVISOR_IRET macro as it is used with
> 0 only.
>
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
>   arch/x86/x86_64.S | 44 ++++++++++++++++----------------------------
>   1 file changed, 16 insertions(+), 28 deletions(-)
>
> diff --git a/arch/x86/x86_64.S b/arch/x86/x86_64.S
> index 2046187..3a7116f 100644
> --- a/arch/x86/x86_64.S
> +++ b/arch/x86/x86_64.S
> @@ -45,21 +45,10 @@ hypercall_page:
>   
>   
>   #define XEN_GET_VCPU_INFO(reg)	movq HYPERVISOR_shared_info,reg
> -#define XEN_PUT_VCPU_INFO(reg)
> -#define XEN_PUT_VCPU_INFO_fixup
>   #define XEN_LOCKED_BLOCK_EVENTS(reg)	movb $1,evtchn_upcall_mask(reg)
>   #define XEN_LOCKED_UNBLOCK_EVENTS(reg)	movb $0,evtchn_upcall_mask(reg)
>   #define XEN_TEST_PENDING(reg)	testb $0xFF,evtchn_upcall_pending(reg)
>   
> -#define XEN_BLOCK_EVENTS(reg)	XEN_GET_VCPU_INFO(reg)			; \
> -                    			XEN_LOCKED_BLOCK_EVENTS(reg)	; \
> -    				            XEN_PUT_VCPU_INFO(reg)
> -
> -#define XEN_UNBLOCK_EVENTS(reg)	XEN_GET_VCPU_INFO(reg)			; \
> -                				XEN_LOCKED_UNBLOCK_EVENTS(reg)	; \
> -    			            	XEN_PUT_VCPU_INFO(reg)
> -
> -
>   /* Offsets into shared_info_t. */
>   #define evtchn_upcall_pending		/* 0 */
>   #define evtchn_upcall_mask		1
> @@ -77,12 +66,16 @@ KERNEL_CS_MASK = 0xfc
>   
>   
>   /* Macros */
> +.macro SAVE_PARAVIRT
> +#ifdef CONFIG_PARAVIRT
> +	movq (%rsp),%rcx
> +	movq 8(%rsp),%r11
> +	addq $0x10,%rsp /* rsp points to the error code */iwt

I know this is just moving code, but I would recommend switching to a 
pop %rcx; pop %r11, which is shorter and more efficient.

It also plays better in the stack engine with the adjacent pushes/pops.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/3] mini-os: cleanup x86_64.S
  2016-08-26 14:46   ` Andrew Cooper
@ 2016-08-26 14:54     ` Juergen Gross
  0 siblings, 0 replies; 8+ messages in thread
From: Juergen Gross @ 2016-08-26 14:54 UTC (permalink / raw)
  To: Andrew Cooper, minios-devel, xen-devel; +Cc: samuel.thibault, wei.liu2

On 26/08/16 16:46, Andrew Cooper wrote:
> On 26/08/16 15:35, Juergen Gross wrote:
>> arch/x86/x86_64.S contains some unnecessary macros. Remove them.
>>
>> Add a SAVE_PARAVIRT macro for saving %rcx and %r11 on the stack in
>> case of CONFIG_PARAVIRT defined.
>>
>> Remove the parameter from HYPERVISOR_IRET macro as it is used with
>> 0 only.
>>
>> Signed-off-by: Juergen Gross <jgross@suse.com>
>> ---
>>   arch/x86/x86_64.S | 44 ++++++++++++++++----------------------------
>>   1 file changed, 16 insertions(+), 28 deletions(-)
>>
>> diff --git a/arch/x86/x86_64.S b/arch/x86/x86_64.S
>> index 2046187..3a7116f 100644
>> --- a/arch/x86/x86_64.S
>> +++ b/arch/x86/x86_64.S
>> @@ -45,21 +45,10 @@ hypercall_page:
>>       #define XEN_GET_VCPU_INFO(reg)    movq HYPERVISOR_shared_info,reg
>> -#define XEN_PUT_VCPU_INFO(reg)
>> -#define XEN_PUT_VCPU_INFO_fixup
>>   #define XEN_LOCKED_BLOCK_EVENTS(reg)    movb $1,evtchn_upcall_mask(reg)
>>   #define XEN_LOCKED_UNBLOCK_EVENTS(reg)    movb
>> $0,evtchn_upcall_mask(reg)
>>   #define XEN_TEST_PENDING(reg)    testb $0xFF,evtchn_upcall_pending(reg)
>>   -#define XEN_BLOCK_EVENTS(reg)    XEN_GET_VCPU_INFO(reg)            ; \
>> -                                XEN_LOCKED_BLOCK_EVENTS(reg)    ; \
>> -                                XEN_PUT_VCPU_INFO(reg)
>> -
>> -#define XEN_UNBLOCK_EVENTS(reg)    XEN_GET_VCPU_INFO(reg)            ; \
>> -                                XEN_LOCKED_UNBLOCK_EVENTS(reg)    ; \
>> -                                XEN_PUT_VCPU_INFO(reg)
>> -
>> -
>>   /* Offsets into shared_info_t. */
>>   #define evtchn_upcall_pending        /* 0 */
>>   #define evtchn_upcall_mask        1
>> @@ -77,12 +66,16 @@ KERNEL_CS_MASK = 0xfc
>>       /* Macros */
>> +.macro SAVE_PARAVIRT
>> +#ifdef CONFIG_PARAVIRT
>> +    movq (%rsp),%rcx
>> +    movq 8(%rsp),%r11
>> +    addq $0x10,%rsp /* rsp points to the error code */iwt
> 
> I know this is just moving code, but I would recommend switching to a
> pop %rcx; pop %r11, which is shorter and more efficient.
> 
> It also plays better in the stack engine with the adjacent pushes/pops.

Right. I'll send a V2.


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/3] mini-os: cleanup x86_32.S
  2016-08-26 14:35 ` [PATCH 1/3] mini-os: cleanup x86_32.S Juergen Gross
@ 2016-08-26 17:33   ` Samuel Thibault
  0 siblings, 0 replies; 8+ messages in thread
From: Samuel Thibault @ 2016-08-26 17:33 UTC (permalink / raw)
  To: Juergen Gross; +Cc: minios-devel, xen-devel, wei.liu2

Juergen Gross, on Fri 26 Aug 2016 16:35:34 +0200, wrote:
> arch/x86/x86_32.S has some superfluous instructions. Remove them.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

These are indeed remnants from the past.

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  arch/x86/x86_32.S | 7 +------
>  1 file changed, 1 insertion(+), 6 deletions(-)
> 
> diff --git a/arch/x86/x86_32.S b/arch/x86/x86_32.S
> index f70fc65..3de0027 100644
> --- a/arch/x86/x86_32.S
> +++ b/arch/x86/x86_32.S
> @@ -111,7 +111,6 @@ do_exception:
>      jmp ret_from_exception
>      
>  ret_from_exception:
> -    movb CS(%esp),%cl
>      addl $8,%esp
>      RESTORE_ALL
>  
> @@ -140,11 +139,7 @@ ENTRY(hypervisor_callback)
>          call do_hypervisor_callback
>          add  $4,%esp
>          movl HYPERVISOR_shared_info,%esi
> -        xorl %eax,%eax
> -        movb CS(%esp),%cl
> -    	test $2,%cl          # slow return to ring 2 or 3
> -        jne  safesti
> -safesti:movb $0,1(%esi)     # reenable event callbacks
> +        movb $0,1(%esi)     # reenable event callbacks
>  scrit:  /**** START OF CRITICAL REGION ****/
>          testb $0xFF,(%esi)
>          jnz  14f              # process more events if necessary...
> -- 
> 2.6.6
> 

-- 
Samuel
 >       ±z¬O§_¸g±`¬°¦p¦ó©Ý®i¦æ¾PºÞ¹D¶Ë¸£µ¬?
 > ¥Zµn³ø¯È,Âø»x¼s§i©Î¶l±H¢Ò¢Û (Direct Mail)¬O§_¤w¸gµLªk¹F¦¨±z¹w´Áªº¼s§i®ÄªG?
 Je vous invite a consulter dans un premier temps le french-Howto.
 -+- JCD in Guide du linuxien pervers - "Bien configurer la lisibilité de fcolm"

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] mini-os: remove unused functions from sched.c
  2016-08-26 14:35 ` [PATCH 3/3] mini-os: remove unused functions from sched.c Juergen Gross
@ 2016-08-26 17:34   ` Samuel Thibault
  0 siblings, 0 replies; 8+ messages in thread
From: Samuel Thibault @ 2016-08-26 17:34 UTC (permalink / raw)
  To: Juergen Gross; +Cc: minios-devel, xen-devel, wei.liu2

Juergen Gross, on Fri 26 Aug 2016 16:35:36 +0200, wrote:
> sched.c contains some functions nobody is using. Remove them.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  sched.c | 48 ------------------------------------------------
>  1 file changed, 48 deletions(-)
> 
> diff --git a/sched.c b/sched.c
> index 1e843d9..6f89ea4 100644
> --- a/sched.c
> +++ b/sched.c
> @@ -63,16 +63,6 @@ static int threads_started;
>  
>  struct thread *main_thread;
>  
> -void inline print_runqueue(void)
> -{
> -    struct thread *th;
> -    MINIOS_TAILQ_FOREACH(th, &thread_list, thread_list)
> -    {
> -        printk("   Thread \"%s\", runnable=%d\n", th->name, is_runnable(th));
> -    }
> -    printk("\n");
> -}
> -
>  void schedule(void)
>  {
>      struct thread *prev, *next, *thread, *tmp;
> @@ -245,44 +235,6 @@ void idle_thread_fn(void *unused)
>      }
>  }
>  
> -DECLARE_MUTEX(mutex);
> -
> -void th_f1(void *data)
> -{
> -    struct timeval tv1, tv2;
> -
> -    for(;;)
> -    {
> -        down(&mutex);
> -        printk("Thread \"%s\" got semaphore, runnable %d\n", current->name, is_runnable(current));
> -        schedule();
> -        printk("Thread \"%s\" releases the semaphore\n", current->name);
> -        up(&mutex);
> -        
> -        
> -        gettimeofday(&tv1, NULL);
> -        for(;;)
> -        {
> -            gettimeofday(&tv2, NULL);
> -            if(tv2.tv_sec - tv1.tv_sec > 2) break;
> -        }
> -                
> -        
> -        schedule(); 
> -    }
> -}
> -
> -void th_f2(void *data)
> -{
> -    for(;;)
> -    {
> -        printk("Thread OTHER executing, data 0x%p\n", data);
> -        schedule();
> -    }
> -}
> -
> -
> -
>  void init_sched(void)
>  {
>      printk("Initialising scheduler\n");
> -- 
> 2.6.6
> 

-- 
Samuel
<b> lisons de l'assembleur c
 -+- #sos - CrisC forever -+-

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-08-26 17:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-26 14:35 [PATCH 0/3] mini-os: some cleanups Juergen Gross
2016-08-26 14:35 ` [PATCH 1/3] mini-os: cleanup x86_32.S Juergen Gross
2016-08-26 17:33   ` Samuel Thibault
2016-08-26 14:35 ` [PATCH 2/3] mini-os: cleanup x86_64.S Juergen Gross
2016-08-26 14:46   ` Andrew Cooper
2016-08-26 14:54     ` Juergen Gross
2016-08-26 14:35 ` [PATCH 3/3] mini-os: remove unused functions from sched.c Juergen Gross
2016-08-26 17:34   ` Samuel Thibault

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.