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

blk-mq-debugfs.h (2474B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef INT_BLK_MQ_DEBUGFS_H
      3#define INT_BLK_MQ_DEBUGFS_H
      4
      5#ifdef CONFIG_BLK_DEBUG_FS
      6
      7#include <linux/seq_file.h>
      8
      9struct blk_mq_hw_ctx;
     10
     11struct blk_mq_debugfs_attr {
     12	const char *name;
     13	umode_t mode;
     14	int (*show)(void *, struct seq_file *);
     15	ssize_t (*write)(void *, const char __user *, size_t, loff_t *);
     16	/* Set either .show or .seq_ops. */
     17	const struct seq_operations *seq_ops;
     18};
     19
     20int __blk_mq_debugfs_rq_show(struct seq_file *m, struct request *rq);
     21int blk_mq_debugfs_rq_show(struct seq_file *m, void *v);
     22
     23void blk_mq_debugfs_register(struct request_queue *q);
     24void blk_mq_debugfs_register_hctx(struct request_queue *q,
     25				  struct blk_mq_hw_ctx *hctx);
     26void blk_mq_debugfs_unregister_hctx(struct blk_mq_hw_ctx *hctx);
     27void blk_mq_debugfs_register_hctxs(struct request_queue *q);
     28void blk_mq_debugfs_unregister_hctxs(struct request_queue *q);
     29
     30void blk_mq_debugfs_register_sched(struct request_queue *q);
     31void blk_mq_debugfs_unregister_sched(struct request_queue *q);
     32void blk_mq_debugfs_register_sched_hctx(struct request_queue *q,
     33				       struct blk_mq_hw_ctx *hctx);
     34void blk_mq_debugfs_unregister_sched_hctx(struct blk_mq_hw_ctx *hctx);
     35
     36void blk_mq_debugfs_register_rqos(struct rq_qos *rqos);
     37void blk_mq_debugfs_unregister_rqos(struct rq_qos *rqos);
     38#else
     39static inline void blk_mq_debugfs_register(struct request_queue *q)
     40{
     41}
     42
     43static inline void blk_mq_debugfs_register_hctx(struct request_queue *q,
     44						struct blk_mq_hw_ctx *hctx)
     45{
     46}
     47
     48static inline void blk_mq_debugfs_unregister_hctx(struct blk_mq_hw_ctx *hctx)
     49{
     50}
     51
     52static inline void blk_mq_debugfs_register_hctxs(struct request_queue *q)
     53{
     54}
     55
     56static inline void blk_mq_debugfs_unregister_hctxs(struct request_queue *q)
     57{
     58}
     59
     60static inline void blk_mq_debugfs_register_sched(struct request_queue *q)
     61{
     62}
     63
     64static inline void blk_mq_debugfs_unregister_sched(struct request_queue *q)
     65{
     66}
     67
     68static inline void blk_mq_debugfs_register_sched_hctx(struct request_queue *q,
     69						      struct blk_mq_hw_ctx *hctx)
     70{
     71}
     72
     73static inline void blk_mq_debugfs_unregister_sched_hctx(struct blk_mq_hw_ctx *hctx)
     74{
     75}
     76
     77static inline void blk_mq_debugfs_register_rqos(struct rq_qos *rqos)
     78{
     79}
     80
     81static inline void blk_mq_debugfs_unregister_rqos(struct rq_qos *rqos)
     82{
     83}
     84#endif
     85
     86#ifdef CONFIG_BLK_DEBUG_FS_ZONED
     87int queue_zone_wlock_show(void *data, struct seq_file *m);
     88#else
     89static inline int queue_zone_wlock_show(void *data, struct seq_file *m)
     90{
     91	return 0;
     92}
     93#endif
     94
     95#endif