Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 Jan 2008 23:16:27 -0500
From:      Joe Marcus Clarke <marcus@FreeBSD.org>
To:        current <current@FreeBSD.org>
Subject:   RFC: Adding a hw.features[2] sysctl
Message-ID:  <1200197787.67286.13.camel@shumai.marcuscom.com>

next in thread | raw e-mail | index | archive | help

--=-l4wu7FBOYv73ljTmQTLt
Content-Type: multipart/mixed; boundary="=-tG5WkeByM2UE0M3nJKPz"


--=-tG5WkeByM2UE0M3nJKPz
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

I find it would be useful to have the list of CPU features available via
a sysctl.  Currently, he only ways to get this information are to have
linprocfs mounted, or parse dmesg.boot (if it exists).  Attached are
patches to add hw.features and hw.features2 sysctls for i386 and amd64
(where a list of CPU features is applicable).  The results are identical
to the Features and Features2 strings from dmesg:

hw.features2: 0x41d<SSE3,RSVD2,MON,DS_CPL,CNXT-ID>
hw.features:
0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PA=
T,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>

Comments?

Joe

--=20
Joe Marcus Clarke
FreeBSD GNOME Team      ::      gnome@FreeBSD.org
FreeNode / #freebsd-gnome
http://www.FreeBSD.org/gnome

--=-tG5WkeByM2UE0M3nJKPz
Content-Disposition: attachment; filename=cpu_features.diff
Content-Type: text/x-patch; name=cpu_features.diff; charset=ISO-8859-1
Content-Transfer-Encoding: base64

