^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /* AFS tracepoints
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Copyright (C) 2016 Red Hat, Inc. All Rights Reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Written by David Howells (dhowells@redhat.com)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #undef TRACE_SYSTEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #define TRACE_SYSTEM afs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #if !defined(_TRACE_AFS_H) || defined(TRACE_HEADER_MULTI_READ)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define _TRACE_AFS_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #include <linux/tracepoint.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) * Define enums for tracing information.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #ifndef __AFS_DECLARE_TRACE_ENUMS_ONCE_ONLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define __AFS_DECLARE_TRACE_ENUMS_ONCE_ONLY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) enum afs_call_trace {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) afs_call_trace_alloc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) afs_call_trace_free,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) afs_call_trace_get,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) afs_call_trace_put,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) afs_call_trace_wake,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) afs_call_trace_work,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) enum afs_server_trace {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) afs_server_trace_alloc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) afs_server_trace_callback,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) afs_server_trace_destroy,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) afs_server_trace_free,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) afs_server_trace_gc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) afs_server_trace_get_by_addr,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) afs_server_trace_get_by_uuid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) afs_server_trace_get_caps,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) afs_server_trace_get_install,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) afs_server_trace_get_new_cbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) afs_server_trace_get_probe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) afs_server_trace_give_up_cb,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) afs_server_trace_purging,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) afs_server_trace_put_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) afs_server_trace_put_cbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) afs_server_trace_put_find_rsq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) afs_server_trace_put_probe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) afs_server_trace_put_slist,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) afs_server_trace_put_slist_isort,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) afs_server_trace_put_uuid_rsq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) afs_server_trace_update,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) enum afs_volume_trace {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) afs_volume_trace_alloc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) afs_volume_trace_free,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) afs_volume_trace_get_alloc_sbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) afs_volume_trace_get_cell_insert,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) afs_volume_trace_get_new_op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) afs_volume_trace_get_query_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) afs_volume_trace_put_cell_dup,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) afs_volume_trace_put_cell_root,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) afs_volume_trace_put_destroy_sbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) afs_volume_trace_put_free_fc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) afs_volume_trace_put_put_op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) afs_volume_trace_put_query_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) afs_volume_trace_put_validate_fc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) afs_volume_trace_remove,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) enum afs_cell_trace {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) afs_cell_trace_alloc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) afs_cell_trace_free,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) afs_cell_trace_get_queue_dns,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) afs_cell_trace_get_queue_manage,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) afs_cell_trace_get_queue_new,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) afs_cell_trace_get_vol,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) afs_cell_trace_insert,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) afs_cell_trace_manage,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) afs_cell_trace_put_candidate,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) afs_cell_trace_put_destroy,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) afs_cell_trace_put_queue_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) afs_cell_trace_put_queue_work,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) afs_cell_trace_put_vol,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) afs_cell_trace_see_source,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) afs_cell_trace_see_ws,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) afs_cell_trace_unuse_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) afs_cell_trace_unuse_check_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) afs_cell_trace_unuse_delete,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) afs_cell_trace_unuse_fc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) afs_cell_trace_unuse_lookup,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) afs_cell_trace_unuse_mntpt,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) afs_cell_trace_unuse_no_pin,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) afs_cell_trace_unuse_parse,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) afs_cell_trace_unuse_pin,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) afs_cell_trace_unuse_probe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) afs_cell_trace_unuse_sbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) afs_cell_trace_unuse_ws,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) afs_cell_trace_use_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) afs_cell_trace_use_check_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) afs_cell_trace_use_fc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) afs_cell_trace_use_fc_alias,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) afs_cell_trace_use_lookup,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) afs_cell_trace_use_mntpt,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) afs_cell_trace_use_pin,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) afs_cell_trace_use_probe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) afs_cell_trace_use_sbi,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) afs_cell_trace_wait,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) enum afs_fs_operation {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) afs_FS_FetchData = 130, /* AFS Fetch file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) afs_FS_FetchACL = 131, /* AFS Fetch file ACL */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) afs_FS_FetchStatus = 132, /* AFS Fetch file status */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) afs_FS_StoreData = 133, /* AFS Store file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) afs_FS_StoreACL = 134, /* AFS Store file ACL */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) afs_FS_StoreStatus = 135, /* AFS Store file status */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) afs_FS_RemoveFile = 136, /* AFS Remove a file */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) afs_FS_CreateFile = 137, /* AFS Create a file */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) afs_FS_Rename = 138, /* AFS Rename or move a file or directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) afs_FS_Symlink = 139, /* AFS Create a symbolic link */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) afs_FS_Link = 140, /* AFS Create a hard link */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) afs_FS_MakeDir = 141, /* AFS Create a directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) afs_FS_RemoveDir = 142, /* AFS Remove a directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) afs_FS_GetVolumeInfo = 148, /* AFS Get information about a volume */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) afs_FS_GetVolumeStatus = 149, /* AFS Get volume status information */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) afs_FS_GetRootVolume = 151, /* AFS Get root volume name */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) afs_FS_SetLock = 156, /* AFS Request a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) afs_FS_ExtendLock = 157, /* AFS Extend a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) afs_FS_ReleaseLock = 158, /* AFS Release a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) afs_FS_Lookup = 161, /* AFS lookup file in directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) afs_FS_InlineBulkStatus = 65536, /* AFS Fetch multiple file statuses with errors */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) afs_FS_FetchData64 = 65537, /* AFS Fetch file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) afs_FS_StoreData64 = 65538, /* AFS Store file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) afs_FS_GiveUpAllCallBacks = 65539, /* AFS Give up all our callbacks on a server */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) afs_FS_GetCapabilities = 65540, /* AFS Get FS server capabilities */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) yfs_FS_FetchData = 130, /* YFS Fetch file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) yfs_FS_FetchACL = 64131, /* YFS Fetch file ACL */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) yfs_FS_FetchStatus = 64132, /* YFS Fetch file status */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) yfs_FS_StoreACL = 64134, /* YFS Store file ACL */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) yfs_FS_StoreStatus = 64135, /* YFS Store file status */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) yfs_FS_RemoveFile = 64136, /* YFS Remove a file */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) yfs_FS_CreateFile = 64137, /* YFS Create a file */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) yfs_FS_Rename = 64138, /* YFS Rename or move a file or directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) yfs_FS_Symlink = 64139, /* YFS Create a symbolic link */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) yfs_FS_Link = 64140, /* YFS Create a hard link */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) yfs_FS_MakeDir = 64141, /* YFS Create a directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) yfs_FS_RemoveDir = 64142, /* YFS Remove a directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) yfs_FS_GetVolumeStatus = 64149, /* YFS Get volume status information */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) yfs_FS_SetVolumeStatus = 64150, /* YFS Set volume status information */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) yfs_FS_SetLock = 64156, /* YFS Request a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) yfs_FS_ExtendLock = 64157, /* YFS Extend a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) yfs_FS_ReleaseLock = 64158, /* YFS Release a file lock */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) yfs_FS_Lookup = 64161, /* YFS lookup file in directory */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) yfs_FS_FlushCPS = 64165,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) yfs_FS_FetchOpaqueACL = 64168,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) yfs_FS_WhoAmI = 64170,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) yfs_FS_RemoveACL = 64171,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) yfs_FS_RemoveFile2 = 64173,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) yfs_FS_StoreOpaqueACL2 = 64174,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) yfs_FS_InlineBulkStatus = 64536, /* YFS Fetch multiple file statuses with errors */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) yfs_FS_FetchData64 = 64537, /* YFS Fetch file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) yfs_FS_StoreData64 = 64538, /* YFS Store file data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) yfs_FS_UpdateSymlink = 64540,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) enum afs_vl_operation {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) afs_VL_GetEntryByNameU = 527, /* AFS Get Vol Entry By Name operation ID */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) afs_VL_GetAddrsU = 533, /* AFS Get FS server addresses */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) afs_YFSVL_GetEndpoints = 64002, /* YFS Get FS & Vol server addresses */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) afs_YFSVL_GetCellName = 64014, /* YFS Get actual cell name */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) afs_VL_GetCapabilities = 65537, /* AFS Get VL server capabilities */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) enum afs_cm_operation {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) afs_CB_CallBack = 204, /* AFS break callback promises */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) afs_CB_InitCallBackState = 205, /* AFS initialise callback state */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) afs_CB_Probe = 206, /* AFS probe client */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) afs_CB_GetLock = 207, /* AFS get contents of CM lock table */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) afs_CB_GetCE = 208, /* AFS get cache file description */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) afs_CB_GetXStatsVersion = 209, /* AFS get version of extended statistics */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) afs_CB_GetXStats = 210, /* AFS get contents of extended statistics data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) afs_CB_InitCallBackState3 = 213, /* AFS initialise callback state, version 3 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) afs_CB_ProbeUuid = 214, /* AFS check the client hasn't rebooted */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) enum yfs_cm_operation {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) yfs_CB_Probe = 206, /* YFS probe client */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) yfs_CB_GetLock = 207, /* YFS get contents of CM lock table */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) yfs_CB_XStatsVersion = 209, /* YFS get version of extended statistics */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) yfs_CB_GetXStats = 210, /* YFS get contents of extended statistics data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) yfs_CB_InitCallBackState3 = 213, /* YFS initialise callback state, version 3 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) yfs_CB_ProbeUuid = 214, /* YFS check the client hasn't rebooted */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) yfs_CB_GetServerPrefs = 215,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) yfs_CB_GetCellServDV = 216,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) yfs_CB_GetLocalCell = 217,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) yfs_CB_GetCacheConfig = 218,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) yfs_CB_GetCellByNum = 65537,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) yfs_CB_TellMeAboutYourself = 65538, /* get client capabilities */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) yfs_CB_CallBack = 64204,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) enum afs_edit_dir_op {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) afs_edit_dir_create,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) afs_edit_dir_create_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) afs_edit_dir_create_inval,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) afs_edit_dir_create_nospc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) afs_edit_dir_delete,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) afs_edit_dir_delete_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) afs_edit_dir_delete_inval,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) afs_edit_dir_delete_noent,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) enum afs_edit_dir_reason {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) afs_edit_dir_for_create,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) afs_edit_dir_for_link,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) afs_edit_dir_for_mkdir,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) afs_edit_dir_for_rename_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) afs_edit_dir_for_rename_1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) afs_edit_dir_for_rename_2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) afs_edit_dir_for_rmdir,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) afs_edit_dir_for_silly_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) afs_edit_dir_for_silly_1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) afs_edit_dir_for_symlink,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) afs_edit_dir_for_unlink,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) enum afs_eproto_cause {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) afs_eproto_bad_status,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) afs_eproto_cb_count,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) afs_eproto_cb_fid_count,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) afs_eproto_cellname_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) afs_eproto_file_type,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) afs_eproto_ibulkst_cb_count,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) afs_eproto_ibulkst_count,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) afs_eproto_motd_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) afs_eproto_offline_msg_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) afs_eproto_volname_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) afs_eproto_yvl_fsendpt4_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) afs_eproto_yvl_fsendpt6_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) afs_eproto_yvl_fsendpt_num,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) afs_eproto_yvl_fsendpt_type,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) afs_eproto_yvl_vlendpt4_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) afs_eproto_yvl_vlendpt6_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) afs_eproto_yvl_vlendpt_type,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) enum afs_io_error {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) afs_io_error_cm_reply,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) afs_io_error_extract,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) afs_io_error_fs_probe_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) afs_io_error_vl_lookup_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) afs_io_error_vl_probe_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) enum afs_file_error {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) afs_file_error_dir_bad_magic,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) afs_file_error_dir_big,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) afs_file_error_dir_missing_page,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) afs_file_error_dir_over_end,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) afs_file_error_dir_small,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) afs_file_error_dir_unmarked_ext,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) afs_file_error_mntpt,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) afs_file_error_writeback_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) enum afs_flock_event {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) afs_flock_acquired,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) afs_flock_callback_break,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) afs_flock_defer_unlock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) afs_flock_extend_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) afs_flock_fail_other,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) afs_flock_fail_perm,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) afs_flock_no_lockers,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) afs_flock_release_fail,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) afs_flock_silly_delete,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) afs_flock_timestamp,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) afs_flock_try_to_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) afs_flock_vfs_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) afs_flock_vfs_locking,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) afs_flock_waited,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) afs_flock_waiting,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) afs_flock_work_extending,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) afs_flock_work_retry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) afs_flock_work_unlocking,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) afs_flock_would_block,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) enum afs_flock_operation {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) afs_flock_op_copy_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) afs_flock_op_flock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) afs_flock_op_grant,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) afs_flock_op_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) afs_flock_op_release_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) afs_flock_op_return_ok,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) afs_flock_op_return_eagain,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) afs_flock_op_return_edeadlk,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) afs_flock_op_return_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) afs_flock_op_set_lock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) afs_flock_op_unlock,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) afs_flock_op_wake,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) enum afs_cb_break_reason {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) afs_cb_break_no_break,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) afs_cb_break_for_callback,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) afs_cb_break_for_deleted,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) afs_cb_break_for_lapsed,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) afs_cb_break_for_unlink,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) afs_cb_break_for_vsbreak,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) afs_cb_break_for_volume_callback,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) afs_cb_break_for_zap,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) #endif /* end __AFS_DECLARE_TRACE_ENUMS_ONCE_ONLY */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) * Declare tracing information enums and their string mappings for display.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) #define afs_call_traces \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) EM(afs_call_trace_alloc, "ALLOC") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) EM(afs_call_trace_free, "FREE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) EM(afs_call_trace_get, "GET ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) EM(afs_call_trace_put, "PUT ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) EM(afs_call_trace_wake, "WAKE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) E_(afs_call_trace_work, "QUEUE")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) #define afs_server_traces \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) EM(afs_server_trace_alloc, "ALLOC ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) EM(afs_server_trace_callback, "CALLBACK ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) EM(afs_server_trace_destroy, "DESTROY ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) EM(afs_server_trace_free, "FREE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) EM(afs_server_trace_gc, "GC ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) EM(afs_server_trace_get_by_addr, "GET addr ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) EM(afs_server_trace_get_by_uuid, "GET uuid ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) EM(afs_server_trace_get_caps, "GET caps ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) EM(afs_server_trace_get_install, "GET inst ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) EM(afs_server_trace_get_new_cbi, "GET cbi ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) EM(afs_server_trace_get_probe, "GET probe") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) EM(afs_server_trace_give_up_cb, "giveup-cb") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) EM(afs_server_trace_purging, "PURGE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) EM(afs_server_trace_put_call, "PUT call ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) EM(afs_server_trace_put_cbi, "PUT cbi ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) EM(afs_server_trace_put_find_rsq, "PUT f-rsq") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) EM(afs_server_trace_put_probe, "PUT probe") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) EM(afs_server_trace_put_slist, "PUT slist") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) EM(afs_server_trace_put_slist_isort, "PUT isort") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) EM(afs_server_trace_put_uuid_rsq, "PUT u-req") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) E_(afs_server_trace_update, "UPDATE")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) #define afs_volume_traces \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) EM(afs_volume_trace_alloc, "ALLOC ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) EM(afs_volume_trace_free, "FREE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) EM(afs_volume_trace_get_alloc_sbi, "GET sbi-alloc ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) EM(afs_volume_trace_get_cell_insert, "GET cell-insrt") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) EM(afs_volume_trace_get_new_op, "GET op-new ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) EM(afs_volume_trace_get_query_alias, "GET cell-alias") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) EM(afs_volume_trace_put_cell_dup, "PUT cell-dup ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) EM(afs_volume_trace_put_cell_root, "PUT cell-root ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) EM(afs_volume_trace_put_destroy_sbi, "PUT sbi-destry") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) EM(afs_volume_trace_put_free_fc, "PUT fc-free ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) EM(afs_volume_trace_put_put_op, "PUT op-put ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) EM(afs_volume_trace_put_query_alias, "PUT cell-alias") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) EM(afs_volume_trace_put_validate_fc, "PUT fc-validat") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) E_(afs_volume_trace_remove, "REMOVE ")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) #define afs_cell_traces \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) EM(afs_cell_trace_alloc, "ALLOC ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) EM(afs_cell_trace_free, "FREE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) EM(afs_cell_trace_get_queue_dns, "GET q-dns ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) EM(afs_cell_trace_get_queue_manage, "GET q-mng ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) EM(afs_cell_trace_get_queue_new, "GET q-new ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) EM(afs_cell_trace_get_vol, "GET vol ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) EM(afs_cell_trace_insert, "INSERT ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) EM(afs_cell_trace_manage, "MANAGE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) EM(afs_cell_trace_put_candidate, "PUT candid") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) EM(afs_cell_trace_put_destroy, "PUT destry") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) EM(afs_cell_trace_put_queue_work, "PUT q-work") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) EM(afs_cell_trace_put_queue_fail, "PUT q-fail") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) EM(afs_cell_trace_put_vol, "PUT vol ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) EM(afs_cell_trace_see_source, "SEE source") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) EM(afs_cell_trace_see_ws, "SEE ws ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) EM(afs_cell_trace_unuse_alias, "UNU alias ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) EM(afs_cell_trace_unuse_check_alias, "UNU chk-al") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) EM(afs_cell_trace_unuse_delete, "UNU delete") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) EM(afs_cell_trace_unuse_fc, "UNU fc ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) EM(afs_cell_trace_unuse_lookup, "UNU lookup") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) EM(afs_cell_trace_unuse_mntpt, "UNU mntpt ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) EM(afs_cell_trace_unuse_parse, "UNU parse ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) EM(afs_cell_trace_unuse_pin, "UNU pin ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) EM(afs_cell_trace_unuse_probe, "UNU probe ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) EM(afs_cell_trace_unuse_sbi, "UNU sbi ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) EM(afs_cell_trace_unuse_ws, "UNU ws ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) EM(afs_cell_trace_use_alias, "USE alias ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) EM(afs_cell_trace_use_check_alias, "USE chk-al") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) EM(afs_cell_trace_use_fc, "USE fc ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) EM(afs_cell_trace_use_fc_alias, "USE fc-al ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) EM(afs_cell_trace_use_lookup, "USE lookup") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) EM(afs_cell_trace_use_mntpt, "USE mntpt ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) EM(afs_cell_trace_use_pin, "USE pin ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) EM(afs_cell_trace_use_probe, "USE probe ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) EM(afs_cell_trace_use_sbi, "USE sbi ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) E_(afs_cell_trace_wait, "WAIT ")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) #define afs_fs_operations \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) EM(afs_FS_FetchData, "FS.FetchData") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) EM(afs_FS_FetchStatus, "FS.FetchStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) EM(afs_FS_StoreData, "FS.StoreData") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) EM(afs_FS_StoreStatus, "FS.StoreStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) EM(afs_FS_RemoveFile, "FS.RemoveFile") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) EM(afs_FS_CreateFile, "FS.CreateFile") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) EM(afs_FS_Rename, "FS.Rename") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) EM(afs_FS_Symlink, "FS.Symlink") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) EM(afs_FS_Link, "FS.Link") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) EM(afs_FS_MakeDir, "FS.MakeDir") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) EM(afs_FS_RemoveDir, "FS.RemoveDir") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) EM(afs_FS_GetVolumeInfo, "FS.GetVolumeInfo") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) EM(afs_FS_GetVolumeStatus, "FS.GetVolumeStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) EM(afs_FS_GetRootVolume, "FS.GetRootVolume") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) EM(afs_FS_SetLock, "FS.SetLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) EM(afs_FS_ExtendLock, "FS.ExtendLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) EM(afs_FS_ReleaseLock, "FS.ReleaseLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) EM(afs_FS_Lookup, "FS.Lookup") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) EM(afs_FS_InlineBulkStatus, "FS.InlineBulkStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) EM(afs_FS_FetchData64, "FS.FetchData64") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) EM(afs_FS_StoreData64, "FS.StoreData64") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) EM(afs_FS_GiveUpAllCallBacks, "FS.GiveUpAllCallBacks") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) EM(afs_FS_GetCapabilities, "FS.GetCapabilities") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) EM(yfs_FS_FetchACL, "YFS.FetchACL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) EM(yfs_FS_FetchStatus, "YFS.FetchStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) EM(yfs_FS_StoreACL, "YFS.StoreACL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) EM(yfs_FS_StoreStatus, "YFS.StoreStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) EM(yfs_FS_RemoveFile, "YFS.RemoveFile") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) EM(yfs_FS_CreateFile, "YFS.CreateFile") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) EM(yfs_FS_Rename, "YFS.Rename") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) EM(yfs_FS_Symlink, "YFS.Symlink") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) EM(yfs_FS_Link, "YFS.Link") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) EM(yfs_FS_MakeDir, "YFS.MakeDir") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) EM(yfs_FS_RemoveDir, "YFS.RemoveDir") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) EM(yfs_FS_GetVolumeStatus, "YFS.GetVolumeStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) EM(yfs_FS_SetVolumeStatus, "YFS.SetVolumeStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) EM(yfs_FS_SetLock, "YFS.SetLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) EM(yfs_FS_ExtendLock, "YFS.ExtendLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) EM(yfs_FS_ReleaseLock, "YFS.ReleaseLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) EM(yfs_FS_Lookup, "YFS.Lookup") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) EM(yfs_FS_FlushCPS, "YFS.FlushCPS") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) EM(yfs_FS_FetchOpaqueACL, "YFS.FetchOpaqueACL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) EM(yfs_FS_WhoAmI, "YFS.WhoAmI") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) EM(yfs_FS_RemoveACL, "YFS.RemoveACL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) EM(yfs_FS_RemoveFile2, "YFS.RemoveFile2") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) EM(yfs_FS_StoreOpaqueACL2, "YFS.StoreOpaqueACL2") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) EM(yfs_FS_InlineBulkStatus, "YFS.InlineBulkStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) EM(yfs_FS_FetchData64, "YFS.FetchData64") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) EM(yfs_FS_StoreData64, "YFS.StoreData64") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) E_(yfs_FS_UpdateSymlink, "YFS.UpdateSymlink")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) #define afs_vl_operations \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) EM(afs_VL_GetEntryByNameU, "VL.GetEntryByNameU") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) EM(afs_VL_GetAddrsU, "VL.GetAddrsU") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) EM(afs_YFSVL_GetEndpoints, "YFSVL.GetEndpoints") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) EM(afs_YFSVL_GetCellName, "YFSVL.GetCellName") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) E_(afs_VL_GetCapabilities, "VL.GetCapabilities")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) #define afs_cm_operations \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) EM(afs_CB_CallBack, "CB.CallBack") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) EM(afs_CB_InitCallBackState, "CB.InitCallBackState") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) EM(afs_CB_Probe, "CB.Probe") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) EM(afs_CB_GetLock, "CB.GetLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) EM(afs_CB_GetCE, "CB.GetCE") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) EM(afs_CB_GetXStatsVersion, "CB.GetXStatsVersion") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) EM(afs_CB_GetXStats, "CB.GetXStats") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474) EM(afs_CB_InitCallBackState3, "CB.InitCallBackState3") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) E_(afs_CB_ProbeUuid, "CB.ProbeUuid")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) #define yfs_cm_operations \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) EM(yfs_CB_Probe, "YFSCB.Probe") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) EM(yfs_CB_GetLock, "YFSCB.GetLock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) EM(yfs_CB_XStatsVersion, "YFSCB.XStatsVersion") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) EM(yfs_CB_GetXStats, "YFSCB.GetXStats") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) EM(yfs_CB_InitCallBackState3, "YFSCB.InitCallBackState3") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) EM(yfs_CB_ProbeUuid, "YFSCB.ProbeUuid") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) EM(yfs_CB_GetServerPrefs, "YFSCB.GetServerPrefs") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) EM(yfs_CB_GetCellServDV, "YFSCB.GetCellServDV") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) EM(yfs_CB_GetLocalCell, "YFSCB.GetLocalCell") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) EM(yfs_CB_GetCacheConfig, "YFSCB.GetCacheConfig") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) EM(yfs_CB_GetCellByNum, "YFSCB.GetCellByNum") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) EM(yfs_CB_TellMeAboutYourself, "YFSCB.TellMeAboutYourself") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) E_(yfs_CB_CallBack, "YFSCB.CallBack")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) #define afs_edit_dir_ops \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) EM(afs_edit_dir_create, "create") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) EM(afs_edit_dir_create_error, "c_fail") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) EM(afs_edit_dir_create_inval, "c_invl") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) EM(afs_edit_dir_create_nospc, "c_nspc") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) EM(afs_edit_dir_delete, "delete") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) EM(afs_edit_dir_delete_error, "d_err ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) EM(afs_edit_dir_delete_inval, "d_invl") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) E_(afs_edit_dir_delete_noent, "d_nent")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) #define afs_edit_dir_reasons \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) EM(afs_edit_dir_for_create, "Create") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) EM(afs_edit_dir_for_link, "Link ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) EM(afs_edit_dir_for_mkdir, "MkDir ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) EM(afs_edit_dir_for_rename_0, "Renam0") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) EM(afs_edit_dir_for_rename_1, "Renam1") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) EM(afs_edit_dir_for_rename_2, "Renam2") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) EM(afs_edit_dir_for_rmdir, "RmDir ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) EM(afs_edit_dir_for_silly_0, "S_Ren0") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) EM(afs_edit_dir_for_silly_1, "S_Ren1") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) EM(afs_edit_dir_for_symlink, "Symlnk") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) E_(afs_edit_dir_for_unlink, "Unlink")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) #define afs_eproto_causes \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) EM(afs_eproto_bad_status, "BadStatus") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) EM(afs_eproto_cb_count, "CbCount") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) EM(afs_eproto_cb_fid_count, "CbFidCount") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) EM(afs_eproto_cellname_len, "CellNameLen") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) EM(afs_eproto_file_type, "FileTYpe") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) EM(afs_eproto_ibulkst_cb_count, "IBS.CbCount") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) EM(afs_eproto_ibulkst_count, "IBS.FidCount") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) EM(afs_eproto_motd_len, "MotdLen") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) EM(afs_eproto_offline_msg_len, "OfflineMsgLen") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) EM(afs_eproto_volname_len, "VolNameLen") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) EM(afs_eproto_yvl_fsendpt4_len, "YVL.FsEnd4Len") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) EM(afs_eproto_yvl_fsendpt6_len, "YVL.FsEnd6Len") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) EM(afs_eproto_yvl_fsendpt_num, "YVL.FsEndCount") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) EM(afs_eproto_yvl_fsendpt_type, "YVL.FsEndType") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) EM(afs_eproto_yvl_vlendpt4_len, "YVL.VlEnd4Len") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) EM(afs_eproto_yvl_vlendpt6_len, "YVL.VlEnd6Len") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) E_(afs_eproto_yvl_vlendpt_type, "YVL.VlEndType")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) #define afs_io_errors \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) EM(afs_io_error_cm_reply, "CM_REPLY") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) EM(afs_io_error_extract, "EXTRACT") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) EM(afs_io_error_fs_probe_fail, "FS_PROBE_FAIL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) EM(afs_io_error_vl_lookup_fail, "VL_LOOKUP_FAIL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) E_(afs_io_error_vl_probe_fail, "VL_PROBE_FAIL")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) #define afs_file_errors \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) EM(afs_file_error_dir_bad_magic, "DIR_BAD_MAGIC") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) EM(afs_file_error_dir_big, "DIR_BIG") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) EM(afs_file_error_dir_missing_page, "DIR_MISSING_PAGE") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) EM(afs_file_error_dir_over_end, "DIR_ENT_OVER_END") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) EM(afs_file_error_dir_small, "DIR_SMALL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) EM(afs_file_error_dir_unmarked_ext, "DIR_UNMARKED_EXT") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) EM(afs_file_error_mntpt, "MNTPT_READ_FAILED") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) E_(afs_file_error_writeback_fail, "WRITEBACK_FAILED")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) #define afs_flock_types \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) EM(F_RDLCK, "RDLCK") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553) EM(F_WRLCK, "WRLCK") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) E_(F_UNLCK, "UNLCK")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) #define afs_flock_states \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) EM(AFS_VNODE_LOCK_NONE, "NONE") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) EM(AFS_VNODE_LOCK_WAITING_FOR_CB, "WAIT_FOR_CB") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559) EM(AFS_VNODE_LOCK_SETTING, "SETTING") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) EM(AFS_VNODE_LOCK_GRANTED, "GRANTED") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) EM(AFS_VNODE_LOCK_EXTENDING, "EXTENDING") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) EM(AFS_VNODE_LOCK_NEED_UNLOCK, "NEED_UNLOCK") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) EM(AFS_VNODE_LOCK_UNLOCKING, "UNLOCKING") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) E_(AFS_VNODE_LOCK_DELETED, "DELETED")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) #define afs_flock_events \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) EM(afs_flock_acquired, "Acquired") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) EM(afs_flock_callback_break, "Callback") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) EM(afs_flock_defer_unlock, "D-Unlock") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) EM(afs_flock_extend_fail, "Ext_Fail") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571) EM(afs_flock_fail_other, "ErrOther") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572) EM(afs_flock_fail_perm, "ErrPerm ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) EM(afs_flock_no_lockers, "NoLocker") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) EM(afs_flock_release_fail, "Rel_Fail") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) EM(afs_flock_silly_delete, "SillyDel") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) EM(afs_flock_timestamp, "Timestmp") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) EM(afs_flock_try_to_lock, "TryToLck") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578) EM(afs_flock_vfs_lock, "VFSLock ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579) EM(afs_flock_vfs_locking, "VFSLking") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580) EM(afs_flock_waited, "Waited ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) EM(afs_flock_waiting, "Waiting ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582) EM(afs_flock_work_extending, "Extendng") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) EM(afs_flock_work_retry, "Retry ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) EM(afs_flock_work_unlocking, "Unlcking") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585) E_(afs_flock_would_block, "EWOULDBL")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) #define afs_flock_operations \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) EM(afs_flock_op_copy_lock, "COPY ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589) EM(afs_flock_op_flock, "->flock ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) EM(afs_flock_op_grant, "GRANT ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591) EM(afs_flock_op_lock, "->lock ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) EM(afs_flock_op_release_lock, "RELEASE ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593) EM(afs_flock_op_return_ok, "<-OK ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) EM(afs_flock_op_return_edeadlk, "<-EDEADL") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595) EM(afs_flock_op_return_eagain, "<-EAGAIN") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596) EM(afs_flock_op_return_error, "<-ERROR ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597) EM(afs_flock_op_set_lock, "SET ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) EM(afs_flock_op_unlock, "UNLOCK ") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599) E_(afs_flock_op_wake, "WAKE ")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) #define afs_cb_break_reasons \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602) EM(afs_cb_break_no_break, "no-break") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) EM(afs_cb_break_for_callback, "break-cb") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) EM(afs_cb_break_for_deleted, "break-del") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) EM(afs_cb_break_for_lapsed, "break-lapsed") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606) EM(afs_cb_break_for_unlink, "break-unlink") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607) EM(afs_cb_break_for_vsbreak, "break-vs") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608) EM(afs_cb_break_for_volume_callback, "break-v-cb") \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609) E_(afs_cb_break_for_zap, "break-zap")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612) * Export enum symbols via userspace.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614) #undef EM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615) #undef E_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) #define EM(a, b) TRACE_DEFINE_ENUM(a);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617) #define E_(a, b) TRACE_DEFINE_ENUM(a);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) afs_call_traces;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) afs_server_traces;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621) afs_cell_traces;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) afs_fs_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) afs_vl_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624) afs_cm_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) yfs_cm_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) afs_edit_dir_ops;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) afs_edit_dir_reasons;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628) afs_eproto_causes;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) afs_io_errors;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630) afs_file_errors;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631) afs_flock_types;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) afs_flock_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633) afs_cb_break_reasons;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636) * Now redefine the EM() and E_() macros to map the enums to the strings that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) * will be printed in the output.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639) #undef EM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) #undef E_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641) #define EM(a, b) { a, b },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) #define E_(a, b) { a, b }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644) TRACE_EVENT(afs_receive_data,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) TP_PROTO(struct afs_call *call, struct iov_iter *iter,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) bool want_more, int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) TP_ARGS(call, iter, want_more, ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) __field(loff_t, remain )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653) __field(enum afs_call_state, state )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654) __field(unsigned short, unmarshall )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655) __field(bool, want_more )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656) __field(int, ret )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661) __entry->state = call->state;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) __entry->unmarshall = call->unmarshall;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663) __entry->remain = iov_iter_count(iter);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) __entry->want_more = want_more;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665) __entry->ret = ret;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668) TP_printk("c=%08x r=%llu u=%u w=%u s=%u ret=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670) __entry->remain,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) __entry->unmarshall,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) __entry->want_more,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673) __entry->state,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674) __entry->ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677) TRACE_EVENT(afs_notify_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) TP_PROTO(struct rxrpc_call *rxcall, struct afs_call *call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) TP_ARGS(rxcall, call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684) __field(enum afs_call_state, state )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685) __field(unsigned short, unmarshall )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) __entry->state = call->state;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) __entry->unmarshall = call->unmarshall;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 692) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 693)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 694) TP_printk("c=%08x s=%u u=%u",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 695) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 696) __entry->state, __entry->unmarshall)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 697) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 698)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 699) TRACE_EVENT(afs_cb_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 700) TP_PROTO(struct afs_call *call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 701)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 702) TP_ARGS(call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 703)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 704) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 705) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 706) __field(u32, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 707) __field(u16, service_id )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 708) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 709)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 710) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 711) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 712) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 713) __entry->service_id = call->service_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 714) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 715)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 716) TP_printk("c=%08x %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 717) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 718) __entry->service_id == 2501 ?
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 719) __print_symbolic(__entry->op, yfs_cm_operations) :
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 720) __print_symbolic(__entry->op, afs_cm_operations))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 721) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 722)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 723) TRACE_EVENT(afs_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 724) TP_PROTO(struct afs_call *call, enum afs_call_trace op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 725) int usage, int outstanding, const void *where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 726)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 727) TP_ARGS(call, op, usage, outstanding, where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 728)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 729) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 730) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 731) __field(int, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 732) __field(int, usage )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 733) __field(int, outstanding )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 734) __field(const void *, where )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 735) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 736)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 737) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 738) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 739) __entry->op = op;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 740) __entry->usage = usage;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 741) __entry->outstanding = outstanding;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 742) __entry->where = where;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 743) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 744)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 745) TP_printk("c=%08x %s u=%d o=%d sp=%pSR",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 746) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 747) __print_symbolic(__entry->op, afs_call_traces),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 748) __entry->usage,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 749) __entry->outstanding,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 750) __entry->where)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 751) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 752)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 753) TRACE_EVENT(afs_make_fs_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 754) TP_PROTO(struct afs_call *call, const struct afs_fid *fid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 755)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 756) TP_ARGS(call, fid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 757)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 758) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 759) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 760) __field(enum afs_fs_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 761) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 762) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 763)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 764) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 765) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 766) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 767) if (fid) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 768) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 769) } else {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 770) __entry->fid.vid = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 771) __entry->fid.vnode = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 772) __entry->fid.unique = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 773) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 774) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 775)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 776) TP_printk("c=%08x %06llx:%06llx:%06x %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 777) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 778) __entry->fid.vid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 779) __entry->fid.vnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 780) __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 781) __print_symbolic(__entry->op, afs_fs_operations))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 782) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 783)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 784) TRACE_EVENT(afs_make_fs_calli,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 785) TP_PROTO(struct afs_call *call, const struct afs_fid *fid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 786) unsigned int i),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 787)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 788) TP_ARGS(call, fid, i),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 789)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 790) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 791) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 792) __field(unsigned int, i )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 793) __field(enum afs_fs_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 794) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 795) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 796)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 797) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 798) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 799) __entry->i = i;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 800) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 801) if (fid) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 802) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 803) } else {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 804) __entry->fid.vid = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 805) __entry->fid.vnode = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 806) __entry->fid.unique = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 807) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 808) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 809)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 810) TP_printk("c=%08x %06llx:%06llx:%06x %s i=%u",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 811) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 812) __entry->fid.vid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 813) __entry->fid.vnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 814) __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 815) __print_symbolic(__entry->op, afs_fs_operations),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 816) __entry->i)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 817) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 818)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 819) TRACE_EVENT(afs_make_fs_call1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 820) TP_PROTO(struct afs_call *call, const struct afs_fid *fid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 821) const struct qstr *name),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 822)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 823) TP_ARGS(call, fid, name),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 824)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 825) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 826) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 827) __field(enum afs_fs_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 828) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 829) __array(char, name, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 830) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 831)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 832) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 833) unsigned int __len = min_t(unsigned int, name->len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 834) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 835) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 836) if (fid) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 837) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 838) } else {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 839) __entry->fid.vid = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 840) __entry->fid.vnode = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 841) __entry->fid.unique = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 842) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 843) memcpy(__entry->name, name->name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 844) __entry->name[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 845) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 846)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 847) TP_printk("c=%08x %06llx:%06llx:%06x %s \"%s\"",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 848) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 849) __entry->fid.vid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 850) __entry->fid.vnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 851) __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 852) __print_symbolic(__entry->op, afs_fs_operations),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 853) __entry->name)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 854) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 855)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 856) TRACE_EVENT(afs_make_fs_call2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 857) TP_PROTO(struct afs_call *call, const struct afs_fid *fid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 858) const struct qstr *name, const struct qstr *name2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 859)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 860) TP_ARGS(call, fid, name, name2),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 861)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 862) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 863) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 864) __field(enum afs_fs_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 865) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 866) __array(char, name, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 867) __array(char, name2, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 868) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 869)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 870) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 871) unsigned int __len = min_t(unsigned int, name->len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 872) unsigned int __len2 = min_t(unsigned int, name2->len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 873) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 874) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 875) if (fid) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 876) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 877) } else {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 878) __entry->fid.vid = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 879) __entry->fid.vnode = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 880) __entry->fid.unique = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 881) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 882) memcpy(__entry->name, name->name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 883) __entry->name[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 884) memcpy(__entry->name2, name2->name, __len2);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 885) __entry->name2[__len2] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 886) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 887)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 888) TP_printk("c=%08x %06llx:%06llx:%06x %s \"%s\" \"%s\"",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 889) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 890) __entry->fid.vid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 891) __entry->fid.vnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 892) __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 893) __print_symbolic(__entry->op, afs_fs_operations),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 894) __entry->name,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 895) __entry->name2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 896) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 897)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 898) TRACE_EVENT(afs_make_vl_call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 899) TP_PROTO(struct afs_call *call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 900)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 901) TP_ARGS(call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 902)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 903) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 904) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 905) __field(enum afs_vl_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 906) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 907)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 908) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 909) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 910) __entry->op = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 911) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 912)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 913) TP_printk("c=%08x %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 914) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 915) __print_symbolic(__entry->op, afs_vl_operations))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 916) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 917)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 918) TRACE_EVENT(afs_call_done,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 919) TP_PROTO(struct afs_call *call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 920)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 921) TP_ARGS(call),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 922)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 923) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 924) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 925) __field(struct rxrpc_call *, rx_call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 926) __field(int, ret )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 927) __field(u32, abort_code )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 928) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 929)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 930) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 931) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 932) __entry->rx_call = call->rxcall;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 933) __entry->ret = call->error;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 934) __entry->abort_code = call->abort_code;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 935) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 936)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 937) TP_printk(" c=%08x ret=%d ab=%d [%p]",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 938) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 939) __entry->ret,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 940) __entry->abort_code,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 941) __entry->rx_call)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 942) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 943)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 944) TRACE_EVENT(afs_send_pages,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 945) TP_PROTO(struct afs_call *call, struct msghdr *msg,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 946) pgoff_t first, pgoff_t last, unsigned int offset),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 947)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 948) TP_ARGS(call, msg, first, last, offset),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 949)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 950) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 951) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 952) __field(pgoff_t, first )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 953) __field(pgoff_t, last )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 954) __field(unsigned int, nr )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 955) __field(unsigned int, bytes )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 956) __field(unsigned int, offset )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 957) __field(unsigned int, flags )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 958) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 959)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 960) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 961) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 962) __entry->first = first;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 963) __entry->last = last;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 964) __entry->nr = msg->msg_iter.nr_segs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 965) __entry->bytes = msg->msg_iter.count;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 966) __entry->offset = offset;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 967) __entry->flags = msg->msg_flags;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 968) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 969)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 970) TP_printk(" c=%08x %lx-%lx-%lx b=%x o=%x f=%x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 971) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 972) __entry->first, __entry->first + __entry->nr - 1, __entry->last,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 973) __entry->bytes, __entry->offset,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 974) __entry->flags)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 975) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 976)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 977) TRACE_EVENT(afs_sent_pages,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 978) TP_PROTO(struct afs_call *call, pgoff_t first, pgoff_t last,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 979) pgoff_t cursor, int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 980)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 981) TP_ARGS(call, first, last, cursor, ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 982)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 983) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 984) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 985) __field(pgoff_t, first )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 986) __field(pgoff_t, last )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 987) __field(pgoff_t, cursor )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 988) __field(int, ret )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 989) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 990)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 991) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 992) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 993) __entry->first = first;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 994) __entry->last = last;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 995) __entry->cursor = cursor;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 996) __entry->ret = ret;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 997) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 998)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 999) TP_printk(" c=%08x %lx-%lx c=%lx r=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1000) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1001) __entry->first, __entry->last,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1002) __entry->cursor, __entry->ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1003) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1004)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1005) TRACE_EVENT(afs_dir_check_failed,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1006) TP_PROTO(struct afs_vnode *vnode, loff_t off, loff_t i_size),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1007)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1008) TP_ARGS(vnode, off, i_size),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1009)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1010) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1011) __field(struct afs_vnode *, vnode )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1012) __field(loff_t, off )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1013) __field(loff_t, i_size )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1014) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1015)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1016) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1017) __entry->vnode = vnode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1018) __entry->off = off;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1019) __entry->i_size = i_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1020) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1021)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1022) TP_printk("vn=%p %llx/%llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1023) __entry->vnode, __entry->off, __entry->i_size)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1024) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1025)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1026) TRACE_EVENT(afs_page_dirty,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1027) TP_PROTO(struct afs_vnode *vnode, const char *where,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1028) pgoff_t page, unsigned long priv),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1029)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1030) TP_ARGS(vnode, where, page, priv),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1031)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1032) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1033) __field(struct afs_vnode *, vnode )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1034) __field(const char *, where )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1035) __field(pgoff_t, page )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1036) __field(unsigned long, priv )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1037) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1038)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1039) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1040) __entry->vnode = vnode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1041) __entry->where = where;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1042) __entry->page = page;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1043) __entry->priv = priv;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1044) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1045)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1046) TP_printk("vn=%p %lx %s %zx-%zx%s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1047) __entry->vnode, __entry->page, __entry->where,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1048) afs_page_dirty_from(__entry->priv),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1049) afs_page_dirty_to(__entry->priv),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1050) afs_is_page_dirty_mmapped(__entry->priv) ? " M" : "")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1051) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1052)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1053) TRACE_EVENT(afs_call_state,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1054) TP_PROTO(struct afs_call *call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1055) enum afs_call_state from,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1056) enum afs_call_state to,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1057) int ret, u32 remote_abort),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1058)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1059) TP_ARGS(call, from, to, ret, remote_abort),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1060)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1061) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1062) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1063) __field(enum afs_call_state, from )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1064) __field(enum afs_call_state, to )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1065) __field(int, ret )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1066) __field(u32, abort )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1067) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1068)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1069) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1070) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1071) __entry->from = from;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1072) __entry->to = to;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1073) __entry->ret = ret;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1074) __entry->abort = remote_abort;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1075) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1076)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1077) TP_printk("c=%08x %u->%u r=%d ab=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1078) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1079) __entry->from, __entry->to,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1080) __entry->ret, __entry->abort)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1081) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1082)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1083) TRACE_EVENT(afs_lookup,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1084) TP_PROTO(struct afs_vnode *dvnode, const struct qstr *name,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1085) struct afs_fid *fid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1086)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1087) TP_ARGS(dvnode, name, fid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1088)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1089) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1090) __field_struct(struct afs_fid, dfid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1091) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1092) __array(char, name, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1093) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1094)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1095) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1096) int __len = min_t(int, name->len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1097) __entry->dfid = dvnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1098) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1099) memcpy(__entry->name, name->name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1100) __entry->name[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1101) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1102)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1103) TP_printk("d=%llx:%llx:%x \"%s\" f=%llx:%x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1104) __entry->dfid.vid, __entry->dfid.vnode, __entry->dfid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1105) __entry->name,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1106) __entry->fid.vnode, __entry->fid.unique)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1107) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1109) TRACE_EVENT(afs_edit_dir,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1110) TP_PROTO(struct afs_vnode *dvnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1111) enum afs_edit_dir_reason why,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1112) enum afs_edit_dir_op op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1113) unsigned int block,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1114) unsigned int slot,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1115) unsigned int f_vnode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1116) unsigned int f_unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1117) const char *name),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1118)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1119) TP_ARGS(dvnode, why, op, block, slot, f_vnode, f_unique, name),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1120)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1121) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1122) __field(unsigned int, vnode )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1123) __field(unsigned int, unique )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1124) __field(enum afs_edit_dir_reason, why )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1125) __field(enum afs_edit_dir_op, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1126) __field(unsigned int, block )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1127) __field(unsigned short, slot )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1128) __field(unsigned int, f_vnode )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1129) __field(unsigned int, f_unique )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1130) __array(char, name, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1131) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1132)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1133) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1134) int __len = strlen(name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1135) __len = min(__len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1136) __entry->vnode = dvnode->fid.vnode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1137) __entry->unique = dvnode->fid.unique;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1138) __entry->why = why;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1139) __entry->op = op;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1140) __entry->block = block;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1141) __entry->slot = slot;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1142) __entry->f_vnode = f_vnode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1143) __entry->f_unique = f_unique;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1144) memcpy(__entry->name, name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1145) __entry->name[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1146) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1147)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1148) TP_printk("d=%x:%x %s %s %u[%u] f=%x:%x \"%s\"",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1149) __entry->vnode, __entry->unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1150) __print_symbolic(__entry->why, afs_edit_dir_reasons),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1151) __print_symbolic(__entry->op, afs_edit_dir_ops),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1152) __entry->block, __entry->slot,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1153) __entry->f_vnode, __entry->f_unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1154) __entry->name)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1155) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1156)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1157) TRACE_EVENT(afs_protocol_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1158) TP_PROTO(struct afs_call *call, enum afs_eproto_cause cause),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1159)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1160) TP_ARGS(call, cause),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1161)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1162) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1163) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1164) __field(enum afs_eproto_cause, cause )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1165) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1166)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1167) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1168) __entry->call = call ? call->debug_id : 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1169) __entry->cause = cause;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1170) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1171)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1172) TP_printk("c=%08x %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1173) __entry->call,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1174) __print_symbolic(__entry->cause, afs_eproto_causes))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1175) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1176)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1177) TRACE_EVENT(afs_io_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1178) TP_PROTO(unsigned int call, int error, enum afs_io_error where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1179)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1180) TP_ARGS(call, error, where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1181)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1182) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1183) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1184) __field(int, error )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1185) __field(enum afs_io_error, where )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1186) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1187)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1188) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1189) __entry->call = call;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1190) __entry->error = error;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1191) __entry->where = where;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1192) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1193)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1194) TP_printk("c=%08x r=%d %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1195) __entry->call, __entry->error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1196) __print_symbolic(__entry->where, afs_io_errors))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1197) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1199) TRACE_EVENT(afs_file_error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1200) TP_PROTO(struct afs_vnode *vnode, int error, enum afs_file_error where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1201)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1202) TP_ARGS(vnode, error, where),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1203)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1204) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1205) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1206) __field(int, error )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1207) __field(enum afs_file_error, where )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1208) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1210) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1211) __entry->fid = vnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1212) __entry->error = error;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1213) __entry->where = where;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1214) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1215)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1216) TP_printk("%llx:%llx:%x r=%d %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1217) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1218) __entry->error,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1219) __print_symbolic(__entry->where, afs_file_errors))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1220) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1221)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1222) TRACE_EVENT(afs_cm_no_server,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1223) TP_PROTO(struct afs_call *call, struct sockaddr_rxrpc *srx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1224)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1225) TP_ARGS(call, srx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1226)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1227) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1228) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1229) __field(unsigned int, op_id )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1230) __field_struct(struct sockaddr_rxrpc, srx )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1231) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1232)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1233) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1234) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1235) __entry->op_id = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1236) memcpy(&__entry->srx, srx, sizeof(__entry->srx));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1237) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1238)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1239) TP_printk("c=%08x op=%u %pISpc",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1240) __entry->call, __entry->op_id, &__entry->srx.transport)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1241) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1242)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1243) TRACE_EVENT(afs_cm_no_server_u,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1244) TP_PROTO(struct afs_call *call, const uuid_t *uuid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1245)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1246) TP_ARGS(call, uuid),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1247)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1248) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1249) __field(unsigned int, call )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1250) __field(unsigned int, op_id )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1251) __field_struct(uuid_t, uuid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1252) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1253)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1254) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1255) __entry->call = call->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1256) __entry->op_id = call->operation_ID;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1257) memcpy(&__entry->uuid, uuid, sizeof(__entry->uuid));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1258) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1259)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1260) TP_printk("c=%08x op=%u %pU",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1261) __entry->call, __entry->op_id, &__entry->uuid)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1262) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1263)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1264) TRACE_EVENT(afs_flock_ev,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1265) TP_PROTO(struct afs_vnode *vnode, struct file_lock *fl,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1266) enum afs_flock_event event, int error),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1267)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1268) TP_ARGS(vnode, fl, event, error),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1269)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1270) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1271) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1272) __field(enum afs_flock_event, event )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1273) __field(enum afs_lock_state, state )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1274) __field(int, error )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1275) __field(unsigned int, debug_id )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1276) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1277)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1278) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1279) __entry->fid = vnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1280) __entry->event = event;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1281) __entry->state = vnode->lock_state;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1282) __entry->error = error;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1283) __entry->debug_id = fl ? fl->fl_u.afs.debug_id : 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1284) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1285)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1286) TP_printk("%llx:%llx:%x %04x %s s=%s e=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1287) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1288) __entry->debug_id,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1289) __print_symbolic(__entry->event, afs_flock_events),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1290) __print_symbolic(__entry->state, afs_flock_states),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1291) __entry->error)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1292) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1293)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1294) TRACE_EVENT(afs_flock_op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1295) TP_PROTO(struct afs_vnode *vnode, struct file_lock *fl,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1296) enum afs_flock_operation op),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1297)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1298) TP_ARGS(vnode, fl, op),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1299)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1300) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1301) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1302) __field(loff_t, from )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1303) __field(loff_t, len )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1304) __field(enum afs_flock_operation, op )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1305) __field(unsigned char, type )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1306) __field(unsigned int, flags )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1307) __field(unsigned int, debug_id )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1308) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1309)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1310) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1311) __entry->fid = vnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1312) __entry->from = fl->fl_start;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1313) __entry->len = fl->fl_end - fl->fl_start + 1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1314) __entry->op = op;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1315) __entry->type = fl->fl_type;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1316) __entry->flags = fl->fl_flags;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1317) __entry->debug_id = fl->fl_u.afs.debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1318) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1319)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1320) TP_printk("%llx:%llx:%x %04x %s t=%s R=%llx/%llx f=%x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1321) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1322) __entry->debug_id,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1323) __print_symbolic(__entry->op, afs_flock_operations),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1324) __print_symbolic(__entry->type, afs_flock_types),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1325) __entry->from, __entry->len, __entry->flags)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1326) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1327)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1328) TRACE_EVENT(afs_reload_dir,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1329) TP_PROTO(struct afs_vnode *vnode),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1330)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1331) TP_ARGS(vnode),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1332)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1333) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1334) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1335) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1336)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1337) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1338) __entry->fid = vnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1339) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1340)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1341) TP_printk("%llx:%llx:%x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1342) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1343) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1344)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1345) TRACE_EVENT(afs_silly_rename,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1346) TP_PROTO(struct afs_vnode *vnode, bool done),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1347)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1348) TP_ARGS(vnode, done),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1349)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1350) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1351) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1352) __field(bool, done )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1353) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1354)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1355) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1356) __entry->fid = vnode->fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1357) __entry->done = done;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1358) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1359)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1360) TP_printk("%llx:%llx:%x done=%u",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1361) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1362) __entry->done)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1363) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1364)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1365) TRACE_EVENT(afs_get_tree,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1366) TP_PROTO(struct afs_cell *cell, struct afs_volume *volume),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1367)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1368) TP_ARGS(cell, volume),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1369)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1370) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1371) __field(u64, vid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1372) __array(char, cell, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1373) __array(char, volume, 24 )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1374) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1375)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1376) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1377) int __len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1378) __entry->vid = volume->vid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1379) __len = min_t(int, cell->name_len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1380) memcpy(__entry->cell, cell->name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1381) __entry->cell[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1382) __len = min_t(int, volume->name_len, 23);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1383) memcpy(__entry->volume, volume->name, __len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1384) __entry->volume[__len] = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1385) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1386)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1387) TP_printk("--- MOUNT %s:%s %llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1388) __entry->cell, __entry->volume, __entry->vid)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1389) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1390)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1391) TRACE_EVENT(afs_cb_break,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1392) TP_PROTO(struct afs_fid *fid, unsigned int cb_break,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1393) enum afs_cb_break_reason reason, bool skipped),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1394)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1395) TP_ARGS(fid, cb_break, reason, skipped),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1396)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1397) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1398) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1399) __field(unsigned int, cb_break )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1400) __field(enum afs_cb_break_reason, reason )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1401) __field(bool, skipped )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1402) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1403)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1404) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1405) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1406) __entry->cb_break = cb_break;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1407) __entry->reason = reason;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1408) __entry->skipped = skipped;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1409) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1410)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1411) TP_printk("%llx:%llx:%x b=%x s=%u %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1412) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1413) __entry->cb_break,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1414) __entry->skipped,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1415) __print_symbolic(__entry->reason, afs_cb_break_reasons))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1416) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1417)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1418) TRACE_EVENT(afs_cb_miss,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1419) TP_PROTO(struct afs_fid *fid, enum afs_cb_break_reason reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1420)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1421) TP_ARGS(fid, reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1422)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1423) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1424) __field_struct(struct afs_fid, fid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1425) __field(enum afs_cb_break_reason, reason )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1426) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1427)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1428) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1429) __entry->fid = *fid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1430) __entry->reason = reason;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1431) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1432)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1433) TP_printk(" %llx:%llx:%x %s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1434) __entry->fid.vid, __entry->fid.vnode, __entry->fid.unique,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1435) __print_symbolic(__entry->reason, afs_cb_break_reasons))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1436) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1437)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1438) TRACE_EVENT(afs_server,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1439) TP_PROTO(struct afs_server *server, int ref, int active,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1440) enum afs_server_trace reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1441)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1442) TP_ARGS(server, ref, active, reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1443)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1444) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1445) __field(unsigned int, server )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1446) __field(int, ref )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1447) __field(int, active )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1448) __field(int, reason )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1449) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1450)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1451) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1452) __entry->server = server->debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1453) __entry->ref = ref;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1454) __entry->active = active;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1455) __entry->reason = reason;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1456) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1457)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1458) TP_printk("s=%08x %s u=%d a=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1459) __entry->server,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1460) __print_symbolic(__entry->reason, afs_server_traces),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1461) __entry->ref,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1462) __entry->active)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1463) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1464)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1465) TRACE_EVENT(afs_volume,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1466) TP_PROTO(afs_volid_t vid, int ref, enum afs_volume_trace reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1467)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1468) TP_ARGS(vid, ref, reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1469)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1470) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1471) __field(afs_volid_t, vid )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1472) __field(int, ref )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1473) __field(enum afs_volume_trace, reason )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1474) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1475)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1476) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1477) __entry->vid = vid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1478) __entry->ref = ref;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1479) __entry->reason = reason;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1480) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1481)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1482) TP_printk("V=%llx %s u=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1483) __entry->vid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1484) __print_symbolic(__entry->reason, afs_volume_traces),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1485) __entry->ref)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1486) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1487)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1488) TRACE_EVENT(afs_cell,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1489) TP_PROTO(unsigned int cell_debug_id, int usage, int active,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1490) enum afs_cell_trace reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1491)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1492) TP_ARGS(cell_debug_id, usage, active, reason),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1493)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1494) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1495) __field(unsigned int, cell )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1496) __field(int, usage )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1497) __field(int, active )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1498) __field(int, reason )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1499) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1500)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1501) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1502) __entry->cell = cell_debug_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1503) __entry->usage = usage;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1504) __entry->active = active;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1505) __entry->reason = reason;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1506) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1507)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1508) TP_printk("L=%08x %s u=%d a=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1509) __entry->cell,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1510) __print_symbolic(__entry->reason, afs_cell_traces),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1511) __entry->usage,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1512) __entry->active)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1513) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1514)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1515) #endif /* _TRACE_AFS_H */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1516)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1517) /* This part must be outside protection */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1518) #include <trace/define_trace.h>