cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

debugfs.h (1576B)


      1/* SPDX-License-Identifier: GPL-2.0 or BSD-3-Clause */
      2/*
      3 * Copyright(c) 2015, 2016, 2018 Intel Corporation.
      4 */
      5
      6#ifndef _HFI1_DEBUGFS_H
      7#define _HFI1_DEBUGFS_H
      8
      9struct hfi1_ibdev;
     10
     11#define DEBUGFS_SEQ_FILE_OPS(name) \
     12static const struct seq_operations _##name##_seq_ops = { \
     13	.start = _##name##_seq_start, \
     14	.next  = _##name##_seq_next, \
     15	.stop  = _##name##_seq_stop, \
     16	.show  = _##name##_seq_show \
     17}
     18
     19#define DEBUGFS_SEQ_FILE_OPEN(name) \
     20static int _##name##_open(struct inode *inode, struct file *s) \
     21{ \
     22	struct seq_file *seq; \
     23	int ret; \
     24	ret =  seq_open(s, &_##name##_seq_ops); \
     25	if (ret) \
     26		return ret; \
     27	seq = s->private_data; \
     28	seq->private = inode->i_private; \
     29	return 0; \
     30}
     31
     32#define DEBUGFS_FILE_OPS(name) \
     33static const struct file_operations _##name##_file_ops = { \
     34	.owner   = THIS_MODULE, \
     35	.open    = _##name##_open, \
     36	.read    = hfi1_seq_read, \
     37	.llseek  = hfi1_seq_lseek, \
     38	.release = seq_release \
     39}
     40
     41
     42ssize_t hfi1_seq_read(struct file *file, char __user *buf, size_t size,
     43		      loff_t *ppos);
     44loff_t hfi1_seq_lseek(struct file *file, loff_t offset, int whence);
     45
     46#ifdef CONFIG_DEBUG_FS
     47void hfi1_dbg_ibdev_init(struct hfi1_ibdev *ibd);
     48void hfi1_dbg_ibdev_exit(struct hfi1_ibdev *ibd);
     49void hfi1_dbg_init(void);
     50void hfi1_dbg_exit(void);
     51
     52#else
     53static inline void hfi1_dbg_ibdev_init(struct hfi1_ibdev *ibd)
     54{
     55}
     56
     57static inline void hfi1_dbg_ibdev_exit(struct hfi1_ibdev *ibd)
     58{
     59}
     60
     61static inline void hfi1_dbg_init(void)
     62{
     63}
     64
     65static inline void hfi1_dbg_exit(void)
     66{
     67}
     68#endif
     69
     70#endif                          /* _HFI1_DEBUGFS_H */