All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King - ARM Linux admin <linux@armlinux.org.uk>
To: Arnd Bergmann <arnd@kernel.org>
Cc: v.narang@samsung.com, a.sahrawat@samsung.com,
	Andrew Morton <akpm@linux-foundation.org>,
	Marc Zyngier <maz@kernel.org>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Vincent Whitchurch <vincent.whitchurch@axis.com>,
	Nick Desaulniers <ndesaulniers@google.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Dmitry Safonov <0x7f454c46@gmail.com>,
	Maninder Singh <maninder1.s@samsung.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Nathan Huckleberry <nhuck@google.com>,
	Will Deacon <will@kernel.org>, Jian Cai <caij2003@gmail.com>,
	Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 2/3] arm: introduce IRQ stacks
Date: Wed, 21 Oct 2020 13:45:42 +0100	[thread overview]
Message-ID: <20201021124542.GL1551@shell.armlinux.org.uk> (raw)
In-Reply-To: <CAK8P3a3eZjBVSuhv=Cx4aYC+E9tex+BbJH1b6YyMMief-mO7kQ@mail.gmail.com>

On Wed, Oct 21, 2020 at 02:42:48PM +0200, Arnd Bergmann wrote:
> (also resending this reply from @kernel.org)
> 
> On Fri, Oct 16, 2020 at 12:19 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > On Thu, Oct 8, 2020 at 9:20 AM Maninder Singh <maninder1.s@samsung.com> wrote:
> > >
> > > This patch adds code for switching to IRQ stack.
> > > IRQ stack and Kernel SVC stack have below design.
> > >
> > > IRQ STACK:-
> > >                     ------------ IRQ stack top
> > >                     |          |
> > >                     ------------
> > >                     .          .
> > >                     .          .
> > >                     .          .
> > >                     ------------
> > >                     |    sp    | <- irq_stack_base + 0x8
> > >                     ------------
> > >                     |    fp    | <- irq_stack_base + 0x4
> > >                     ------------
> > >                     |tinfo_ptr | /* pointer to thread info */
> > > irq_stack_ptr -->   ------------ IRQ stack base
> > >
> > > Kernel SVC stack:-
> > >                     ------------  Kernel stack top
> > >                     |          |
> > >                     ------------
> > >                     .          .
> > >                     .          .
> > >                     .          .
> > >                     ------------
> > >                     |          |
> > >                     |          |
> > >                     ------------
> > >                     |tinfo_ptr |  /* pointer to thread info */
> > >                     ------------ Kernel stack base
> >
> > The extra indirection doesn't look great, and I don't see any of the
> > other architectures need that. Since we can access percpu data
> > without going through thread_info, maybe doing the same as
> > x86 would work here:
> >
> > - define 'current' as 'this_cpu_read_stable(current_task);'
> > - convert to CONFIG_THREAD_INFO_IN_TASK

That means we need to also code that up in assembly - remember, we
need to access thread_info from assembly code.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Russell King - ARM Linux admin <linux@armlinux.org.uk>
To: Arnd Bergmann <arnd@kernel.org>
Cc: Maninder Singh <maninder1.s@samsung.com>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Jian Cai <caij2003@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Marc Zyngier <maz@kernel.org>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Vincent Whitchurch <vincent.whitchurch@axis.com>,
	Nathan Huckleberry <nhuck@google.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Dmitry Safonov <0x7f454c46@gmail.com>,
	Will Deacon <will@kernel.org>,
	v.narang@samsung.com, a.sahrawat@samsung.com,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 2/3] arm: introduce IRQ stacks
Date: Wed, 21 Oct 2020 13:45:42 +0100	[thread overview]
Message-ID: <20201021124542.GL1551@shell.armlinux.org.uk> (raw)
In-Reply-To: <CAK8P3a3eZjBVSuhv=Cx4aYC+E9tex+BbJH1b6YyMMief-mO7kQ@mail.gmail.com>

On Wed, Oct 21, 2020 at 02:42:48PM +0200, Arnd Bergmann wrote:
> (also resending this reply from @kernel.org)
> 
> On Fri, Oct 16, 2020 at 12:19 PM Arnd Bergmann <arnd@arndb.de> wrote:
> > On Thu, Oct 8, 2020 at 9:20 AM Maninder Singh <maninder1.s@samsung.com> wrote:
> > >
> > > This patch adds code for switching to IRQ stack.
> > > IRQ stack and Kernel SVC stack have below design.
> > >
> > > IRQ STACK:-
> > >                     ------------ IRQ stack top
> > >                     |          |
> > >                     ------------
> > >                     .          .
> > >                     .          .
> > >                     .          .
> > >                     ------------
> > >                     |    sp    | <- irq_stack_base + 0x8
> > >                     ------------
> > >                     |    fp    | <- irq_stack_base + 0x4
> > >                     ------------
> > >                     |tinfo_ptr | /* pointer to thread info */
> > > irq_stack_ptr -->   ------------ IRQ stack base
> > >
> > > Kernel SVC stack:-
> > >                     ------------  Kernel stack top
> > >                     |          |
> > >                     ------------
> > >                     .          .
> > >                     .          .
> > >                     .          .
> > >                     ------------
> > >                     |          |
> > >                     |          |
> > >                     ------------
> > >                     |tinfo_ptr |  /* pointer to thread info */
> > >                     ------------ Kernel stack base
> >
> > The extra indirection doesn't look great, and I don't see any of the
> > other architectures need that. Since we can access percpu data
> > without going through thread_info, maybe doing the same as
> > x86 would work here:
> >
> > - define 'current' as 'this_cpu_read_stable(current_task);'
> > - convert to CONFIG_THREAD_INFO_IN_TASK

