16c00db4bb
Pull AFS fixes from David Howells: "Here's a set of patches that fix a number of bugs in the in-kernel AFS client, including: - Fix directory locking to not use individual page locks for directory reading/scanning but rather to use a semaphore on the afs_vnode struct as the directory contents must be read in a single blob and data from different reads must not be mixed as the entire contents may be shuffled about between reads. - Fix address list parsing to handle port specifiers correctly. - Only give up callback records on a server if we actually talked to that server (we might not be able to access a server). - Fix some callback handling bugs, including refcounting, whole-volume callbacks and when callbacks actually get broken in response to a CB.CallBack op. - Fix some server/address rotation bugs, including giving up if we can't probe a server; giving up if a server says it doesn't have a volume, but there are more servers to try. - Fix the decoding of fetched statuses to be OpenAFS compatible. - Fix the handling of server lookups in Cache Manager ops (such as CB.InitCallBackState3) to use a UUID if possible and to handle no server being found. - Fix a bug in server lookup where not all addresses are compared. - Fix the non-encryption of calls that prevents some servers from being accessed (this also requires an AF_RXRPC patch that has already gone in through the net tree). There's also a patch that adds tracepoints to log Cache Manager ops that don't find a matching server, either by UUID or by address" * tag 'afs-fixes-20180514' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs: afs: Fix the non-encryption of calls afs: Fix CB.CallBack handling afs: Fix whole-volume callback handling afs: Fix afs_find_server search loop afs: Fix the handling of an unfound server in CM operations afs: Add a tracepoint to record callbacks from unlisted servers afs: Fix the handling of CB.InitCallBackState3 to find the server by UUID afs: Fix VNOVOL handling in address rotation afs: Fix AFSFetchStatus decoder to provide OpenAFS compatibility afs: Fix server rotation's handling of fileserver probe failure afs: Fix refcounting in callback registration afs: Fix giving up callbacks on server destruction afs: Fix address list parsing afs: Fix directory page locking
284 lines
No EOL
14 KiB
JSON
284 lines
No EOL
14 KiB
JSON
[
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x1",
|
|
"BriefDescription": "Load misses in all DTLB levels that cause page walks",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.MISS_CAUSES_A_WALK",
|
|
"PublicDescription": "Counts demand data loads that caused a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the walk need not have completed.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x2",
|
|
"BriefDescription": "Page walk completed due to a demand data load to a 4K page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
|
|
"PublicDescription": "Counts page walks completed due to demand data loads whose address translations missed in the TLB and were mapped to 4K pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x4",
|
|
"BriefDescription": "Page walk completed due to a demand data load to a 2M/4M page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
|
|
"PublicDescription": "Counts page walks completed due to demand data loads whose address translations missed in the TLB and were mapped to 2M/4M pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x8",
|
|
"BriefDescription": "Page walk completed due to a demand data load to a 1G page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
|
|
"PublicDescription": "Counts page walks completed due to demand data loads whose address translations missed in the TLB and were mapped to 4K pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0xe",
|
|
"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (All page sizes)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
|
|
"PublicDescription": "Counts demand data loads that caused a completed page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels. The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Counts 1 per cycle for each PMH that is busy with a page walk for a load. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_PENDING",
|
|
"PublicDescription": "Counts 1 per cycle for each PMH that is busy with a page walk for a load. EPT page walk duration are excluded in Skylake microarchitecture.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Cycles when at least one PMH is busy with a page walk for a load. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.WALK_ACTIVE",
|
|
"CounterMask": "1",
|
|
"PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a load.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x08",
|
|
"UMask": "0x20",
|
|
"BriefDescription": "Loads that miss the DTLB and hit the STLB.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT",
|
|
"PublicDescription": "Counts loads that miss the DTLB (Data TLB) and hit the STLB (Second level TLB).",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x1",
|
|
"BriefDescription": "Store misses in all DTLB levels that cause page walks",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.MISS_CAUSES_A_WALK",
|
|
"PublicDescription": "Counts demand data stores that caused a page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels, but the walk need not have completed.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x2",
|
|
"BriefDescription": "Page walk completed due to a demand data store to a 4K page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
|
|
"PublicDescription": "Counts page walks completed due to demand data stores whose address translations missed in the TLB and were mapped to 4K pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x4",
|
|
"BriefDescription": "Page walk completed due to a demand data store to a 2M/4M page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
|
|
"PublicDescription": "Counts page walks completed due to demand data stores whose address translations missed in the TLB and were mapped to 2M/4M pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x8",
|
|
"BriefDescription": "Page walk completed due to a demand data store to a 1G page",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
|
|
"PublicDescription": "Counts page walks completed due to demand data stores whose address translations missed in the TLB and were mapped to 1G pages. The page walks can end with or without a page fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0xe",
|
|
"BriefDescription": "Store misses in all TLB levels causes a page walk that completes. (All page sizes)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
|
|
"PublicDescription": "Counts demand data stores that caused a completed page walk of any page size (4K/2M/4M/1G). This implies it missed in all TLB levels. The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Counts 1 per cycle for each PMH that is busy with a page walk for a store. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_PENDING",
|
|
"PublicDescription": "Counts 1 per cycle for each PMH that is busy with a page walk for a store. EPT page walk duration are excluded in Skylake microarchitecture.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Cycles when at least one PMH is busy with a page walk for a store. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.WALK_ACTIVE",
|
|
"CounterMask": "1",
|
|
"PublicDescription": "Counts cycles when at least one PMH (Page Miss Handler) is busy with a page walk for a store.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x49",
|
|
"UMask": "0x20",
|
|
"BriefDescription": "Stores that miss the DTLB and hit the STLB.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT",
|
|
"PublicDescription": "Stores that miss the DTLB (Data TLB) and hit the STLB (2nd Level TLB).",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x4F",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Counts 1 per cycle for each PMH that is busy with a EPT (Extended Page Table) walk for any request type.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "EPT.WALK_PENDING",
|
|
"PublicDescription": "Counts cycles for each PMH (Page Miss Handler) that is busy with an EPT (Extended Page Table) walk for any request type.",
|
|
"SampleAfterValue": "2000003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x1",
|
|
"BriefDescription": "Misses at all ITLB levels that cause page walks",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.MISS_CAUSES_A_WALK",
|
|
"PublicDescription": "Counts page walks of any page size (4K/2M/4M/1G) caused by a code fetch. This implies it missed in the ITLB and further levels of TLB, but the walk need not have completed.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x2",
|
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
|
|
"PublicDescription": "Counts completed page walks (4K page size) caused by a code fetch. This implies it missed in the ITLB and further levels of TLB. The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x4",
|
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
|
|
"PublicDescription": "Counts code misses in all ITLB levels that caused a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x8",
|
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (1G)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_1G",
|
|
"PublicDescription": "Counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0xe",
|
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (All page sizes)",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_COMPLETED",
|
|
"PublicDescription": "Counts completed page walks (2M and 4M page sizes) caused by a code fetch. This implies it missed in the ITLB and further levels of TLB. The page walk can end with or without a fault.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Counts 1 per cycle for each PMH that is busy with a page walk for an instruction fetch request. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_PENDING",
|
|
"PublicDescription": "Counts 1 per cycle for each PMH (Page Miss Handler) that is busy with a page walk for an instruction fetch request. EPT page walk duration are excluded in Skylake michroarchitecture.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x10",
|
|
"BriefDescription": "Cycles when at least one PMH is busy with a page walk for code (instruction fetch) request. EPT page walk duration are excluded in Skylake.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.WALK_ACTIVE",
|
|
"CounterMask": "1",
|
|
"PublicDescription": "Cycles when at least one PMH is busy with a page walk for code (instruction fetch) request. EPT page walk duration are excluded in Skylake microarchitecture.",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0x85",
|
|
"UMask": "0x20",
|
|
"BriefDescription": "Instruction fetch requests that miss the ITLB and hit the STLB.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB_MISSES.STLB_HIT",
|
|
"SampleAfterValue": "100003",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0xAE",
|
|
"UMask": "0x1",
|
|
"BriefDescription": "Flushing of the Instruction TLB (ITLB) pages, includes 4k/2M/4M pages.",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "ITLB.ITLB_FLUSH",
|
|
"PublicDescription": "Counts the number of flushes of the big or small ITLB pages. Counting include both TLB Flush (covering all sets) and TLB Set Clear (set-specific).",
|
|
"SampleAfterValue": "100007",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0xBD",
|
|
"UMask": "0x1",
|
|
"BriefDescription": "DTLB flush attempts of the thread-specific entries",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "TLB_FLUSH.DTLB_THREAD",
|
|
"PublicDescription": "Counts the number of DTLB flush attempts of the thread-specific entries.",
|
|
"SampleAfterValue": "100007",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
},
|
|
{
|
|
"EventCode": "0xBD",
|
|
"UMask": "0x20",
|
|
"BriefDescription": "STLB flush attempts",
|
|
"Counter": "0,1,2,3",
|
|
"EventName": "TLB_FLUSH.STLB_ANY",
|
|
"PublicDescription": "Counts the number of any STLB flush attempts (such as entire, VPID, PCID, InvPage, CR3 write, etc.).",
|
|
"SampleAfterValue": "100007",
|
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
|
}
|
|
] |