Date: Sun, 23 Dec 2018 22:09:39 -0600 From: Kevin Zheng <kevinz5000@gmail.com> To: freebsd-hackers@freebsd.org Subject: mem_range_attr_set on amd64 returns ENOSPC Message-ID: <21c51e7a-e3c5-efed-6d13-9e981c118740@gmail.com>
next in thread | raw e-mail | index | archive | help
Hi, I'm going down a rabbit hole figuring out why i915 drm (12 snapshot but also earlier) can't set MTRR's on my computer: Failed to add WC MTRR for [0xe0000000-0xefffffff]: -28; performance may suffer (I haven't checked that this address range is sane yet, but even if it isn't, it should be returning something else.) That was a return code from a call to mem_range_attr_set. On amd64, that means x86_mrset is returning -28 (ENOSPC). That's sys/x86/x86/x86_mem.c returning ENOSPC. But, I'm not familiar with MTRR's on x86 and why FreeBSD does this search. There's an ominous comment at the top: /* * Modify/add a variable MTRR to satisfy the request. * * XXX needs to be updated to properly support "busy" ranges. */ Might this have something to do with that? My system: FreeBSD 12.0-RELEASE r341666 GENERIC amd64 CPU: Intel(R) Core(TM) i5-2540M CPU @ 2.60GHz (2591.64-MHz K8-class CPU) Origin="GenuineIntel" Id=0x206a7 Family=0x6 Model=0x2a Stepping=7 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x1fbae3ff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX> AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM> AMD Features2=0x1<LAHF> Structured Extended Features3=0x9c000000<IBPB,STIBP,L1DFL,SSBD> XSAVE Features=0x1<XSAVEOPT> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID TSC: P-state invariant, performance statistics Regards, Kevin -- Kevin Zheng kevinz5000@gmail.com | kevinz@berkeley.edu | PGP: 0xC22E1090
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?21c51e7a-e3c5-efed-6d13-9e981c118740>