[DTrace-devel] [PATCH] WIP doc: Add IP provider documentation

Eugene Loh eugene.loh at oracle.com
Mon Sep 22 17:39:16 UTC 2025


On 9/22/25 09:48, Alan Maguire wrote:

> On 18/09/2025 20:59, eugene.loh at oracle.com wrote:
>> From: Eugene Loh <eugene.loh at oracle.com>
>>
>> I'm starting to add some provider documentation to the MD user guide:
>> ip, tcp, udp, and rawfbt.  This is my first cut at editing the MD UG
>> and I'm pretty unfamiliar with the ip provider (and tcp and udp).
>> So if you want to offer preliminary feedback, feel free.  Otherwise,
>> I'll do those providers and then go back and look the whole thing over
>> more carefully before posting for review.
>>
>> Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
> looks great! (one comment below about csinfo_t)
>
> Reviewed-by: Alan Maguire <alan.maguire at oracle.com>
>
>> diff --git a/doc/userguide/reference/dtrace_providers_ip.md b/doc/userguide/reference/dtrace_providers_ip.md
>> new file mode 100644
>> +### csinfo\_t {#dt_ref_ipcs_prov}
>> +
>> +The `csinfo_t` structure is an abstraction that describes connection state.
>> +Detailed information about this data structure can be found in
>> +`/usr/lib64/dtrace/*version*/ip.d` or
>> +`/usr/lib64/dtrace/*version*/net.d`, depending on `dtrace` version.
>> +The definition of `csinfo_t` is as follows:
>> +
>> +```nocopybutton
>> +typedef struct csinfo {
>> +	uintptr_t	cs_addr;
>> +	uint64_t	cs_cid;                    IS THIS SET?
> IIRC on Solaris it was basically just the pointer to the socket, which
> isn't really a great idea as a unique identifier as the socket pointers
> get recycled via slab allocation. We don't seem to have the field in the
> Linux csinfo judging by the content of ip.d.

I'm thinking there are two different issues.

Judging from ip.d, it seems that we do not set cs_cid.

Judging from net.d, it seems that we do have the field in csinfo.

>> +} csinfo_t;
>> +```



More information about the DTrace-devel mailing list