[asterisk-bugs] [DAHDI-linux 0013500]: [patch] safer MMX support for echo canceller

Asterisk Bug Tracker noreply at bugs.digium.com
Tue May 26 06:50:43 CDT 2009


The following issue has been UPDATED. 
====================================================================== 
https://issues.asterisk.org/view.php?id=13500 
====================================================================== 
Reported By:                tzafrir
Assigned To:                tzafrir
====================================================================== 
Project:                    DAHDI-linux
Issue ID:                   13500
Category:                   dahdi (the module)
Reproducibility:            random
Severity:                   minor
Priority:                   normal
Status:                     ready for testing
Target Version:             2.3.0
====================================================================== 
Date Submitted:             2008-09-17 04:38 CDT
Last Modified:              2009-05-26 06:50 CDT
====================================================================== 
Summary:                    [patch] safer MMX support for echo canceller
Description: 
ZAPTEL_CONFIG_MMX has had a reputation for being a nice performance
improvement (e.g: by 50% and more), but OTOH also for causing "strange
things". This is because the the floating point context is not properly
saved and using MMX (uses the floating point registers) in an interrupt
context may result in corrupting them to processes.

This patch aims to properly fix that. It does so in an ugly and
i386-specific way (will not even work on x86_64), but it should be a good
starting point. It replaces not only kernel_fpu_begin but also
kernel_fpu_end .

There is some legacy 2.4-only reimplementation of kernel_fpu_begin() which
I chose not to touch.

I also added a compilation warning for the case of using CONFIG_ZAPTEL_MMX
without this fix, as I suspect it is not safe.

The initial patch is vs. zaptel, as I have no relevant EC to test this
with on DAHDI. A dahdi-linux patch is also included, but not actually
tested.
======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0015167 echo cancellers sec, kb1 and mg2 fail t...
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-05-26 06:50 tzafrir        Target Version            => 2.3.0           
======================================================================




More information about the asterisk-bugs mailing list