-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
iwlwifi: Move each system tracepoints to their own header
Every tracing file must have its own TRACE_SYSTEM defined. The iwlwifi tracepoint header broke this and added in the middle of the file: #undef TRACE_SYSTEM #define TRACE_SYSTEM iwlwifi_io #undef TRACE_SYSTEM #define TRACE_SYSTEM iwlwifi_ucode #undef TRACE_SYSTEM #define TRACE_SYSTEM iwlwifi_msg #undef TRACE_SYSTEM #define TRACE_SYSTEM iwlwifi_data #undef TRACE_SYSTEM #define TRACE_SYSTEM iwlwifi Unfortunately, this broke new code in the ftrace infrastructure. Moving each of these TRACE_SYSTEMs into their own trace file with just one TRACE_SYSTEM per file fixes the issue. Link: http://lkml.kernel.org/r/1428479094.2809.3.camel@sipsolutions.net Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
- Loading branch information
Steven Rostedt (Red Hat)
committed
Apr 8, 2015
1 parent
1bc1e4d
commit c5ef935
Showing
6 changed files
with
618 additions
and
432 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
/****************************************************************************** | ||
* | ||
* Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved. | ||
* | ||
* This program is free software; you can redistribute it and/or modify it | ||
* under the terms of version 2 of the GNU General Public License as | ||
* published by the Free Software Foundation. | ||
* | ||
* This program is distributed in the hope that it will be useful, but WITHOUT | ||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
* more details. | ||
* | ||
* You should have received a copy of the GNU General Public License along with | ||
* this program; if not, write to the Free Software Foundation, Inc., | ||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA | ||
* | ||
* The full GNU General Public License is included in this distribution in the | ||
* file called LICENSE. | ||
* | ||
* Contact Information: | ||
* Intel Linux Wireless <ilw@linux.intel.com> | ||
* Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | ||
* | ||
*****************************************************************************/ | ||
|
||
#if !defined(__IWLWIFI_DEVICE_TRACE_DATA) || defined(TRACE_HEADER_MULTI_READ) | ||
#define __IWLWIFI_DEVICE_TRACE_DATA | ||
|
||
#include <linux/tracepoint.h> | ||
|
||
#undef TRACE_SYSTEM | ||
#define TRACE_SYSTEM iwlwifi_data | ||
|
||
TRACE_EVENT(iwlwifi_dev_tx_data, | ||
TP_PROTO(const struct device *dev, | ||
struct sk_buff *skb, | ||
void *data, size_t data_len), | ||
TP_ARGS(dev, skb, data, data_len), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
|
||
__dynamic_array(u8, data, iwl_trace_data(skb) ? data_len : 0) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
if (iwl_trace_data(skb)) | ||
memcpy(__get_dynamic_array(data), data, data_len); | ||
), | ||
TP_printk("[%s] TX frame data", __get_str(dev)) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_rx_data, | ||
TP_PROTO(const struct device *dev, | ||
const struct iwl_trans *trans, | ||
void *rxbuf, size_t len), | ||
TP_ARGS(dev, trans, rxbuf, len), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
|
||
__dynamic_array(u8, data, | ||
len - iwl_rx_trace_len(trans, rxbuf, len)) | ||
), | ||
TP_fast_assign( | ||
size_t offs = iwl_rx_trace_len(trans, rxbuf, len); | ||
DEV_ASSIGN; | ||
if (offs < len) | ||
memcpy(__get_dynamic_array(data), | ||
((u8 *)rxbuf) + offs, len - offs); | ||
), | ||
TP_printk("[%s] RX frame data", __get_str(dev)) | ||
); | ||
#endif /* __IWLWIFI_DEVICE_TRACE_DATA */ | ||
|
||
#undef TRACE_INCLUDE_PATH | ||
#define TRACE_INCLUDE_PATH . | ||
#undef TRACE_INCLUDE_FILE | ||
#define TRACE_INCLUDE_FILE iwl-devtrace-data | ||
#include <trace/define_trace.h> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,155 @@ | ||
/****************************************************************************** | ||
* | ||
* Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved. | ||
* | ||
* This program is free software; you can redistribute it and/or modify it | ||
* under the terms of version 2 of the GNU General Public License as | ||
* published by the Free Software Foundation. | ||
* | ||
* This program is distributed in the hope that it will be useful, but WITHOUT | ||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
* more details. | ||
* | ||
* You should have received a copy of the GNU General Public License along with | ||
* this program; if not, write to the Free Software Foundation, Inc., | ||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA | ||
* | ||
* The full GNU General Public License is included in this distribution in the | ||
* file called LICENSE. | ||
* | ||
* Contact Information: | ||
* Intel Linux Wireless <ilw@linux.intel.com> | ||
* Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 | ||
* | ||
*****************************************************************************/ | ||
|
||
#if !defined(__IWLWIFI_DEVICE_TRACE_IO) || defined(TRACE_HEADER_MULTI_READ) | ||
#define __IWLWIFI_DEVICE_TRACE_IO | ||
|
||
#include <linux/tracepoint.h> | ||
|
||
#undef TRACE_SYSTEM | ||
#define TRACE_SYSTEM iwlwifi_io | ||
|
||
TRACE_EVENT(iwlwifi_dev_ioread32, | ||
TP_PROTO(const struct device *dev, u32 offs, u32 val), | ||
TP_ARGS(dev, offs, val), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, offs) | ||
__field(u32, val) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->offs = offs; | ||
__entry->val = val; | ||
), | ||
TP_printk("[%s] read io[%#x] = %#x", | ||
__get_str(dev), __entry->offs, __entry->val) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_iowrite8, | ||
TP_PROTO(const struct device *dev, u32 offs, u8 val), | ||
TP_ARGS(dev, offs, val), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, offs) | ||
__field(u8, val) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->offs = offs; | ||
__entry->val = val; | ||
), | ||
TP_printk("[%s] write io[%#x] = %#x)", | ||
__get_str(dev), __entry->offs, __entry->val) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_iowrite32, | ||
TP_PROTO(const struct device *dev, u32 offs, u32 val), | ||
TP_ARGS(dev, offs, val), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, offs) | ||
__field(u32, val) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->offs = offs; | ||
__entry->val = val; | ||
), | ||
TP_printk("[%s] write io[%#x] = %#x)", | ||
__get_str(dev), __entry->offs, __entry->val) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_iowrite_prph32, | ||
TP_PROTO(const struct device *dev, u32 offs, u32 val), | ||
TP_ARGS(dev, offs, val), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, offs) | ||
__field(u32, val) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->offs = offs; | ||
__entry->val = val; | ||
), | ||
TP_printk("[%s] write PRPH[%#x] = %#x)", | ||
__get_str(dev), __entry->offs, __entry->val) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_ioread_prph32, | ||
TP_PROTO(const struct device *dev, u32 offs, u32 val), | ||
TP_ARGS(dev, offs, val), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, offs) | ||
__field(u32, val) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->offs = offs; | ||
__entry->val = val; | ||
), | ||
TP_printk("[%s] read PRPH[%#x] = %#x", | ||
__get_str(dev), __entry->offs, __entry->val) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_irq, | ||
TP_PROTO(const struct device *dev), | ||
TP_ARGS(dev), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
), | ||
/* TP_printk("") doesn't compile */ | ||
TP_printk("%d", 0) | ||
); | ||
|
||
TRACE_EVENT(iwlwifi_dev_ict_read, | ||
TP_PROTO(const struct device *dev, u32 index, u32 value), | ||
TP_ARGS(dev, index, value), | ||
TP_STRUCT__entry( | ||
DEV_ENTRY | ||
__field(u32, index) | ||
__field(u32, value) | ||
), | ||
TP_fast_assign( | ||
DEV_ASSIGN; | ||
__entry->index = index; | ||
__entry->value = value; | ||
), | ||
TP_printk("[%s] read ict[%d] = %#.8x", | ||
__get_str(dev), __entry->index, __entry->value) | ||
); | ||
#endif /* __IWLWIFI_DEVICE_TRACE_IO */ | ||
|
||
#undef TRACE_INCLUDE_PATH | ||
#define TRACE_INCLUDE_PATH . | ||
#undef TRACE_INCLUDE_FILE | ||
#define TRACE_INCLUDE_FILE iwl-devtrace-io | ||
#include <trace/define_trace.h> |
Oops, something went wrong.