Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-25 Thread Christoph Hellwig
On Thu, Apr 24, 2008 at 12:37:50AM -0500, Kumar Gala wrote:
  config IRQSTACKS
   bool Use separate kernel stacks when processing interrupts
 - depends on PPC64

Why do we have this as a user-selectable option?  It should be on by
default on 32 or 64bit.

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-25 Thread Benjamin Herrenschmidt

On Fri, 2008-04-25 at 09:23 +0200, Christoph Hellwig wrote:
 On Thu, Apr 24, 2008 at 12:37:50AM -0500, Kumar Gala wrote:
   config IRQSTACKS
  bool Use separate kernel stacks when processing interrupts
  -   depends on PPC64
 
 Why do we have this as a user-selectable option?  It should be on by
 default on 32 or 64bit.

History maybe ? In the early days it was a bit experimental (we had a
couple of issues that popped up with some thread flags not being
properly recovered etc...). Nowadays, I agree it should not be an
option.

Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-25 Thread Kumar Gala


On Apr 25, 2008, at 8:03 AM, Benjamin Herrenschmidt wrote:


On Fri, 2008-04-25 at 09:23 +0200, Christoph Hellwig wrote:

On Thu, Apr 24, 2008 at 12:37:50AM -0500, Kumar Gala wrote:

config IRQSTACKS
bool Use separate kernel stacks when processing interrupts
-   depends on PPC64


Why do we have this as a user-selectable option?  It should be on by
default on 32 or 64bit.


History maybe ? In the early days it was a bit experimental (we  
had a

couple of issues that popped up with some thread flags not being
properly recovered etc...). Nowadays, I agree it should not be an
option.


for some reason I felt that it was pretty much required on ppc64 when  
I did the port over to ppc32.


Do we think we want to poke Paul to get this in for v2.6.26 so we can  
get it some more testing on all the ppc32 systems?


- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-25 Thread Paul Mackerras
Kumar Gala writes:

 Do we think we want to poke Paul to get this in for v2.6.26 so we can  
 get it some more testing on all the ppc32 systems?

It's not going in 2.6.26, since it's a pretty substantial change and
it was first seen half-way through the merge window...

Paul.
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-24 Thread Benjamin Herrenschmidt

On Thu, 2008-04-24 at 00:37 -0500, Kumar Gala wrote:
 +   /*
 +* interrupt stacks must be under 256MB, we cannot afford to
 take
 +* SLB misses on them.
 +*/
 +   for_each_possible_cpu(i) {
 +   softirq_ctx[i] = (struct thread_info *)
 +   __va(lmb_alloc_base(THREAD_SIZE,
 +   THREAD_SIZE, 0x1000));
 +   hardirq_ctx[i] = (struct thread_info *)
 +   __va(lmb_alloc_base(THREAD_SIZE,
 +   THREAD_SIZE, 0x1000));
 +   }
 +

The comment is a bit bogus :-) (about SLB misses). lowmem is your limit
I think. Also, why not share the code with ppc64 ?

Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-24 Thread Kumar Gala


On Apr 24, 2008, at 2:18 AM, Benjamin Herrenschmidt wrote:


On Thu, 2008-04-24 at 00:37 -0500, Kumar Gala wrote:

+   /*
+* interrupt stacks must be under 256MB, we cannot afford to
take
+* SLB misses on them.
+*/
+   for_each_possible_cpu(i) {
+   softirq_ctx[i] = (struct thread_info *)
+   __va(lmb_alloc_base(THREAD_SIZE,
+   THREAD_SIZE,  
0x1000));

+   hardirq_ctx[i] = (struct thread_info *)
+   __va(lmb_alloc_base(THREAD_SIZE,
+   THREAD_SIZE,  
0x1000));

+   }
+


The comment is a bit bogus :-) (about SLB misses). lowmem is your  
limit

I think. Also, why not share the code with ppc64 ?


I'm going to change it to be just lmb_alloc() so it will be difficult  
to share with ppc64 (other than w/an ifdef).


- k
___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-24 Thread Benjamin Herrenschmidt

On Thu, 2008-04-24 at 07:59 -0500, Kumar Gala wrote:
 I'm going to change it to be just lmb_alloc() so it will be difficult  
 to share with ppc64 (other than w/an ifdef).

Unless we change lmb_alloc to just be an lmb_alloc_base with 0 and have
the later do the right thing ?

You don't put highmem in the LMBs ? If you do, we do need to have the
max lowmem there no ?

Ben.


___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


Re: [RFC][WIP][PATCH] Add IRQSTACKS to ppc32

2008-04-24 Thread Kumar Gala


On Apr 24, 2008, at 9:53 AM, Benjamin Herrenschmidt wrote:


On Thu, 2008-04-24 at 07:59 -0500, Kumar Gala wrote:

I'm going to change it to be just lmb_alloc() so it will be difficult
to share with ppc64 (other than w/an ifdef).


Unless we change lmb_alloc to just be an lmb_alloc_base with 0 and  
have

the later do the right thing ?


don't follow.  Look at the real patch and comment on that.


You don't put highmem in the LMBs ? If you do, we do need to have the
max lowmem there no ?


we restrict lmb alloc via LMB_REAL_LIMIT in include/asm-powerpc/lmb.h

- k

___
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev