| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package netlink
- import (
- "bytes"
- "fmt"
- )
- const (
- xdrDiagUmemLen = 8 + 8*4
- xdrDiagStatsLen = 6 * 8
- )
- func (x *XDPDiagUmem) deserialize(b []byte) error {
- if len(b) < xdrDiagUmemLen {
- return fmt.Errorf("XDP umem diagnosis data short read (%d); want %d", len(b), xdrDiagUmemLen)
- }
- rb := bytes.NewBuffer(b)
- x.Size = native.Uint64(rb.Next(8))
- x.ID = native.Uint32(rb.Next(4))
- x.NumPages = native.Uint32(rb.Next(4))
- x.ChunkSize = native.Uint32(rb.Next(4))
- x.Headroom = native.Uint32(rb.Next(4))
- x.Ifindex = native.Uint32(rb.Next(4))
- x.QueueID = native.Uint32(rb.Next(4))
- x.Flags = native.Uint32(rb.Next(4))
- x.Refs = native.Uint32(rb.Next(4))
- return nil
- }
- func (x *XDPDiagStats) deserialize(b []byte) error {
- if len(b) < xdrDiagStatsLen {
- return fmt.Errorf("XDP diagnosis statistics short read (%d); want %d", len(b), xdrDiagStatsLen)
- }
- rb := bytes.NewBuffer(b)
- x.RxDropped = native.Uint64(rb.Next(8))
- x.RxInvalid = native.Uint64(rb.Next(8))
- x.RxFull = native.Uint64(rb.Next(8))
- x.FillRingEmpty = native.Uint64(rb.Next(8))
- x.TxInvalid = native.Uint64(rb.Next(8))
- x.TxRingEmpty = native.Uint64(rb.Next(8))
- return nil
- }
|