[MPlayer-dev-eng] TSC on Linux

Zuxy Meng zuxy.meng at gmail.com
Mon Feb 13 11:22:30 CET 2006


Hi,

2006/2/10, Liviu Daia <Liviu.Daia at imar.ro>:
>    MPlayer dev-CVS-060210-02:15-3.4.5 on Linux 2.4.32.
>
>    I recently upgraded my CPU to a dual core one, and because of a bug
> in the 2.4 Linux kernels I had to disable TSC.  After that, MPlayer
> started crashing upon reading various WMV files, which used to play fine
> with the old CPU.
>
>    I traced the problem to the localcount_stub() and longcount_stub()
> functions in loader/win32.c, which enable the TSC versions of
> localcount() and longcount() based on CPUID.  Forcing the notsc versions
> of these functions fixes the crash.  You might consider adding a check
> at that point, verifying that TSC is not only supported phisically by
> the CPU but also enabled in the kernel.

I guess there's no way for an application running at ring 3 to tell
this unless we actually execute RDTSC to see if an exception is
raised.

> On Linux, that would be an
> equivalent of:
>
>        grep -w '^flags.* tsc' /proc/cpuinfo

IIRC /proc/cpuinfo only reflects CPUID, regardless of the kernel
support for a certain feature.

Regards,

--
Zuxy
Beauty is truth,
While truth is beauty.
PGP KeyID: E8555ED6




More information about the MPlayer-dev-eng mailing list