Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Aug 2023 06:37:35 +0900
From:      Tomoaki AOKI <junchoon@dec.sakura.ne.jp>
To:        freebsd-current@freebsd.org
Subject:   Re: [Intel AlderLake] Read&Write files to FAT32 or UFS partition cause data corrupt due to P-Core&E-Core
Message-ID:  <20230808063735.e8e1d3ede370a18f200a6f48@dec.sakura.ne.jp>
In-Reply-To: <ZM9t--jEqyc4_Z4t@kib.kiev.ua>
References:  <5fd2a34e-1135-4237-a028-d4566ff65c69@FreeBSD.org> <20220219115534.7db1b9f199c10894e4280b33@dec.sakura.ne.jp> <7A743668-B5AA-4679-9F56-9A6220CBBC14@karels.net> <bc01426a-9750-a161-0bfa-e1acd5299f81@FreeBSD.org> <YhE1rWoA%2BhMfebq/@kib.kiev.ua> <59cbcfe2-cd53-69d8-65d6-7a79e656f494@FreeBSD.org> <YhVnsB5ZwLYmpAFP@kib.kiev.ua> <1f968af1-1c57-9a09-7e01-145a5262e27f@FreeBSD.org> <YhVyFIFA5XnbGHej@kib.kiev.ua> <20230806181238.858f58e25dfd0f99269cfe53@dec.sakura.ne.jp> <ZM9t--jEqyc4_Z4t@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 6 Aug 2023 12:55:07 +0300
Konstantin Belousov <kostikbel@gmail.com> wrote:

