[DTrace-devel] [PATCH 2/7] strtab: make internal structures private
Eugene Loh
eugene.loh at oracle.com
Thu Jul 27 15:54:33 UTC 2023
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
On 7/27/23 11:28, Kris Van Hees via DTrace-devel wrote:
> Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
> libdtrace/dt_strtab.c | 19 +++++++++++++++++++
> libdtrace/dt_strtab.h | 19 +------------------
> 2 files changed, 20 insertions(+), 18 deletions(-)
>
> diff --git a/libdtrace/dt_strtab.c b/libdtrace/dt_strtab.c
> index aeece0d7..73cb8294 100644
> --- a/libdtrace/dt_strtab.c
> +++ b/libdtrace/dt_strtab.c
> @@ -14,6 +14,25 @@
> #include <dt_string.h>
> #include <dt_impl.h>
>
> +typedef struct dt_strhash {
> + const char *str_data; /* pointer to actual string data */
> + ulong_t str_buf; /* index of string data buffer */
> + size_t str_off; /* offset in bytes of this string */
> + size_t str_len; /* length in bytes of this string */
> + struct dt_strhash *str_next; /* next string in hash chain */
> +} dt_strhash_t;
> +
> +struct dt_strtab {
> + dt_strhash_t **str_hash; /* array of hash buckets */
> + ulong_t str_hashsz; /* size of hash bucket array */
> + char **str_bufs; /* array of buffer pointers */
> + char *str_ptr; /* pointer to current buffer location */
> + ulong_t str_nbufs; /* size of buffer pointer array */
> + size_t str_bufsz; /* size of individual buffer */
> + ulong_t str_nstrs; /* total number of strings in strtab */
> + size_t str_size; /* total size of strings in bytes */
> +};
> +
> static int
> dt_strtab_grow(dt_strtab_t *sp)
> {
> diff --git a/libdtrace/dt_strtab.h b/libdtrace/dt_strtab.h
> index 9cde73b9..92970d19 100644
> --- a/libdtrace/dt_strtab.h
> +++ b/libdtrace/dt_strtab.h
> @@ -15,24 +15,7 @@
> extern "C" {
> #endif
>
> -typedef struct dt_strhash {
> - const char *str_data; /* pointer to actual string data */
> - ulong_t str_buf; /* index of string data buffer */
> - size_t str_off; /* offset in bytes of this string */
> - size_t str_len; /* length in bytes of this string */
> - struct dt_strhash *str_next; /* next string in hash chain */
> -} dt_strhash_t;
> -
> -typedef struct dt_strtab {
> - dt_strhash_t **str_hash; /* array of hash buckets */
> - ulong_t str_hashsz; /* size of hash bucket array */
> - char **str_bufs; /* array of buffer pointers */
> - char *str_ptr; /* pointer to current buffer location */
> - ulong_t str_nbufs; /* size of buffer pointer array */
> - size_t str_bufsz; /* size of individual buffer */
> - ulong_t str_nstrs; /* total number of strings in strtab */
> - size_t str_size; /* total size of strings in bytes */
> -} dt_strtab_t;
> +typedef struct dt_strtab dt_strtab_t;
>
> typedef ssize_t dt_strtab_write_f(const char *, size_t, size_t, void *);
>
More information about the DTrace-devel
mailing list