Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1519122
| From | Matt Redfearn <matt.redfearn@imgtec.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: Proposal: HAVE_SEPARATE_IRQ_STACK? |
| Date | 2016-11-10 17:40 +0100 |
| Message-ID | <sC0yl-dI-11@gated-at.bofh.it> (permalink) |
| References | <sBIBr-4hw-9@gated-at.bofh.it> <sBIUO-4sZ-5@gated-at.bofh.it> <sBKDf-5OO-1@gated-at.bofh.it> <sBTwS-3Ar-47@gated-at.bofh.it> <sBW1I-5Bk-21@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Jason, On 10/11/16 11:41, Jason A. Donenfeld wrote: > On Thu, Nov 10, 2016 at 10:03 AM, Thomas Gleixner <tglx@linutronix.de> wrote: >> If you want to go with that config, then you need >> local_bh_disable()/enable() to fend softirqs off, which disables also >> preemption. > Thanks. Indeed this is what I want. > >>> What clever tricks do I have at my disposal, then? >> Make MIPS use interrupt stacks. > Yea, maybe I'll just implement this. It clearly is the most correct solution. > @MIPS maintainers: would you merge something like this if done well? > Are there reasons other than man-power why it isn't currently that > way? I don't see a reason not to do this - I'm taking a look into it. Thanks, Matt >> Does the slowdown come from the kmalloc overhead or mostly from the less >> efficient code? >> >> If it's mainly kmalloc, then you can preallocate the buffer once for the >> kthread you're running in and be done with it. If it's the code, then bad >> luck. > I fear both. GCC can optimize stack variables in ways that it cannot > optimize various memory reads and writes. > > Strangely, the solution that appeals to me most at the moment is to > kmalloc (or vmalloc?) a new stack, copy over thread_info, and fiddle > with the stack registers. I don't see any APIs, however, for a > platform independent way of doing this. And maybe this is a horrible > idea. But at least it'd allow me to keep my stack-based code the > same... >
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-09 22:30 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? Thomas Gleixner <tglx@linutronix.de> - 2016-11-09 22:50 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-10 00:40 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? Thomas Gleixner <tglx@linutronix.de> - 2016-11-10 10:10 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-10 12:50 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? Thomas Gleixner <tglx@linutronix.de> - 2016-11-10 14:10 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-10 18:50 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? Matt Redfearn <matt.redfearn@imgtec.com> - 2016-11-10 17:40 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-10 18:40 +0100
Re: Proposal: HAVE_SEPARATE_IRQ_STACK? "Jason A. Donenfeld" <Jason@zx2c4.com> - 2016-11-10 02:50 +0100
csiph-web