Re: 2.6.24-rc7-rt1

2008-01-15 Thread Gregory Haskins
>>> On Tue, Jan 15, 2008 at  4:28 AM, in message
<[EMAIL PROTECTED]>, Mike Galbraith <[EMAIL PROTECTED]>
wrote: 

> debug resume trace
> 
> static inline int pick_optimal_cpu(int this_cpu, cpumask_t *mask)
> {
>   int first;
> 
>   /* "this_cpu" is cheaper to preempt than a remote processor */
>   if ((this_cpu != -1) && cpu_isset(this_cpu, *mask))
>   return this_cpu;
> 
>   first = first_cpu(*mask);
>   if (first != NR_CPUS) {
>   if (!cpu_online(first)) {
>   WARN_ON_ONCE(1);
>   return -1;
>   }
>   return first;
>   }
> 
>   return -1;
> }
> 
> [  156.344352] CPU1 is down
> [3.726557] Intel machine check architecture supported.
> [3.726565] Intel machine check reporting enabled on CPU#0.
> [3.726567] CPU0: Intel P4/Xeon Extended MCE MSRs (12) available
> [3.726570] CPU0: Thermal monitoring enabled
> [3.726576] Back to C!
> [3.727107] Force enabled HPET at resume
> [3.727193] Enabling non-boot CPUs ...
> [3.727446] CPU0 attaching NULL sched-domain.
> [3.727550] WARNING: at kernel/sched_rt.c:385 pick_optimal_cpu()
> [3.727553] Pid: 27, comm: events/0 Not tainted 2.6.24-rt2-smp #73
> [3.727556]  [] show_trace_log_lvl+0x1a/0x30
> [3.727564]  [] show_trace+0x12/0x14
> [3.727567]  [] dump_stack+0x6c/0x72
> [3.727569]  [] find_lowest_rq+0x199/0x1af
> [3.727573]  [] push_rt_task+0x6e/0x1ed
> [3.727575]  [] switched_to_rt+0x39/0x55
> [3.727579]  [] task_setprio+0xbf/0x18f
> [3.727581]  [] __rt_mutex_adjust_prio+0x19/0x1c
> [3.727585]  [] task_blocks_on_rt_mutex+0x14e/0x17e
> [3.727588]  [] rt_spin_lock_slowlock+0xed/0x16a
> [3.727593]  [] __rt_spin_lock+0x41/0x48
> [3.727596]  [] rt_spin_lock+0x8/0xa
> [3.727598]  [] finish_wait+0x25/0x49
> [3.727602]  [] worker_thread+0x64/0xe1
> [3.727605]  [] kthread+0x39/0x5b
> [3.727607]  [] kernel_thread_helper+0x7/0x14
> [3.727610]  ===
> [3.727624] SMP alternatives: switching to SMP code
> [3.728314] Booting processor 1/1 eip 3000

This gives me a much better hint, Mike.  Thanks!

-Greg

--
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/


Re: 2.6.24-rc7-rt1

2008-01-15 Thread Mike Galbraith

debug resume trace

static inline int pick_optimal_cpu(int this_cpu, cpumask_t *mask)
{
int first;

/* "this_cpu" is cheaper to preempt than a remote processor */
if ((this_cpu != -1) && cpu_isset(this_cpu, *mask))
return this_cpu;

first = first_cpu(*mask);
if (first != NR_CPUS) {
if (!cpu_online(first)) {
WARN_ON_ONCE(1);
return -1;
}
return first;
}

return -1;
}

[  156.344352] CPU1 is down
[3.726557] Intel machine check architecture supported.
[3.726565] Intel machine check reporting enabled on CPU#0.
[3.726567] CPU0: Intel P4/Xeon Extended MCE MSRs (12) available
[3.726570] CPU0: Thermal monitoring enabled
[3.726576] Back to C!
[3.727107] Force enabled HPET at resume
[3.727193] Enabling non-boot CPUs ...
[3.727446] CPU0 attaching NULL sched-domain.
[3.727550] WARNING: at kernel/sched_rt.c:385 pick_optimal_cpu()
[3.727553] Pid: 27, comm: events/0 Not tainted 2.6.24-rt2-smp #73
[3.727556]  [] show_trace_log_lvl+0x1a/0x30
[3.727564]  [] show_trace+0x12/0x14
[3.727567]  [] dump_stack+0x6c/0x72
[3.727569]  [] find_lowest_rq+0x199/0x1af
[3.727573]  [] push_rt_task+0x6e/0x1ed
[3.727575]  [] switched_to_rt+0x39/0x55
[3.727579]  [] task_setprio+0xbf/0x18f
[3.727581]  [] __rt_mutex_adjust_prio+0x19/0x1c
[3.727585]  [] task_blocks_on_rt_mutex+0x14e/0x17e
[3.727588]  [] rt_spin_lock_slowlock+0xed/0x16a
[3.727593]  [] __rt_spin_lock+0x41/0x48
[3.727596]  [] rt_spin_lock+0x8/0xa
[3.727598]  [] finish_wait+0x25/0x49
[3.727602]  [] worker_thread+0x64/0xe1
[3.727605]  [] kthread+0x39/0x5b
[3.727607]  [] kernel_thread_helper+0x7/0x14
[3.727610]  ===
[3.727624] SMP alternatives: switching to SMP code
[3.728314] Booting processor 1/1 eip 3000


--
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/


Re: 2.6.24-rc7-rt1

2008-01-15 Thread Mike Galbraith

On Mon, 2008-01-14 at 14:25 +0100, Mike Galbraith wrote:

> I forgot about it too.  I'll likely poke at it again.



push_rt_task()
  find_lock_lowest_rq()
find_lowest_rq()
  return pick_optimal_cpu().

returned cpu is offline.  Box prefers -1.

-Mike



--
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/


Re: 2.6.24-rc7-rt1

2008-01-15 Thread Mike Galbraith

On Mon, 2008-01-14 at 14:25 +0100, Mike Galbraith wrote:

 I forgot about it too.  I'll likely poke at it again.

poke

