Re: [patch] CFS scheduler, -v8

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 02 May 2007, Mike Galbraith wrote:
>On Tue, 2007-05-01 at 23:22 +0200, Ingo Molnar wrote:
>> i'm pleased to announce release -v8 of the CFS scheduler patchset. (The
>> main goal of CFS is to implement "desktop scheduling" with as high
>> quality as technically possible.)
>
>...
>
>> As usual, any sort of feedback, bugreport, fix and suggestion is more
>> than welcome,
>
>Greetings,
>
>I noticed a (harmless) bounds warning triggered by the reduction in size
>of array->bitmap.  Patchlet below.
>
>	-Mike

I just checked my logs, and it appears my workload didn't trigger this one 
Mike.  And so far, v8 is working great here.  And that great is in my 
best "Tony the Tiger" voice, stolen shamelessly from the breakfast cereal tv  
commercial of 30+ years ago. :)

Ingo asked for a 0-100 rating, where 0 is mainline as I recall it, and 100 is 
the best of the breed.  I'll give this one a 100 till something better shows 
up.

>  CC      kernel/sched.o
>kernel/sched_rt.c: In function ʽload_balance_start_rtʼ:
>include/asm-generic/bitops/sched.h:30: warning: array subscript is above
> array bounds kernel/sched_rt.c: In function ʽpick_next_task_rtʼ:
>include/asm-generic/bitops/sched.h:30: warning: array subscript is above
> array bounds
>
>--- linux-2.6.21-cfs.v8/include/asm-generic/bitops/sched.h.org	2007-05-02
> 07:16:47.000000000 +0200 +++
> linux-2.6.21-cfs.v8/include/asm-generic/bitops/sched.h	2007-05-02
> 07:20:45.000000000 +0200 @@ -6,28 +6,23 @@
>
> /*
>  * Every architecture must define this function. It's the fastest
>- * way of searching a 140-bit bitmap where the first 100 bits are
>- * unlikely to be set. It's guaranteed that at least one of the 140
>- * bits is cleared.
>+ * way of searching a 100-bit bitmap.  It's guaranteed that at least
>+ * one of the 100 bits is cleared.
>  */
> static inline int sched_find_first_bit(const unsigned long *b)
> {
> #if BITS_PER_LONG == 64
>-	if (unlikely(b[0]))
>+	if (b[0])
> 		return __ffs(b[0]);
>-	if (likely(b[1]))
>-		return __ffs(b[1]) + 64;
>-	return __ffs(b[2]) + 128;
>+	return __ffs(b[1]) + 64;
> #elif BITS_PER_LONG == 32
>-	if (unlikely(b[0]))
>+	if (b[0])
> 		return __ffs(b[0]);
>-	if (unlikely(b[1]))
>+	if (b[1])
> 		return __ffs(b[1]) + 32;
>-	if (unlikely(b[2]))
>+	if (b[2])
> 		return __ffs(b[2]) + 64;
>-	if (b[3])
>-		return __ffs(b[3]) + 96;
>-	return __ffs(b[4]) + 128;
>+	return __ffs(b[3]) + 96;
> #else
> #error BITS_PER_LONG not defined
> #endif



-- 
Cheers, Gene
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
I met my latest girl friend in a department store.  She was looking at
clothes, and I was putting Slinkys on the escalators.
		-- Steven Wright
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux