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>