push_rt_task()
  find_lock_lowest_rq()
find_lowest_rq()
  return pick_optimal_cpu().

returned cpu is offline.  Box prefers -1.

-Mike



--
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/


Re: 2.6.24-rc7-rt1

2008-01-15 Thread Mike Galbraith

debug resume trace

static inline int pick_optimal_cpu(int this_cpu, cpumask_t *mask)
{
int first;

/* this_cpu is cheaper to preempt than a remote processor */
if ((this_cpu != -1)  cpu_isset(this_cpu, *mask))
return this_cpu;

first = first_cpu(*mask);
if (first != NR_CPUS) {
if (!cpu_online(first)) {
WARN_ON_ONCE(1);
return -1;
}
return first;
}

return -1;
}

[  156.344352] CPU1 is down
[3.726557] Intel machine check architecture supported.
[3.726565] Intel machine check reporting enabled on CPU#0.
[3.726567] CPU0: Intel P4/Xeon Extended MCE MSRs (12) available
[3.726570] CPU0: Thermal monitoring enabled
[3.726576] Back to C!
[3.727107] Force enabled HPET at resume
[3.727193] Enabling non-boot CPUs ...
[3.727446] CPU0 attaching NULL sched-domain.
[3.727550] WARNING: at kernel/sched_rt.c:385 pick_optimal_cpu()
[3.727553] Pid: 27, comm: events/0 Not tainted 2.6.24-rt2-smp #73
[3.727556]  [b010522a] show_trace_log_lvl+0x1a/0x30
[3.727564]  [b0105ccd] show_trace+0x12/0x14
[3.727567]  [b010641f] dump_stack+0x6c/0x72
[3.727569]  [b0120b0f] find_lowest_rq+0x199/0x1af
[3.727573]  [b0120beb] push_rt_task+0x6e/0x1ed
[3.727575]  [b01276a3] switched_to_rt+0x39/0x55
[3.727579]  [b0128cd1] task_setprio+0xbf/0x18f
[3.727581]  [b014c21e] __rt_mutex_adjust_prio+0x19/0x1c
[3.727585]  [b014c943] task_blocks_on_rt_mutex+0x14e/0x17e
[3.727588]  [b02f2e18] rt_spin_lock_slowlock+0xed/0x16a
[3.727593]  [b02f351a] __rt_spin_lock+0x41/0x48
[3.727596]  [b02f3529] rt_spin_lock+0x8/0xa
[3.727598]  [b013f2c2] finish_wait+0x25/0x49
[3.727602]  [b013c746] worker_thread+0x64/0xe1
[3.727605]  [b013efb2] kthread+0x39/0x5b
[3.727607]  [b0104e83] kernel_thread_helper+0x7/0x14
[3.727610]  ===
[3.727624] SMP alternatives: switching to SMP code
[3.728314] Booting processor 1/1 eip 3000


--
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/


Re: 2.6.24-rc7-rt1

2008-01-15 Thread Gregory Haskins
 On Tue, Jan 15, 2008 at  4:28 AM, in message
[EMAIL PROTECTED], Mike Galbraith [EMAIL PROTECTED]
wrote: 

 debug resume trace
 
 static inline int pick_optimal_cpu(int this_cpu, cpumask_t *mask)
 {
   int first;
 
   /* this_cpu is cheaper to preempt than a remote processor */
   if ((this_cpu != -1)  cpu_isset(this_cpu, *mask))
   return this_cpu;
 
   first = first_cpu(*mask);
   if (first != NR_CPUS) {
   if (!cpu_online(first)) {
   WARN_ON_ONCE(1);
   return -1;
   }
   return first;
   }
 
   return -1;
 }
 
 [  156.344352] CPU1 is down
 [3.726557] Intel machine check architecture supported.
 [3.726565] Intel machine check reporting enabled on CPU#0.
 [3.726567] CPU0: Intel P4/Xeon Extended MCE MSRs (12) available
 [3.726570] CPU0: Thermal monitoring enabled
 [3.726576] Back to C!
 [3.727107] Force enabled HPET at resume
 [3.727193] Enabling non-boot CPUs ...
 [3.727446] CPU0 attaching NULL sched-domain.
 [3.727550] WARNING: at kernel/sched_rt.c:385 pick_optimal_cpu()
 [3.727553] Pid: 27, comm: events/0 Not tainted 2.6.24-rt2-smp #73
 [3.727556]  [b010522a] show_trace_log_lvl+0x1a/0x30
 [3.727564]  [b0105ccd] show_trace+0x12/0x14
 [3.727567]  [b010641f] dump_stack+0x6c/0x72
 [3.727569]  [b0120b0f] find_lowest_rq+0x199/0x1af
 [3.727573]  [b0120beb] push_rt_task+0x6e/0x1ed
 [3.727575]  [b01276a3] switched_to_rt+0x39/0x55
 [3.727579]  [b0128cd1] task_setprio+0xbf/0x18f
 [3.727581]  [b014c21e] __rt_mutex_adjust_prio+0x19/0x1c
 [3.727585]  [b014c943] task_blocks_on_rt_mutex+0x14e/0x17e
 [3.727588]  [b02f2e18] rt_spin_lock_slowlock+0xed/0x16a
 [3.727593]  [b02f351a] __rt_spin_lock+0x41/0x48
 [3.727596]  [b02f3529] rt_spin_lock+0x8/0xa
 [3.727598]  [b013f2c2] finish_wait+0x25/0x49
 [3.727602]  [b013c746] worker_thread+0x64/0xe1
 [3.727605]  [b013efb2] kthread+0x39/0x5b
 [3.727607]  [b0104e83] kernel_thread_helper+0x7/0x14
 [3.727610]  ===
 [3.727624] SMP alternatives: switching to SMP code
 [3.728314] Booting processor 1/1 eip 3000

This gives me a much better hint, Mike.  Thanks!

-Greg

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Robert Schwebel
On Sun, Jan 13, 2008 at 03:48:33PM -0500, Steven Rostedt wrote:
> > Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
> > http://www.pengutronix.de/oselas/realtime/results/20080113-1/
>
> That doesn't look too bad. Or is over a 100us not good for that box?

