linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Dan Malek <dan@embeddedalley.com>
To: Jeremy Friesner <jaf@lcsaudio.com>
Cc: linuxppc-embedded@ozlabs.org
Subject: Re: Floating point math in kernel interrupt -- am I doing this right? (repost)
Date: Mon, 6 Feb 2006 07:27:43 -0500	[thread overview]
Message-ID: <3c13d56389dfcf9f45ca87167295e933@embeddedalley.com> (raw)
In-Reply-To: <200602051829.47824.jaf@lcsaudio.com>


On Feb 5, 2006, at 9:29 PM, Jeremy Friesner wrote:

> ....   and the mixing is done inside an
> interrupt routine that runs 6000 times per second, and calculates 8 
> samples
> per interrupt.

Bad news.  No Floating Point allowed in the kernel.

> In order to do the necessary floating point math, without corrupting 
> the state
> of any other processes that might be using the FPU, the interrupt 
> routine
> first saves the state of the FPU registers to the stack, then does the 
> math,
> then restores FPU registers again, before returning.

Not on 82xx.  All floating point is done in hardware.

> ....  The oops
> looks like this:

These aren't helpful without some supporting information, like
symbols, or learn to use ksymoops.

> So my question is, is there some minor detail that my 
> FPU-state-save/restore
> code is missing, that would cause these sort of symptoms?

Just get all of this out of the kernel.  If you used the standard ALSA
drivers and framework, lots of mixing features are available to you.
If you need some custom mixing, just write a plug-in to do it.
Your data rates are so low they don't justify making any hacks
like this.

Thanks.

	-- Dan

  reply	other threads:[~2006-02-06 12:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-06  2:29 Floating point math in kernel interrupt -- am I doing this right? (repost) Jeremy Friesner
2006-02-06 12:27 ` Dan Malek [this message]
2006-02-06 16:55   ` Jeremy Friesner
  -- strict thread matches above, loose matches on Subject: below --
2006-02-06 12:57 Floating point math in kernel interrupt -- am I doing this right?(repost) Fillod Stephane
2006-02-07  7:20 Joyeau Sylvain
     [not found] <mailman.294.1139321937.857.linuxppc-embedded@ozlabs.org>
2006-02-08  8:32 ` Jeremy Friesner

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=3c13d56389dfcf9f45ca87167295e933@embeddedalley.com \
    --to=dan@embeddedalley.com \
    --cc=jaf@lcsaudio.com \
    --cc=linuxppc-embedded@ozlabs.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).