LS0tIHN5cy9pMzg2L2kzODYvaWRlbnRjcHUuYy5vcmlnCTIwMDgtMDEtMTIgMjA6MDA6MzQuMDAw
MDAwMDAwIC0wNTAwDQorKysgc3lzL2kzODYvaTM4Ni9pZGVudGNwdS5jCTIwMDgtMDEtMTIgMjI6
NDc6MDIuMDAwMDAwMDAwIC0wNTAwDQpAQCAtMTAyLDYgKzEwMiwxNCBAQCBzdGF0aWMgaW50IGh3
X2Nsb2NrcmF0ZTsNCiBTWVNDVExfSU5UKF9odywgT0lEX0FVVE8sIGNsb2NrcmF0ZSwgQ1RMRkxB
R19SRCwgDQogICAgICZod19jbG9ja3JhdGUsIDAsICJDUFUgaW5zdHJ1Y3Rpb24gY2xvY2sgcmF0
ZSIpOw0KIA0KK3N0YXRpYyBjaGFyIGNwdV9mZWF0dXJlc1s1MTJdOw0KK1NZU0NUTF9TVFJJTkco
X2h3LCBPSURfQVVUTywgZmVhdHVyZXMsIENUTEZMQUdfUkQsDQorICAgIGNwdV9mZWF0dXJlcywg
MCwgIkNQVSBmZWF0dXJlcyIpOw0KKw0KK3N0YXRpYyBjaGFyIGNwdV9mZWF0dXJlczJbNTEyXTsN
CitTWVNDVExfU1RSSU5HKF9odywgT0lEX0FVVE8sIGZlYXR1cmVzMiwgQ1RMRkxBR19SRCwNCisg
ICAgY3B1X2ZlYXR1cmVzMiwgMCwgIkNQVSBmZWF0dXJlcyAoc2Vjb25kIHNldCkiKTsNCisNCiBz
dGF0aWMgY2hhciBjcHVfYnJhbmRbNDhdOw0KIA0KICNkZWZpbmUJTUFYX0JSQU5EX0lOREVYCTgN
CkBAIC02OTYsNyArNzA0LDggQEAgdmlhX2NvbW1vbjoNCiAJCQkgKiB0byBjaGVjayB0aGF0IGFs
bCBDUFVzID49IFBlbnRpdW0gaGF2ZSBhIFRTQyBhbmQNCiAJCQkgKiBNU1JzLg0KIAkJCSAqLw0K
LQkJCXByaW50ZigiXG4gIEZlYXR1cmVzPTB4JWIiLCBjcHVfZmVhdHVyZSwNCisJCQlzbnByaW50
ZihjcHVfZmVhdHVyZXMsIHNpemVvZihjcHVfZmVhdHVyZXMpLCAiMHglYiIsDQorCQkJY3B1X2Zl
YXR1cmUsDQogCQkJIlwwMjAiDQogCQkJIlwwMDFGUFUiCS8qIEludGVncmFsIEZQVSAqLw0KIAkJ
CSJcMDAyVk1FIgkvKiBFeHRlbmRlZCBWTTg2IG1vZGUgc3VwcG9ydCAqLw0KQEAgLTczMiw4ICs3
NDEsMTEgQEAgdmlhX2NvbW1vbjoNCiAJCQkiXDA0MFBCRSIJLyogUGVuZGluZyBCcmVhayBFbmFi
bGUgKi8NCiAJCQkpOw0KIA0KKwkJCXByaW50ZigiXG4gIEZlYXR1cmVzPSVzIiwgY3B1X2ZlYXR1
cmVzKTsNCisNCiAJCQlpZiAoY3B1X2ZlYXR1cmUyICE9IDApIHsNCi0JCQkJcHJpbnRmKCJcbiAg
RmVhdHVyZXMyPTB4JWIiLCBjcHVfZmVhdHVyZTIsDQorCQkJCXNucHJpbnRmKGNwdV9mZWF0dXJl
czIsIHNpemVvZihjcHVfZmVhdHVyZXMyKSwNCisJCQkJIjB4JWIiLCBjcHVfZmVhdHVyZTIsDQog
CQkJCSJcMDIwIg0KIAkJCQkiXDAwMVNTRTMiCS8qIFNTRTMgKi8NCiAJCQkJIlwwMDI8YjE+Ig0K
QEAgLTc2OCw2ICs3ODAsOCBAQCB2aWFfY29tbW9uOg0KIAkJCQkiXDAzNzxiMzA+Ig0KIAkJCQki
XDA0MDxiMzE+Ig0KIAkJCQkpOw0KKw0KKwkJCQlwcmludGYoIlxuICBGZWF0dXJlczI9JXMiLCBj
cHVfZmVhdHVyZXMyKTsNCiAJCQl9DQogDQogCQkJLyoNCi0tLSBzeXMvYW1kNjQvYW1kNjQvaWRl
bnRjcHUuYy5vcmlnCTIwMDgtMDEtMTIgMjI6MzU6NTYuMDAwMDAwMDAwIC0wNTAwDQorKysgc3lz
L2FtZDY0L2FtZDY0L2lkZW50Y3B1LmMJMjAwOC0wMS0xMiAyMjo0NDo1NC4wMDAwMDAwMDAgLTA1
MDANCkBAIC04Nyw2ICs4NywxNCBAQCBzdGF0aWMgaW50IGh3X2Nsb2NrcmF0ZTsNCiBTWVNDVExf
SU5UKF9odywgT0lEX0FVVE8sIGNsb2NrcmF0ZSwgQ1RMRkxBR19SRCwgDQogICAgICZod19jbG9j
a3JhdGUsIDAsICJDUFUgaW5zdHJ1Y3Rpb24gY2xvY2sgcmF0ZSIpOw0KIA0KK3N0YXRpYyBjaGFy
IGNwdV9mZWF0dXJlc1s1MTJdOw0KK1NZU0NUTF9TVFJJTkcoX2h3LCBPSURfQVVUTywgZmVhdHVy
ZXMsIENUTEZMQUdfUkQsDQorICAgIGNwdV9mZWF0dXJlcywgMCwgIkNQVSBmZWF0dXJlcyIpOw0K
Kw0KK3N0YXRpYyBjaGFyIGNwdV9mZWF0dXJlczJbNTEyXTsNCitTWVNDVExfU1RSSU5HUyhfaHcs
IE9JRF9BVVRPLCBmZWF0dXJlczIsIENUTEZMQUdfUkQsDQorICAgIGNwdV9mZWF0dXJlczIsIDAs
ICJDUFUgZmVhdHVyZXMgKHNlY29uZCBzZXQpIik7DQorDQogc3RhdGljIGNoYXIgY3B1X2JyYW5k
WzQ4XTsNCiANCiBzdGF0aWMgc3RydWN0IHsNCkBAIC0xODIsNyArMTkwLDggQEAgcHJpbnRjcHVp
bmZvKHZvaWQpDQogCQkJICogdG8gY2hlY2sgdGhhdCBhbGwgQ1BVcyA+PSBQZW50aXVtIGhhdmUg
YSBUU0MgYW5kDQogCQkJICogTVNScy4NCiAJCQkgKi8NCi0JCQlwcmludGYoIlxuICBGZWF0dXJl
cz0weCViIiwgY3B1X2ZlYXR1cmUsDQorCQkJc25wcmludGYoY3B1X2ZlYXR1cmVzLCBzaXplb2Yo
Y3B1X2ZlYXR1cmVzKSwgIjB4JWIiLA0KKwkJCWNwdV9mZWF0dXJlLA0KIAkJCSJcMDIwIg0KIAkJ
CSJcMDAxRlBVIgkvKiBJbnRlZ3JhbCBGUFUgKi8NCiAJCQkiXDAwMlZNRSIJLyogRXh0ZW5kZWQg
Vk04NiBtb2RlIHN1cHBvcnQgKi8NCkBAIC0yMTgsOCArMjI3LDExIEBAIHByaW50Y3B1aW5mbyh2
b2lkKQ0KIAkJCSJcMDQwUEJFIgkvKiBQZW5kaW5nIEJyZWFrIEVuYWJsZSAqLw0KIAkJCSk7DQog
DQorCQkJcHJpbnRmKCJcbiAgRmVhdHVyZXM9JXMiLCBjcHVfZmVhdHVyZXMpOw0KKw0KIAkJCWlm
IChjcHVfZmVhdHVyZTIgIT0gMCkgew0KLQkJCQlwcmludGYoIlxuICBGZWF0dXJlczI9MHglYiIs
IGNwdV9mZWF0dXJlMiwNCisJCQkJc25wcmludGYoY3B1X2ZlYXR1cmVzMiwgc2l6ZW9mKGNwdV9m
ZWF0dXJlczIpLA0KKwkJCQkiMHglYiIsIGNwdV9mZWF0dXJlMiwNCiAJCQkJIlwwMjAiDQogCQkJ
CSJcMDAxU1NFMyIJLyogU1NFMyAqLw0KIAkJCQkiXDAwMjxiMT4iDQpAQCAtMjU0LDYgKzI2Niw4
IEBAIHByaW50Y3B1aW5mbyh2b2lkKQ0KIAkJCQkiXDAzNzxiMzA+Ig0KIAkJCQkiXDA0MDxiMzE+
Ig0KIAkJCQkpOw0KKw0KKwkJCQlwcmludGYoIlxuICBGZWF0dXJlczI9JXMiLCBjcHVfZmVhdHVy
ZXMyKTsNCiAJCQl9DQogDQogCQkJLyoNCg==


--=-tG5WkeByM2UE0M3nJKPz--

--=-l4wu7FBOYv73ljTmQTLt
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)

iD8DBQBHiZCbb2iPiv4Uz4cRAvZlAJ9XSV2gUeVMGhMGTtmjh1A+NS/AtgCdGER0
iRtKG39Jc3ZbhOqCMuLL40Q=
=z/IK
-----END PGP SIGNATURE-----

--=-l4wu7FBOYv73ljTmQTLt--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1200197787.67286.13.camel>