> On Sun, Aug 06, 2023 at 06:12:38PM +0900, Tomoaki AOKI wrote:
> > On Wed, 23 Feb 2022 01:30:28 +0200
> > Konstantin Belousov <kostikbel@gmail.com> wrote:
> > 
> > > On Tue, Feb 22, 2022 at 06:23:17PM -0500, Alexander Motin wrote:
> > > > On 22.02.2022 17:46, Konstantin Belousov wrote:
> > > > > Ok, the next step is to get the CPU feature reports from P- vs. E- cores.
> > > > > Patch below should work, with verbose boot.
> > > > 
> > > > Not much difference on that level:
> > > > 
> > > > --- zzzp        2022-02-22 18:18:24.531704000 -0500
> > > > +++ zzze        2022-02-22 18:18:18.631236000 -0500
> > > > @@ -1,22 +1,21 @@
> > > > -CPU 2: 12th Gen Intel(R) Core(TM) i7-12700K (3609.60-MHz K8-class CPU)
> > > > +CPU 16: 12th Gen Intel(R) Core(TM) i7-12700K (3609.60-MHz K8-class CPU)
> > > >    Origin="GenuineIntel"  Id=0x90672  Family=0x6  Model=0x97  Stepping=2
> > > > 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=0x7ffafbff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,SDBG,FMA,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
> > > >    AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM>
> > > >    AMD Features2=0x121<LAHF,ABM,Prefetch>
> > > >    Structured Extended Features=0x239ca7eb<FSGSBASE,TSCADJ,BMI1,AVX2,FDPEXC,SMEP,BMI2,ERMS,INVPCID,NFPUSG,PQE,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,PROCTRACE,SHA>
> > > >    Structured Extended Features2=0x98c027ac<UMIP,PKU,WAITPKG,GFNI,VAES,VPCLMULQDQ,TME,RDPID,MOVDIRI,MOVDIR64B>
> > > >    Structured Extended Features3=0xfc1cc410<FSRM,MD_CLEAR,PCONFIG,IBT,IBPB,STIBP,L1DFL,ARCH_CAP,CORE_CAP,SSBD>
> > > >    XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES>
> > > >    IA32_ARCH_CAPS=0xd6b<RDCL_NO,IBRS_ALL,SKIP_L1DFL_VME,MDS_NO,TAA_NO>
> > > >    VT-x: Basic Features=0x3da0500<SMM,INS/OUTS,TRUE>
> > > >          Pin-Based Controls=0xff<ExtINT,NMI,VNMI,PreTmr,PostIntr>
> > > >          Primary Processor Controls=0xfffbfffe<INTWIN,TSCOff,HLT,INVLPG,MWAIT,RDPMC,RDTSC,CR3-LD,CR3-ST,CR8-LD,CR8-ST,TPR,NMIWIN,MOV-DR,IO,IOmap,MTF,MSRmap,MONITOR,PAUSE>
> > > >          Secondary Processor Controls=0xf5d7fff<APIC,EPT,DT,RDTSCP,x2APIC,VPID,WBINVD,UG,APIC-reg,VID,PAUSE-loop,RDRAND,INVPCID,VMFUNC,VMCS,XSAVES>
> > > >          Exit Controls=0x3da0500<PAT-LD,EFER-SV,PTMR-SV>
> > > >          Entry Controls=0x3da0500
> > > >          EPT Features=0x6f34141<XO,PW4,UC,WB,2M,1G,INVEPT,AD,single,all>
> > > >          VPID Features=0x10f01<INVVPID,individual,single,all,single-globals>
> > > >    TSC: P-state invariant, performance statistics
> > > > -64-Byte prefetching
> > > > -L2 cache: 1280 kbytes, 8-way associative, 64 bytes/line
> > > > +L2 cache: 2048 kbytes, 16-way associative, 64 bytes/line
> > > > 
> > > 
> > > Show me the full verbose dmesg of the boot then.
> > > 
> > > As another blind guess, try to disable pcid, vm.pmap.pcid_enabled=0.
> > > 
> > 
> > Hi.
> > 
> > Intel N100 is reported to crash without this tunable on 13.2 at
> > freebsd-users-jp ML (as this is a ML in Japanese, reported in
> > Japanese). [1]
> > Crashes with UFS, but ZFS is claimed to be OK.
> > 
> > N100 is an Alder Lake-N processor WITHOUT P-CORE. [2] [3]
> > So check logics on workarouund codes (IIRC, all are MFC'ed before 13.2)
> > wouldn't be working?
> 
> Show me the output from x86info -r on the machine, I do not care which
> specific core it is, they should be all the same.  x86info is available
> as sysutils/x86info.

Requested to original reporter and got the result below.
HTH.

-----------------------
root@eq12:~ # x86info -r
x86info v1.31pre
/dev/cpuctl0: No such file or directory
Found 4 identical CPUs
Extended Family: 0 Extended Model: 11 Family: 6 Model: 190 Stepping: 0
Type: 0 (Original OEM)
CPU Model (x86info's best guess): Unknown model.
eax in: 0x00000000, eax = 00000020 ebx = 756e6547 ecx = 6c65746e edx =
49656e69
eax in: 0x00000001, eax = 000b06e0 ebx = 00800800 ecx = 7ffafbbf edx =
bfebfbff
eax in: 0x00000002, eax = 00feff01 ebx = 000000f0 ecx = 00000000 edx =
00000000
eax in: 0x00000003, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000004, eax = fc004121 ebx = 01c0003f ecx = 0000003f edx =
00000000
eax in: 0x00000005, eax = 00000040 ebx = 00000040 ecx = 00000003 edx =
10102020
eax in: 0x00000006, eax = 00578ff7 ebx = 00000002 ecx = 00000009 edx =
00000000
eax in: 0x00000007, eax = 00000002 ebx = 239ca7eb ecx = 98c007bc edx =
fc184410
eax in: 0x00000008, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000009, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000000a, eax = 07300605 ebx = 00000000 ecx = 00000007 edx =
00008603
eax in: 0x0000000b, eax = 00000001 ebx = 00000001 ecx = 00000100 edx =
00000000
eax in: 0x0000000c, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000000d, eax = 00000207 ebx = 00000a88 ecx = 00000a88 edx =
00000000
eax in: 0x0000000e, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000000f, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000010, eax = 00000000 ebx = 00000004 ecx = 00000000 edx =
00000000
eax in: 0x00000011, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000012, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000013, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000014, eax = 00000001 ebx = 000001ff ecx = 80000007 edx =
00000000
eax in: 0x00000015, eax = 00000002 ebx = 0000002a ecx = 0249f000 edx =
00000000
eax in: 0x00000016, eax = 00000320 ebx = 00000d48 ecx = 00000064 edx =
00000000
eax in: 0x00000017, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000018, eax = 00000004 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x00000019, eax = 00000007 ebx = 00000014 ecx = 00000003 edx =
00000000
eax in: 0x0000001a, eax = 20000001 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000001b, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000001c, eax = c000000b ebx = 00000007 ecx = 00000007 edx =
00000000
eax in: 0x0000001d, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000001e, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x0000001f, eax = 00000001 ebx = 00000001 ecx = 00000100 edx =
00000000
eax in: 0x00000020, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000

eax in: 0x80000000, eax = 80000008 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x80000001, eax = 00000000 ebx = 00000000 ecx = 00000121 edx =
2c100800
eax in: 0x80000002, eax = 65746e49 ebx = 2952286c ecx = 30314e20 edx =
00000030
eax in: 0x80000003, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x80000004, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x80000005, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000000
eax in: 0x80000006, eax = 00000000 ebx = 00000000 ecx = 08008040 edx =
00000000
eax in: 0x80000007, eax = 00000000 ebx = 00000000 ecx = 00000000 edx =
00000100
eax in: 0x80000008, eax = 00003027 ebx = 00000000 ecx = 00000000 edx =
00000000

Total processor threads: 4
This system has 1 dual-core processor with hyper-threading (2 threads
per core) running at an estimated 800MHz
---------------------


-- 
Tomoaki AOKI    <junchoon@dec.sakura.ne.jp>



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