That means we need to also code that up in assembly - remember, we
need to access thread_info from assembly code.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!

  reply	other threads:[~2020-10-21 12:47 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20201008071628epcas5p24d196a6023a47a3b0bfa7b7f231ec811@epcas5p2.samsung.com>
2020-10-08  7:15 ` [PATCH 0/3] IRQ stack support for ARM Maninder Singh
2020-10-08  7:15   ` Maninder Singh
2020-10-08  7:15   ` [PATCH 1/3] arm: introduce self pointer in thread info Maninder Singh
2020-10-08  7:15     ` Maninder Singh
2020-10-08  7:15   ` [PATCH 2/3] arm: introduce IRQ stacks Maninder Singh
2020-10-08  7:15     ` Maninder Singh
     [not found]     ` <CAK8P3a2RYeNiTy9QmwFVKtFifXxWc9XfAT6ThPoSH9wGYsKGpA@mail.gmail.com>
2020-10-21 12:42       ` Arnd Bergmann
2020-10-21 12:42         ` Arnd Bergmann
2020-10-21 12:45         ` Russell King - ARM Linux admin [this message]
2020-10-21 12:45           ` Russell King - ARM Linux admin
2020-10-21 12:55           ` Arnd Bergmann
2020-10-21 12:55             ` Arnd Bergmann
2020-10-21 12:57           ` Russell King - ARM Linux admin
2020-10-21 12:57             ` Russell King - ARM Linux admin
2020-10-21 13:46             ` Vaneet Narang
2020-10-21 13:46               ` Vaneet Narang
2020-10-21 15:59             ` Arnd Bergmann
2020-10-21 15:59               ` Arnd Bergmann
2020-11-09 14:45               ` Tony Lindgren
2020-11-09 14:45                 ` Tony Lindgren
2020-11-09 19:10                 ` Arnd Bergmann
2020-11-09 19:10                   ` Arnd Bergmann
2020-11-10  9:19                   ` Tony Lindgren
2020-11-10  9:19                     ` Tony Lindgren
2020-11-10 10:04                     ` Arnd Bergmann
2020-11-10 10:04                       ` Arnd Bergmann
2020-11-10 12:04                       ` Tony Lindgren
2020-11-10 12:04                         ` Tony Lindgren
2020-11-10 13:35                         ` Arnd Bergmann
2020-11-10 13:35                           ` Arnd Bergmann
2020-11-11  6:56                           ` Tony Lindgren
2020-11-11  6:56                             ` Tony Lindgren
2020-10-08  7:15   ` [PATCH 3/3] arm: Modify stack trace and dump for use with irq stack Maninder Singh
2020-10-08  7:15     ` Maninder Singh
2020-10-08  7:53   ` [PATCH 0/3] IRQ stack support for ARM Sebastian Andrzej Siewior
2020-10-08  7:53     ` Sebastian Andrzej Siewior
2020-10-08  8:30   ` Russell King - ARM Linux admin
2020-10-08  8:30     ` Russell King - ARM Linux admin
2020-10-15 20:59     ` Nick Desaulniers
2020-10-15 20:59       ` Nick Desaulniers
2020-10-15 21:16       ` Florian Fainelli
2020-10-15 21:16         ` Florian Fainelli
     [not found]     ` <CAK8P3a0h=D8_Kn_fpHbsik_jf4to2jayxj7K7B7=HaNFzKqNnw@mail.gmail.com>
2020-10-21 11:58       ` Arnd Bergmann
2020-10-21 11:58         ` Arnd Bergmann
2020-10-21 12:34         ` Russell King - ARM Linux admin
2020-10-21 12:34           ` Russell King - ARM Linux admin
2020-10-21 12:46           ` Arnd Bergmann
2020-10-21 12:46             ` Arnd Bergmann
2020-10-08 13:04 [PATCH 2/3] arm: introduce IRQ stacks kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201021124542.GL1551@shell.armlinux.org.uk \
    --to=linux@armlinux.org.uk \
    --cc=0x7f454c46@gmail.com \
    --cc=a.sahrawat@samsung.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@kernel.org \
    --cc=bigeasy@linutronix.de \
    --cc=caij2003@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maninder1.s@samsung.com \
    --cc=maz@kernel.org \
    --cc=ndesaulniers@google.com \
    --cc=nhuck@google.com \
    --cc=tglx@linutronix.de \
    --cc=v.narang@samsung.com \
    --cc=valentin.schneider@arm.com \
    --cc=vincent.whitchurch@axis.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.