You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sometimes we want to perform programmatic analysis on the ring buffer contents of a dump or live system. It would help to have a machine-readable version of this data. It could look something like this:
There are some more complex values in other ring buffers; e.g., Rx(UdpMetadata { addr: Ipv6(Ipv6Address([ 0xfe, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaa, 0x40, 0x25, 0xff, 0xfe, 0x5, 0x26, 0x2 ])), port: 0xffd8, size: 0xa, vid: 0x302 }). I think it should, hopefully, still be easy enough to render these in some regular JSON form; e.g.,
Noticed this when filing another bug -- just want to note that programs parsing ringbuf output are liable to be broken by updates, since nothing about the contents of ringbufs are stable. As long as they accept that risk, we're okay. (This is not about the Humility output per se, but rather the things put in the ringbufs.)
Yes, definitely understand that we'd have to be aware of the specific software version when consuming this data. I'd like to have a Committed set of flags and parseable output for inspecting the data from debugging and diagnostic tools, with the knowledge that the presented data is firmly Uncommitted.
The humility ringbuf command prints a log of essentially human-readable ring buffer records; e.g.,
Sometimes we want to perform programmatic analysis on the ring buffer contents of a dump or live system. It would help to have a machine-readable version of this data. It could look something like this:
There are some more complex values in other ring buffers; e.g.,
Rx(UdpMetadata { addr: Ipv6(Ipv6Address([ 0xfe, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaa, 0x40, 0x25, 0xff, 0xfe, 0x5, 0x26, 0x2 ])), port: 0xffd8, size: 0xa, vid: 0x302 })
. I think it should, hopefully, still be easy enough to render these in some regular JSON form; e.g.,You could imagine also having some basic improved formats for things we can easily render like IPv6 addresses; e.g.,
The text was updated successfully, but these errors were encountered: