X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_ringbuffer.h;h=d63e62fb2737afa13ee582d5137d3ef595542d6c;hb=5a354421360c38d0f4d90f03c25296b2b35eec0e;hp=29e892f6215c6d7491682eb9df7dd2e7adcbfe6b;hpb=ed814ce69c64a1f24670f21950f3da646f7921df;p=palacios.git diff --git a/palacios/include/palacios/vmm_ringbuffer.h b/palacios/include/palacios/vmm_ringbuffer.h index 29e892f..d63e62f 100644 --- a/palacios/include/palacios/vmm_ringbuffer.h +++ b/palacios/include/palacios/vmm_ringbuffer.h @@ -24,31 +24,36 @@ #include +#ifdef INSTRUMENT_VMM +#define NO_INST __attribute__((__no_instrument_function__)) +#else +#define NO_INST +#endif struct v3_ringbuf { - uchar_t * buf; - uint_t size; + uchar_t * buf; + uint_t size; - uint_t start; - uint_t end; - uint_t current_len; + uint_t start; + uint_t end; + uint_t current_len; }; -void v3_init_ringbuf(struct v3_ringbuf * ring, uint_t size); -struct v3_ringbuf * v3_create_ringbuf(uint_t size); -void v3_free_ringbuf(struct v3_ringbuf * ring); - +void v3_init_ringbuf(struct v3_ringbuf * ring, uint_t size) NO_INST; +struct v3_ringbuf * v3_create_ringbuf(uint_t size) NO_INST; +void v3_free_ringbuf(struct v3_ringbuf * ring) NO_INST; -int v3_ringbuf_read(struct v3_ringbuf * ring, uchar_t * dst, uint_t len); -int v3_ringbuf_peek(struct v3_ringbuf * ring, uchar_t * dst, uint_t len); -int v3_ringbuf_delete(struct v3_ringbuf * ring, uint_t len); -int v3_ringbuf_write(struct v3_ringbuf * ring, uchar_t * src, uint_t len); -int v3_ringbuf_data_len(struct v3_ringbuf * ring); -int v3_ringbuf_capacity(struct v3_ringbuf * ring); +int v3_ringbuf_read(struct v3_ringbuf * ring, uchar_t * dst, uint_t len) NO_INST; +int v3_ringbuf_peek(struct v3_ringbuf * ring, uchar_t * dst, uint_t len) NO_INST; +int v3_ringbuf_delete(struct v3_ringbuf * ring, uint_t len) NO_INST; +int v3_ringbuf_write(struct v3_ringbuf * ring, uchar_t * src, uint_t len) NO_INST; +int v3_ringbuf_data_len(struct v3_ringbuf * ring) NO_INST; +int v3_ringbuf_capacity(struct v3_ringbuf * ring) NO_INST; +int v3_ringbuf_avail_space(struct v3_ringbuf * ring) NO_INST; -void v3_print_ringbuf(struct v3_ringbuf * ring); +void v3_print_ringbuf(struct v3_ringbuf * ring) NO_INST; #endif