I think it's ok. However, Wolfgang still sees strange long delays on his
Icecube, so it was mainly for comparism.

> Also is it SMP?

Nope, UP. This one:

http://www.phytec.de/phytec/32-bit_module/phycore-mpc5200b-tiny.html

The CPU is basically a 603e core plus peripherals.

> Yeah, I didn't make any attempt to fix latency_tracing for PPC on this
> release. I expected as much. I do have a couple of PPC boxes that I can
> play with, and I'll see if I can get that working too before -rt2. But I
> want to get a stable x86 release out fast.

Yup, great, thanks!

Robert
-- 
 Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
 Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-0 |  Fax: +49-5121-206917-9

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Steven Rostedt


On Mon, 14 Jan 2008, [utf-8] S.�^Ga�^_lar Onur wrote:

>
> Following seems solves this issue;
>
> Index: linux-2.6.23/drivers/dma/ioat_dma.c
> ===
> --- linux-2.6.23.orig/drivers/dma/ioat_dma.c
> +++ linux-2.6.23/drivers/dma/ioat_dma.c
> @@ -260,7 +260,7 @@ static dma_cookie_t ioat1_tx_submit(stru
>   /* write address into NextDescriptor field of last desc in chain */
>   to_ioat_desc(ioat_chan->used_desc.prev)->hw->next =
>   first->async_tx.phys;
> - __list_splice(_chain, ioat_chan->used_desc.prev);
> + list_splice(_chain, _chan->used_desc);

Thanks, but I already fixed it. It requires a list_splice_tail.

-- Steve

>
>   ioat_chan->dmacount += desc_count;
>   ioat_chan->pending += desc_count;
>
>

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread S.Çağlar Onur
Hi;

14 Oca 2008 Pts tarihinde, Mike Galbraith şunları yazmıştı: 
> btw, CONFIG_INTEL_IOATDMA compile booboo
> 
>   CC  drivers/dma/ioat_dma.o
> drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
> drivers/dma/ioat_dma.c:300: error: too few arguments to function 
> ‘__list_splice’
> make[2]: *** [drivers/dma/ioat_dma.o] Error 1

Following seems solves this issue;

Index: linux-2.6.23/drivers/dma/ioat_dma.c
===
--- linux-2.6.23.orig/drivers/dma/ioat_dma.c
+++ linux-2.6.23/drivers/dma/ioat_dma.c
@@ -260,7 +260,7 @@ static dma_cookie_t ioat1_tx_submit(stru
/* write address into NextDescriptor field of last desc in chain */
to_ioat_desc(ioat_chan->used_desc.prev)->hw->next =
first->async_tx.phys;
-   __list_splice(_chain, ioat_chan->used_desc.prev);
+   list_splice(_chain, _chan->used_desc);
 
ioat_chan->dmacount += desc_count;
ioat_chan->pending += desc_count;


Cheers
-- 
S.Çağlar Onur <[EMAIL PROTECTED]>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!
--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Mon, 2008-01-14 at 14:25 +0100, Mike Galbraith wrote:

> No, I just copied the matching paranoia while leering at it.

Actually, I can't say definitively no, only that a panic() there didn't
make keyboard blink.  Suspend may be disabling blinkies, dunno.

-Mike

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Mon, 2008-01-14 at 07:13 -0500, Gregory Haskins wrote:
> >>> On Mon, Jan 14, 2008 at  3:27 AM, in message
> <[EMAIL PROTECTED]>, Mike Galbraith <[EMAIL PROTECTED]>
> wrote: 
> 
> > On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:
> > 
> >> OK, -rt2 will take a bit more beating from me before I release it, so it
> >> might take some time to get it out (expect it out on Monday).
> > 
> > Ah, that reminds me (tests, yup) I still need the patchlet below to
> > resume from ram without black screen of death.
> 
> I had forgotten about this issue over the holidays...Sorry Mike.

I forgot about it too.  I'll likely poke at it again.

> So does that BUG_ON trip if you remove the first hunk?

No, I just copied the matching paranoia while leering at it.

-Mike

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Gregory Haskins
>>> On Mon, Jan 14, 2008 at  3:27 AM, in message
<[EMAIL PROTECTED]>, Mike Galbraith <[EMAIL PROTECTED]>
wrote: 

> On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:
> 
>> OK, -rt2 will take a bit more beating from me before I release it, so it
>> might take some time to get it out (expect it out on Monday).
> 
> Ah, that reminds me (tests, yup) I still need the patchlet below to
> resume from ram without black screen of death.

I had forgotten about this issue over the holidays...Sorry Mike.

So does that BUG_ON trip if you remove the first hunk?

> No idea why my P4 box
> seems to be the only box in the rt galaxy affected.  (haven't poked at
> it since the holidays)
> 
> Index: linux-2.6.24.git-rt1/kernel/sched_rt.c
> ===
> --- linux-2.6.24.git-rt1.orig/kernel/sched_rt.c
> +++ linux-2.6.24.git-rt1/kernel/sched_rt.c
> @@ -33,6 +33,9 @@ static inline void rt_clear_overload(str
>  
>  static void update_rt_migration(struct rq *rq)
>  {
> + if (unlikely(num_online_cpus() == 1))
> + return;
> +
>   if (rq->rt.rt_nr_migratory && (rq->rt.rt_nr_running > 1)) {
>   if (!rq->rt.overloaded) {
>   rt_set_overload(rq);
> @@ -105,8 +108,10 @@ static inline void dec_rt_tasks(struct t
>   } /* otherwise leave rq->highest prio alone */
>   } else
>   rq->rt.highest_prio = MAX_RT_PRIO;
> - if (p->nr_cpus_allowed > 1)
> + if (p->nr_cpus_allowed > 1) {
> + BUG_ON(!rq->rt.rt_nr_migratory);
>   rq->rt.rt_nr_migratory--;
> + }
>  
>   if (rq->rt.highest_prio != highest_prio)
>   cpupri_set(>rd->cpupri, rq->cpu, rq->rt.highest_prio);
> 
> 
> btw, CONFIG_INTEL_IOATDMA compile booboo
> 
>   CC  drivers/dma/ioat_dma.o
> drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
> drivers/dma/ioat_dma.c:300: error: too few arguments to function 
> ‘__list_splice’
> make[2]: *** [drivers/dma/ioat_dma.o] Error 1
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:

> OK, -rt2 will take a bit more beating from me before I release it, so it
> might take some time to get it out (expect it out on Monday).

Ah, that reminds me (tests, yup) I still need the patchlet below to
resume from ram without black screen of death.  No idea why my P4 box
seems to be the only box in the rt galaxy affected.  (haven't poked at
it since the holidays)

Index: linux-2.6.24.git-rt1/kernel/sched_rt.c
===
--- linux-2.6.24.git-rt1.orig/kernel/sched_rt.c
+++ linux-2.6.24.git-rt1/kernel/sched_rt.c
@@ -33,6 +33,9 @@ static inline void rt_clear_overload(str
 
 static void update_rt_migration(struct rq *rq)
 {
+   if (unlikely(num_online_cpus() == 1))
+   return;
+
if (rq->rt.rt_nr_migratory && (rq->rt.rt_nr_running > 1)) {
if (!rq->rt.overloaded) {
rt_set_overload(rq);
@@ -105,8 +108,10 @@ static inline void dec_rt_tasks(struct t
} /* otherwise leave rq->highest prio alone */
} else
rq->rt.highest_prio = MAX_RT_PRIO;
-   if (p->nr_cpus_allowed > 1)
+   if (p->nr_cpus_allowed > 1) {
+   BUG_ON(!rq->rt.rt_nr_migratory);
rq->rt.rt_nr_migratory--;
+   }
 
if (rq->rt.highest_prio != highest_prio)
cpupri_set(>rd->cpupri, rq->cpu, rq->rt.highest_prio);


btw, CONFIG_INTEL_IOATDMA compile booboo

  CC  drivers/dma/ioat_dma.o
drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
drivers/dma/ioat_dma.c:300: error: too few arguments to function ‘__list_splice’
make[2]: *** [drivers/dma/ioat_dma.o] Error 1


--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:

 OK, -rt2 will take a bit more beating from me before I release it, so it
 might take some time to get it out (expect it out on Monday).

Ah, that reminds me (tests, yup) I still need the patchlet below to
resume from ram without black screen of death.  No idea why my P4 box
seems to be the only box in the rt galaxy affected.  (haven't poked at
it since the holidays)

Index: linux-2.6.24.git-rt1/kernel/sched_rt.c
===
--- linux-2.6.24.git-rt1.orig/kernel/sched_rt.c
+++ linux-2.6.24.git-rt1/kernel/sched_rt.c
@@ -33,6 +33,9 @@ static inline void rt_clear_overload(str
 
 static void update_rt_migration(struct rq *rq)
 {
+   if (unlikely(num_online_cpus() == 1))
+   return;
+
if (rq-rt.rt_nr_migratory  (rq-rt.rt_nr_running  1)) {
if (!rq-rt.overloaded) {
rt_set_overload(rq);
@@ -105,8 +108,10 @@ static inline void dec_rt_tasks(struct t
} /* otherwise leave rq-highest prio alone */
} else
rq-rt.highest_prio = MAX_RT_PRIO;
-   if (p-nr_cpus_allowed  1)
+   if (p-nr_cpus_allowed  1) {
+   BUG_ON(!rq-rt.rt_nr_migratory);
rq-rt.rt_nr_migratory--;
+   }
 
if (rq-rt.highest_prio != highest_prio)
cpupri_set(rq-rd-cpupri, rq-cpu, rq-rt.highest_prio);


btw, CONFIG_INTEL_IOATDMA compile booboo

  CC  drivers/dma/ioat_dma.o
drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
drivers/dma/ioat_dma.c:300: error: too few arguments to function ‘__list_splice’
make[2]: *** [drivers/dma/ioat_dma.o] Error 1


--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Gregory Haskins
 On Mon, Jan 14, 2008 at  3:27 AM, in message
[EMAIL PROTECTED], Mike Galbraith [EMAIL PROTECTED]
wrote: 

 On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:
 
 OK, -rt2 will take a bit more beating from me before I release it, so it
 might take some time to get it out (expect it out on Monday).
 
 Ah, that reminds me (tests, yup) I still need the patchlet below to
 resume from ram without black screen of death.

I had forgotten about this issue over the holidays...Sorry Mike.

So does that BUG_ON trip if you remove the first hunk?

 No idea why my P4 box
 seems to be the only box in the rt galaxy affected.  (haven't poked at
 it since the holidays)
 
 Index: linux-2.6.24.git-rt1/kernel/sched_rt.c
 ===
 --- linux-2.6.24.git-rt1.orig/kernel/sched_rt.c
 +++ linux-2.6.24.git-rt1/kernel/sched_rt.c
 @@ -33,6 +33,9 @@ static inline void rt_clear_overload(str
  
  static void update_rt_migration(struct rq *rq)
  {
 + if (unlikely(num_online_cpus() == 1))
 + return;
 +
   if (rq-rt.rt_nr_migratory  (rq-rt.rt_nr_running  1)) {
   if (!rq-rt.overloaded) {
   rt_set_overload(rq);
 @@ -105,8 +108,10 @@ static inline void dec_rt_tasks(struct t
   } /* otherwise leave rq-highest prio alone */
   } else
   rq-rt.highest_prio = MAX_RT_PRIO;
 - if (p-nr_cpus_allowed  1)
 + if (p-nr_cpus_allowed  1) {
 + BUG_ON(!rq-rt.rt_nr_migratory);
   rq-rt.rt_nr_migratory--;
 + }
  
   if (rq-rt.highest_prio != highest_prio)
   cpupri_set(rq-rd-cpupri, rq-cpu, rq-rt.highest_prio);
 
 
 btw, CONFIG_INTEL_IOATDMA compile booboo
 
   CC  drivers/dma/ioat_dma.o
 drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
 drivers/dma/ioat_dma.c:300: error: too few arguments to function 
 ‘__list_splice’
 make[2]: *** [drivers/dma/ioat_dma.o] Error 1
 
 
 -
 To unsubscribe from this list: send the line unsubscribe linux-rt-users in
 the body of a message to [EMAIL PROTECTED]
 More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Mon, 2008-01-14 at 07:13 -0500, Gregory Haskins wrote:
  On Mon, Jan 14, 2008 at  3:27 AM, in message
 [EMAIL PROTECTED], Mike Galbraith [EMAIL PROTECTED]
 wrote: 
 
  On Sun, 2008-01-13 at 15:54 -0500, Steven Rostedt wrote:
  
  OK, -rt2 will take a bit more beating from me before I release it, so it
  might take some time to get it out (expect it out on Monday).
  
  Ah, that reminds me (tests, yup) I still need the patchlet below to
  resume from ram without black screen of death.
 
 I had forgotten about this issue over the holidays...Sorry Mike.

I forgot about it too.  I'll likely poke at it again.

 So does that BUG_ON trip if you remove the first hunk?

No, I just copied the matching paranoia while leering at it.

-Mike

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Mike Galbraith

On Mon, 2008-01-14 at 14:25 +0100, Mike Galbraith wrote:

 No, I just copied the matching paranoia while leering at it.

Actually, I can't say definitively no, only that a panic() there didn't
make keyboard blink.  Suspend may be disabling blinkies, dunno.

-Mike

--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Steven Rostedt


On Mon, 14 Jan 2008, [utf-8] S.�^Ga�^_lar Onur wrote:


 Following seems solves this issue;

 Index: linux-2.6.23/drivers/dma/ioat_dma.c
 ===
 --- linux-2.6.23.orig/drivers/dma/ioat_dma.c
 +++ linux-2.6.23/drivers/dma/ioat_dma.c
 @@ -260,7 +260,7 @@ static dma_cookie_t ioat1_tx_submit(stru
   /* write address into NextDescriptor field of last desc in chain */
   to_ioat_desc(ioat_chan-used_desc.prev)-hw-next =
   first-async_tx.phys;
 - __list_splice(new_chain, ioat_chan-used_desc.prev);
 + list_splice(new_chain, ioat_chan-used_desc);

Thanks, but I already fixed it. It requires a list_splice_tail.

-- Steve


   ioat_chan-dmacount += desc_count;
   ioat_chan-pending += desc_count;



--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread S.Çağlar Onur
Hi;

14 Oca 2008 Pts tarihinde, Mike Galbraith şunları yazmıştı: 
 btw, CONFIG_INTEL_IOATDMA compile booboo
 
   CC  drivers/dma/ioat_dma.o
 drivers/dma/ioat_dma.c: In function ‘ioat1_tx_submit’:
 drivers/dma/ioat_dma.c:300: error: too few arguments to function 
 ‘__list_splice’
 make[2]: *** [drivers/dma/ioat_dma.o] Error 1

Following seems solves this issue;

Index: linux-2.6.23/drivers/dma/ioat_dma.c
===
--- linux-2.6.23.orig/drivers/dma/ioat_dma.c
+++ linux-2.6.23/drivers/dma/ioat_dma.c
@@ -260,7 +260,7 @@ static dma_cookie_t ioat1_tx_submit(stru
/* write address into NextDescriptor field of last desc in chain */
to_ioat_desc(ioat_chan-used_desc.prev)-hw-next =
first-async_tx.phys;
-   __list_splice(new_chain, ioat_chan-used_desc.prev);
+   list_splice(new_chain, ioat_chan-used_desc);
 
ioat_chan-dmacount += desc_count;
ioat_chan-pending += desc_count;


Cheers
-- 
S.Çağlar Onur [EMAIL PROTECTED]
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!
--
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/


Re: 2.6.24-rc7-rt1

2008-01-14 Thread Robert Schwebel
On Sun, Jan 13, 2008 at 03:48:33PM -0500, Steven Rostedt wrote:
  Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
  http://www.pengutronix.de/oselas/realtime/results/20080113-1/

 That doesn't look too bad. Or is over a 100us not good for that box?

I think it's ok. However, Wolfgang still sees strange long delays on his
Icecube, so it was mainly for comparism.

 Also is it SMP?

Nope, UP. This one:

http://www.phytec.de/phytec/32-bit_module/phycore-mpc5200b-tiny.html

The CPU is basically a 603e core plus peripherals.

 Yeah, I didn't make any attempt to fix latency_tracing for PPC on this
 release. I expected as much. I do have a couple of PPC boxes that I can
 play with, and I'll see if I can get that working too before -rt2. But I
 want to get a stable x86 release out fast.

Yup, great, thanks!

Robert
-- 
 Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de
 Pengutronix - Linux Solutions for Science and Industry
   Handelsregister:  Amtsgericht Hildesheim, HRA 2686
 Hannoversche Str. 2, 31134 Hildesheim, Germany
   Phone: +49-5121-206917-0 |  Fax: +49-5121-206917-9

--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Mark Knecht
On Jan 13, 2008 11:00 AM, Steven Rostedt <[EMAIL PROTECTED]> wrote:
> We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
> downloaded from the location:
>
>   http://rt.et.redhat.com/download/
>

Up and running here. No significant testing but no problems building
it and no obvious regressions from 2.6.24-rc2-rt1.

[EMAIL PROTECTED] ~ $ uname -a
Linux lightning 2.6.24-rc7-rt1 #1 PREEMPT RT Sun Jan 13 14:41:21 PST
2008 x86_64 AMD Athlon(tm) 64 Processor 3000+ AuthenticAMD GNU/Linux
[EMAIL PROTECTED] ~ $

- Mark
--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Steven Rostedt

On Sun, 13 Jan 2008, Mariusz Kozlowski wrote:
>
> But then there is also trace_hardirqs_on_caller() in kernel/latency_trace.c
> and both are not static.
>

Servers me right for releasing without testing more than one config. I
compiled for x86_64, i386 and PPC 32 and 64, but all without any tracing
on. And I should have since I modified that a bit.

OK, -rt2 will take a bit more beating from me before I release it, so it
might take some time to get it out (expect it out on Monday).

-- Steve
--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Steven Rostedt

On Sun, 13 Jan 2008, Robert Schwebel wrote:

> On Sun, Jan 13, 2008 at 02:00:01PM -0500, Steven Rostedt wrote:
> > We are pleased to announce the 2.6.24-rc7-rt1 tree
>
> Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
> http://www.pengutronix.de/oselas/realtime/results/20080113-1/

That doesn't look too bad. Or is over a 100us not good for that box?

Also is it SMP?


>
> However, when I try to switch on the latency tracer, it ends with the
> warnings below. I've added early_printk() stubs in order to make it
> link at all.

Yeah, I didn't make any attempt to fix latency_tracing for PPC on this
release. I expected as much. I do have a couple of PPC boxes that I can
play with, and I'll see if I can get that working too before -rt2. But I
want to get a stable x86 release out fast.

Thanks,

-- Steve

--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Mariusz Kozlowski
Hello,

> We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
> downloaded from the location:
> 
>   http://rt.et.redhat.com/download/

  CC  kernel/lockdep.o
kernel/lockdep.c: In function 'trace_hardirqs_on':
kernel/lockdep.c:2068: error: too many arguments to function 
'trace_hardirqs_on_caller'
make[1]: *** [kernel/lockdep.o] Error 1
make: *** [kernel] Error 2

--- linux-2.6.24-rc7-rt1.orig/kernel/lockdep.c  2008-01-11 21:16:46.0 
-0500
+++ linux-2.6.24-rc7-rt1/kernel/lockdep.c   2008-01-11 21:18:10.0 
-0500

[... snip ...]

 /*
  * Hardirqs will be enabled:
  */
-void trace_hardirqs_on(void)
+notrace void trace_hardirqs_on_caller(void) <--- this should have 'unsigned 
long a0'
 {
struct task_struct *curr = current;
unsigned long ip;
@@ -2050,6 +2059,13 @@ void trace_hardirqs_on(void)
curr->hardirq_enable_ip = ip;
curr->hardirq_enable_event = ++curr->irq_events;
debug_atomic_inc(_on_events);
+#ifdef CONFIG_CRITICAL_IRQSOFF_TIMING
+   time_hardirqs_on(a0, 0 /* CALLER_ADDR1 */); <--- a0 is used here
+#endif
+}
+
+void notrace trace_hardirqs_on(void) {
+   trace_hardirqs_on_caller(CALLER_ADDR0);
 }

But then there is also trace_hardirqs_on_caller() in kernel/latency_trace.c 
and both are not static.

Regards,

Mariusz
--
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/


Re: 2.6.24-rc7-rt1: macro "put_cpu_var" passed 2 arguments, but takes just 1

2008-01-13 Thread Steven Rostedt


On Sun, 13 Jan 2008, Mariusz Kozlowski wrote:

> [... snip ...]
>
> @@ -56,12 +64,13 @@ static inline void __quicklist_free(int
> struct page *page)
>  {
> struct quicklist *q;
> +   int cpu;
>
> -   q = _cpu_var(quicklist)[nr];
> +   q = _cpu_var_locked(quicklist, )[nr];
> *(void **)p = q->page;
> q->page = p;
> q->nr_pages++;
> -   put_cpu_var(quicklist);
> +   put_cpu_var(quicklist, cpu); <- should that be 
> put_cpu_var_locked()?
>  }
>

Ouch! 

*** static inline void __quicklist_free(int
*** 76,86 
return;
}

-   q = _cpu_var(quicklist)[nr];
*(void **)p = q->page;
q->page = p;
q->nr_pages++;
-   put_cpu_var(quicklist);
  }

  static inline void quicklist_free(int nr, void (*dtor)(void *), void *pp)
--- 73,83 
return;
}

+   q = _cpu_var_locked(quicklist, )[nr];
*(void **)p = q->page;
q->page = p;
q->nr_pages++;
+   put_cpu_var_locked(quicklist, cpu);
  }

  static inline void quicklist_free(int nr, void (*dtor)(void *), void *pp)


Darn, that was my fault. OK, will release a -rt2 soon.

Thanks,

-- Steve

--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Robert Schwebel
On Sun, Jan 13, 2008 at 02:00:01PM -0500, Steven Rostedt wrote:
> We are pleased to announce the 2.6.24-rc7-rt1 tree

Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
http://www.pengutronix.de/oselas/realtime/results/20080113-1/

However, when I try to switch on the latency tracer, it ends with the
warnings below. I've added early_printk() stubs in order to make it
link at all.

In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:76:1: warning: "CLONE_VM" redefined
In file included from include/linux/security.h:32,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/sched.h:8:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:77:1: warning: "CLONE_UNTRACED" redefined
In file included from include/linux/security.h:32,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/sched.h:22:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:88:1: warning: "TASK_SIZE" redefined
In file included from include/asm/thread_info.h:25,
 from include/linux/thread_info.h:34,
 from include/linux/preempt.h:9,
 from include/linux/spinlock.h:85,
 from include/linux/mmzone.h:7,
 from include/linux/gfp.h:4,
 from include/linux/mm.h:8,
 from kernel/latency_trace.c:7:
include/asm/processor.h:84:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:112:1: warning: "NSEC_PER_SEC" redefined
In file included from include/linux/stat.h:60,
 from include/linux/fs.h:278,
 from include/linux/security.h:25,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/time.h:37:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:115:1: warning: "PGD_TABLE_SIZE" redefined
In file included from include/asm/pgtable.h:15,
 from include/linux/mm.h:38,
 from kernel/latency_trace.c:7:
include/asm/pgtable-ppc32.h:91:1: warning: this is the location of the previous 
definition
  CC [M]  fs/ext2/balloc.o
kernel/latency_trace.c: In function 'check_wakeup_timing':
kernel/latency_trace.c:2240: warning: format '%016lx' expects type 'long 
unsigned int', but argument 2 has type 'cycle_t'

Robert
-- 
 Robert Schwebel  |  http://www.pengutronix.de
 OSADL Testlab @ Pengutronix  |  http://www.osadl.org

--
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/


Re: 2.6.24-rc7-rt1: macro "put_cpu_var" passed 2 arguments, but takes just 1

2008-01-13 Thread Mariusz Kozlowski
Hello,

> We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
> downloaded from the location:
> 
>   http://rt.et.redhat.com/download/

  CC  arch/x86/mm/init_32.o
In file included from include/asm-generic/tlb.h:17,
 from include/asm/tlb.h:9,
 from arch/x86/mm/init_32.c:43:
include/linux/quicklist.h:73:28: error: macro "put_cpu_var" passed 2 arguments, 
but takes just 1
In file included from include/asm-generic/tlb.h:17,
 from include/asm/tlb.h:9,
 from arch/x86/mm/init_32.c:43:
include/linux/quicklist.h: In function '__quicklist_free':
include/linux/quicklist.h:73: error: 'put_cpu_var' undeclared (first use in 
this function)
include/linux/quicklist.h:73: error: (Each undeclared identifier is reported 
only once
include/linux/quicklist.h:73: error: for each function it appears in.)
make[1]: *** [arch/x86/mm/init_32.o] Error 1
make: *** [arch/x86/mm] Error 2

--- linux-2.6.24-rc7-rt1.orig/include/linux/quicklist.h 2008-01-11 
21:16:22.0 -0500
+++ linux-2.6.24-rc7-rt1/include/linux/quicklist.h  2008-01-11 
21:18:08.0 -0500
@@ -18,7 +18,7 @@ struct quicklist {
int nr_pages;
 };

[... snip ...]

@@ -56,12 +64,13 @@ static inline void __quicklist_free(int 
struct page *page)
 {
struct quicklist *q;
+   int cpu;

-   q = _cpu_var(quicklist)[nr];
+   q = _cpu_var_locked(quicklist, )[nr];
*(void **)p = q->page;
q->page = p;
q->nr_pages++;
-   put_cpu_var(quicklist);
+   put_cpu_var(quicklist, cpu); <- should that be 
put_cpu_var_locked()?
 }

Regards,

Mariusz
--
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/


Re: 2.6.24-rc7-rt1: macro put_cpu_var passed 2 arguments, but takes just 1

2008-01-13 Thread Mariusz Kozlowski
Hello,

 We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
 downloaded from the location:
 
   http://rt.et.redhat.com/download/

  CC  arch/x86/mm/init_32.o
In file included from include/asm-generic/tlb.h:17,
 from include/asm/tlb.h:9,
 from arch/x86/mm/init_32.c:43:
include/linux/quicklist.h:73:28: error: macro put_cpu_var passed 2 arguments, 
but takes just 1
In file included from include/asm-generic/tlb.h:17,
 from include/asm/tlb.h:9,
 from arch/x86/mm/init_32.c:43:
include/linux/quicklist.h: In function '__quicklist_free':
include/linux/quicklist.h:73: error: 'put_cpu_var' undeclared (first use in 
this function)
include/linux/quicklist.h:73: error: (Each undeclared identifier is reported 
only once
include/linux/quicklist.h:73: error: for each function it appears in.)
make[1]: *** [arch/x86/mm/init_32.o] Error 1
make: *** [arch/x86/mm] Error 2

--- linux-2.6.24-rc7-rt1.orig/include/linux/quicklist.h 2008-01-11 
21:16:22.0 -0500
+++ linux-2.6.24-rc7-rt1/include/linux/quicklist.h  2008-01-11 
21:18:08.0 -0500
@@ -18,7 +18,7 @@ struct quicklist {
int nr_pages;
 };

[... snip ...]

@@ -56,12 +64,13 @@ static inline void __quicklist_free(int 
struct page *page)
 {
struct quicklist *q;
+   int cpu;

-   q = get_cpu_var(quicklist)[nr];
+   q = get_cpu_var_locked(quicklist, cpu)[nr];
*(void **)p = q-page;
q-page = p;
q-nr_pages++;
-   put_cpu_var(quicklist);
+   put_cpu_var(quicklist, cpu); - should that be 
put_cpu_var_locked()?
 }

Regards,

Mariusz
--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Robert Schwebel
On Sun, Jan 13, 2008 at 02:00:01PM -0500, Steven Rostedt wrote:
 We are pleased to announce the 2.6.24-rc7-rt1 tree

Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
http://www.pengutronix.de/oselas/realtime/results/20080113-1/

However, when I try to switch on the latency tracer, it ends with the
warnings below. I've added early_printk() stubs in order to make it
link at all.

In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:76:1: warning: CLONE_VM redefined
In file included from include/linux/security.h:32,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/sched.h:8:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:77:1: warning: CLONE_UNTRACED redefined
In file included from include/linux/security.h:32,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/sched.h:22:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:88:1: warning: TASK_SIZE redefined
In file included from include/asm/thread_info.h:25,
 from include/linux/thread_info.h:34,
 from include/linux/preempt.h:9,
 from include/linux/spinlock.h:85,
 from include/linux/mmzone.h:7,
 from include/linux/gfp.h:4,
 from include/linux/mm.h:8,
 from kernel/latency_trace.c:7:
include/asm/processor.h:84:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:112:1: warning: NSEC_PER_SEC redefined
In file included from include/linux/stat.h:60,
 from include/linux/fs.h:278,
 from include/linux/security.h:25,
 from include/linux/mm.h:15,
 from kernel/latency_trace.c:7:
include/linux/time.h:37:1: warning: this is the location of the previous 
definition
In file included from kernel/latency_trace.c:27:
include/asm/asm-offsets.h:115:1: warning: PGD_TABLE_SIZE redefined
In file included from include/asm/pgtable.h:15,
 from include/linux/mm.h:38,
 from kernel/latency_trace.c:7:
include/asm/pgtable-ppc32.h:91:1: warning: this is the location of the previous 
definition
  CC [M]  fs/ext2/balloc.o
kernel/latency_trace.c: In function 'check_wakeup_timing':
kernel/latency_trace.c:2240: warning: format '%016lx' expects type 'long 
unsigned int', but argument 2 has type 'cycle_t'

Robert
-- 
 Robert Schwebel  |  http://www.pengutronix.de
 OSADL Testlab @ Pengutronix  |  http://www.osadl.org

--
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/


Re: 2.6.24-rc7-rt1: macro put_cpu_var passed 2 arguments, but takes just 1

2008-01-13 Thread Steven Rostedt


On Sun, 13 Jan 2008, Mariusz Kozlowski wrote:

 [... snip ...]

 @@ -56,12 +64,13 @@ static inline void __quicklist_free(int
 struct page *page)
  {
 struct quicklist *q;
 +   int cpu;

 -   q = get_cpu_var(quicklist)[nr];
 +   q = get_cpu_var_locked(quicklist, cpu)[nr];
 *(void **)p = q-page;
 q-page = p;
 q-nr_pages++;
 -   put_cpu_var(quicklist);
 +   put_cpu_var(quicklist, cpu); - should that be 
 put_cpu_var_locked()?
  }


Ouch! looks at rejs

*** static inline void __quicklist_free(int
*** 76,86 
return;
}

-   q = get_cpu_var(quicklist)[nr];
*(void **)p = q-page;
q-page = p;
q-nr_pages++;
-   put_cpu_var(quicklist);
  }

  static inline void quicklist_free(int nr, void (*dtor)(void *), void *pp)
--- 73,83 
return;
}

+   q = get_cpu_var_locked(quicklist, cpu)[nr];
*(void **)p = q-page;
q-page = p;
q-nr_pages++;
+   put_cpu_var_locked(quicklist, cpu);
  }

  static inline void quicklist_free(int nr, void (*dtor)(void *), void *pp)


Darn, that was my fault. OK, will release a -rt2 soon.

Thanks,

-- Steve

--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Mariusz Kozlowski
Hello,

 We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
 downloaded from the location:
 
   http://rt.et.redhat.com/download/

  CC  kernel/lockdep.o
kernel/lockdep.c: In function 'trace_hardirqs_on':
kernel/lockdep.c:2068: error: too many arguments to function 
'trace_hardirqs_on_caller'
make[1]: *** [kernel/lockdep.o] Error 1
make: *** [kernel] Error 2

--- linux-2.6.24-rc7-rt1.orig/kernel/lockdep.c  2008-01-11 21:16:46.0 
-0500
+++ linux-2.6.24-rc7-rt1/kernel/lockdep.c   2008-01-11 21:18:10.0 
-0500

[... snip ...]

 /*
  * Hardirqs will be enabled:
  */
-void trace_hardirqs_on(void)
+notrace void trace_hardirqs_on_caller(void) --- this should have 'unsigned 
long a0'
 {
struct task_struct *curr = current;
unsigned long ip;
@@ -2050,6 +2059,13 @@ void trace_hardirqs_on(void)
curr-hardirq_enable_ip = ip;
curr-hardirq_enable_event = ++curr-irq_events;
debug_atomic_inc(hardirqs_on_events);
+#ifdef CONFIG_CRITICAL_IRQSOFF_TIMING
+   time_hardirqs_on(a0, 0 /* CALLER_ADDR1 */); --- a0 is used here
+#endif
+}
+
+void notrace trace_hardirqs_on(void) {
+   trace_hardirqs_on_caller(CALLER_ADDR0);
 }

But then there is also trace_hardirqs_on_caller() in kernel/latency_trace.c 
and both are not static.

Regards,

Mariusz
--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Steven Rostedt

On Sun, 13 Jan 2008, Robert Schwebel wrote:

 On Sun, Jan 13, 2008 at 02:00:01PM -0500, Steven Rostedt wrote:
  We are pleased to announce the 2.6.24-rc7-rt1 tree

 Works fine on phyCORE-MPC5200B-tiny, here are the latest results:
 http://www.pengutronix.de/oselas/realtime/results/20080113-1/

That doesn't look too bad. Or is over a 100us not good for that box?

Also is it SMP?



 However, when I try to switch on the latency tracer, it ends with the
 warnings below. I've added early_printk() stubs in order to make it
 link at all.

Yeah, I didn't make any attempt to fix latency_tracing for PPC on this
release. I expected as much. I do have a couple of PPC boxes that I can
play with, and I'll see if I can get that working too before -rt2. But I
want to get a stable x86 release out fast.

Thanks,

-- Steve

--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Steven Rostedt

On Sun, 13 Jan 2008, Mariusz Kozlowski wrote:

 But then there is also trace_hardirqs_on_caller() in kernel/latency_trace.c
 and both are not static.


Servers me right for releasing without testing more than one config. I
compiled for x86_64, i386 and PPC 32 and 64, but all without any tracing
on. And I should have since I modified that a bit.

OK, -rt2 will take a bit more beating from me before I release it, so it
might take some time to get it out (expect it out on Monday).

-- Steve
--
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/


Re: 2.6.24-rc7-rt1

2008-01-13 Thread Mark Knecht
On Jan 13, 2008 11:00 AM, Steven Rostedt [EMAIL PROTECTED] wrote:
 We are pleased to announce the 2.6.24-rc7-rt1 tree, which can be
 downloaded from the location:

   http://rt.et.redhat.com/download/


Up and running here. No significant testing but no problems building
it and no obvious regressions from 2.6.24-rc2-rt1.

[EMAIL PROTECTED] ~ $ uname -a
Linux lightning 2.6.24-rc7-rt1 #1 PREEMPT RT Sun Jan 13 14:41:21 PST
2008 x86_64 AMD Athlon(tm) 64 Processor 3000+ AuthenticAMD GNU/Linux
[EMAIL PROTECTED] ~ $

- Mark
--
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/