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

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Sep 17 05:37:44 CDT 2008


The following issue has been UPDATED. 
====================================================================== 
http://bugs.digium.com/view.php?id=13500 
====================================================================== 
Reported By:                tzafrir
Assigned To:                
====================================================================== 
Project:                    DAHDI-linux
Issue ID:                   13500
Category:                   dahdi (the module)
Reproducibility:            random
Severity:                   minor
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2008-09-17 04:38 CDT
Last Modified:              2008-09-17 05:37 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.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-09-17 05:37 tzafrir        Description Updated                          
======================================================================




More information about the asterisk-bugs mailing list