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
210 lines
No EOL
6 KiB
JSON
210 lines
No EOL
6 KiB
JSON
[
|
|
{
|
|
"EventCode": "0xE8",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "BPU_CLEARS.EARLY",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Early Branch Prediciton Unit clears"
|
|
},
|
|
{
|
|
"EventCode": "0xE8",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x2",
|
|
"EventName": "BPU_CLEARS.LATE",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Late Branch Prediction Unit clears"
|
|
},
|
|
{
|
|
"EventCode": "0xE5",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "BPU_MISSED_CALL_RET",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Branch prediction unit missed call or return"
|
|
},
|
|
{
|
|
"EventCode": "0xD5",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "ES_REG_RENAMES",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "ES segment renames"
|
|
},
|
|
{
|
|
"EventCode": "0x6C",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "IO_TRANSACTIONS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "I/O transactions"
|
|
},
|
|
{
|
|
"EventCode": "0x80",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x4",
|
|
"EventName": "L1I.CYCLES_STALLED",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "L1I instruction fetch stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0x80",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "L1I.HITS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "L1I instruction fetch hits"
|
|
},
|
|
{
|
|
"EventCode": "0x80",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x2",
|
|
"EventName": "L1I.MISSES",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "L1I instruction fetch misses"
|
|
},
|
|
{
|
|
"EventCode": "0x80",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x3",
|
|
"EventName": "L1I.READS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "L1I Instruction fetches"
|
|
},
|
|
{
|
|
"EventCode": "0x82",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "LARGE_ITLB.HIT",
|
|
"SampleAfterValue": "200000",
|
|
"BriefDescription": "Large ITLB hit"
|
|
},
|
|
{
|
|
"EventCode": "0x13",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x7",
|
|
"EventName": "LOAD_DISPATCH.ANY",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "All loads dispatched"
|
|
},
|
|
{
|
|
"EventCode": "0x13",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x4",
|
|
"EventName": "LOAD_DISPATCH.MOB",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Loads dispatched from the MOB"
|
|
},
|
|
{
|
|
"EventCode": "0x13",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "LOAD_DISPATCH.RS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Loads dispatched that bypass the MOB"
|
|
},
|
|
{
|
|
"EventCode": "0x13",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x2",
|
|
"EventName": "LOAD_DISPATCH.RS_DELAYED",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Loads dispatched from stage 305"
|
|
},
|
|
{
|
|
"EventCode": "0x7",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "PARTIAL_ADDRESS_ALIAS",
|
|
"SampleAfterValue": "200000",
|
|
"BriefDescription": "False dependencies due to partial address aliasing"
|
|
},
|
|
{
|
|
"EventCode": "0xD2",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0xf",
|
|
"EventName": "RAT_STALLS.ANY",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "All RAT stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xD2",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "RAT_STALLS.FLAGS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Flag stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xD2",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x2",
|
|
"EventName": "RAT_STALLS.REGISTERS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Partial register stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xD2",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x4",
|
|
"EventName": "RAT_STALLS.ROB_READ_PORT",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "ROB read port stalls cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xD2",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x8",
|
|
"EventName": "RAT_STALLS.SCOREBOARD",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Scoreboard stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0x4",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x7",
|
|
"EventName": "SB_DRAIN.ANY",
|
|
"SampleAfterValue": "200000",
|
|
"BriefDescription": "All Store buffer stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xD4",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "SEG_RENAME_STALLS",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Segment rename stall cycles"
|
|
},
|
|
{
|
|
"EventCode": "0xB8",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "SNOOP_RESPONSE.HIT",
|
|
"SampleAfterValue": "100000",
|
|
"BriefDescription": "Thread responded HIT to snoop"
|
|
},
|
|
{
|
|
"EventCode": "0xB8",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x2",
|
|
"EventName": "SNOOP_RESPONSE.HITE",
|
|
"SampleAfterValue": "100000",
|
|
"BriefDescription": "Thread responded HITE to snoop"
|
|
},
|
|
{
|
|
"EventCode": "0xB8",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x4",
|
|
"EventName": "SNOOP_RESPONSE.HITM",
|
|
"SampleAfterValue": "100000",
|
|
"BriefDescription": "Thread responded HITM to snoop"
|
|
},
|
|
{
|
|
"EventCode": "0xF6",
|
|
"Counter": "0,1,2,3",
|
|
"UMask": "0x1",
|
|
"EventName": "SQ_FULL_STALL_CYCLES",
|
|
"SampleAfterValue": "2000000",
|
|
"BriefDescription": "Super Queue full stall cycles"
|
|
}
|
|
] |