#ifndef __TRACE_AGENT_H__ #define __TRACE_AGENT_H__ #include #include #define MAX_CPUS 256 #define PIPE_INIT (1024*1024) /* * agent_info - structure managing total information of guest agent * @pipe_size: size of pipe (default 1MB) * @use_stdout: set to true when o option is added (default false) * @cpus: total number of CPUs * @ctl_fd: fd of control path, /dev/virtio-ports/agent-ctl-path * @rw_ti: structure managing information of read/write threads */ struct agent_info { unsigned long pipe_size; bool use_stdout; int cpus; int ctl_fd; struct rw_thread_info *rw_ti[MAX_CPUS]; }; /* * rw_thread_info - structure managing a read/write thread a cpu * @cpu_num: cpu number operating this read/write thread * @in_fd: fd of reading trace data path in cpu_num * @out_fd: fd of writing trace data path in cpu_num * @read_pipe: fd of read pipe * @write_pipe: fd of write pipe * @pipe_size: size of pipe (default 1MB) */ struct rw_thread_info { int cpu_num; int in_fd; int out_fd; int read_pipe; int write_pipe; unsigned long pipe_size; }; /* use for stopping rw threads */ extern bool global_sig_receive; /* use for notification */ extern bool global_run_operation; extern pthread_mutex_t mutex_notify; extern pthread_cond_t cond_wakeup; /* for controller of read/write threads */ extern int rw_ctl_init(const char *ctl_path); extern void *rw_ctl_loop(int ctl_fd); /* for trace read/write thread */ extern void *rw_thread_info_new(void); extern void *rw_thread_init(int cpu, const char *in_path, const char *out_path, bool stdout_flag, unsigned long pipe_size, struct rw_thread_info *rw_ti); extern pthread_t rw_thread_run(struct rw_thread_info *rw_ti); static inline void *zalloc(size_t size) { return calloc(1, size); } #define pr_err(format, ...) fprintf(stderr, format, ## __VA_ARGS__) #define pr_info(format, ...) fprintf(stdout, format, ## __VA_ARGS__) #ifdef DEBUG #define pr_debug(format, ...) fprintf(stderr, format, ## __VA_ARGS__) #else #define pr_debug(format, ...) do {} while (0) #endif #endif /*__TRACE_AGENT_H__*/ /td>
te-remove&id=bac9a7e0f5d6da82478d5e0a2a236158f42d5757'>logplain
AgeCommit message (Expand)AuthorFilesLines
-rw-r--r--aci.h2419logplain
-rw-r--r--ad1816a.h5514logplain
-rw-r--r--ad1843.h1516logplain
-rw-r--r--adau1373.h699logplain
-rw-r--r--aess.h1668logplain
-rw-r--r--ak4113.h11112logplain
-rw-r--r--ak4114.h10424logplain
-rw-r--r--ak4117.h9193logplain
-rw-r--r--ak4531_codec.h3173logplain
-rw-r--r--ak4641.h622logplain
-rw-r--r--ak4xxx-adda.h3416logplain
-rw-r--r--alc5623.h497logplain
-rw-r--r--asequencer.h3670logplain
-rw-r--r--asound.h1285logplain
-rw-r--r--asoundef.h17098logplain
-rw-r--r--atmel-abdac.h639logplain
-rw-r--r--atmel-ac97c.h1342logplain
-rw-r--r--compress_driver.h6772logplain
-rw-r--r--control.h8704logplain
-rw-r--r--core.h14380logplain
-rw-r--r--cs35l33.h1034logplain
-rw-r--r--cs35l34.h887logplain
-rw-r--r--cs4231-regs.h8480logplain
-rw-r--r--cs4271.h1417logplain
-rw-r--r--cs42l52.h738logplain
-rw-r--r--cs42l56.h1192logplain
-rw-r--r--cs42l73.h507logplain
-rw-r--r--cs8403.h8833logplain
-rw-r--r--cs8427.h10649logplain
-rw-r--r--da7213.h1178logplain
-rw-r--r--da7218.h2681logplain
-rw-r--r--da7219-aad.h2476logplain
-rw-r--r--da7219.h1064logplain
-rw-r--r--da9055.h914logplain
-rw-r--r--designware_i2s.h2249logplain
-rw-r--r--dmaengine_pcm.h6157logplain
-rw-r--r--emu10k1.h91396logplain
-rw-r--r--emu10k1_synth.h1382logplain
-rw-r--r--emu8000.h4109logplain
-rw-r--r--emu8000_reg.h10459logplain
-rw-r--r--emux_legacy.h5503logplain
-rw-r--r--emux_synth.h7649logplain
-rw-r--r--es1688.h3618logplain
-rw-r--r--gus.h20691logplain
-rw-r--r--hda_chmap.h2621logplain
-rw-r--r--hda_hwdep.h1412logplain
-rw-r--r--hda_i915.h1645logplain
-rw-r--r--hda_register.h9475logplain
-rw-r--r--hda_regmap.h6714logplain
-rw-r--r--hda_verbs.h17130logplain
-rw-r--r--hdaudio.h18455logplain
-rw-r--r--hdaudio_ext.h7119logplain
-rw-r--r--hdmi-codec.h2290logplain
-rw-r--r--hwdep.h2624logplain
-rw-r--r--i2c.h3555logplain
-rw-r--r--info.h7584logplain