[DragonFlyBSD - Submit #2363] Port of FreeBSD clflush and smbios.c

Venkatesh Srinivas via Redmine bugtracker-admin at leaf.dragonflybsd.org
Fri May 18 21:35:31 PDT 2012

Issue #2363 has been updated by Venkatesh Srinivas.


is a simplified version of this patch. It does not have sysctl/tunable to enable CLFLUSH and it uses CPUID's VMM field rather than SMBIOS to detect a VMM. Seems to work here though.

Is this patch suitable for what you need? Does it look better to folks?

Submit #2363: Port of FreeBSD clflush and smbios.c

Author: David Shao
Status: New
Priority: Normal
Target version: 

Port from FreeBSD of function wrapping asm for clflush, required for latest DRM kernel graphics drivers.
(Reference: http://people.freebsd.org/~kib/drm/)

In addition smbios.c has been ported because FreeBSD uses resulting values to decide whether CLFLUSH can
be enabled on virtual machines.

Users can now report (notoriously unreliable) smbios values from kenv.

Ported ability to disable CLFLUSH using set hw.clflush_disable=1.

The function for clflush has not been tested yet.

There may be some concern that adding smbios.c to loader code may lead to unbootable systems for
code that is nonessential; however, the code has not led to unbootable systems on an Asus P4B266
Pentium 4, a Lenovo S10 netbook, an Asus M5A87 amd64, an Asus ULFT20, and Vmware Fusion 3.1.4.

The current port of accompanying vm detection code for clflush is obviously of
cargo-cult quality because some applies to xen and not to vkernels.

You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account

More information about the Submit mailing list