上下文(虽然不重要),在 netfilter 模块中,我们使用如下结构:
struct data {
char mac[ETH_ALEN];
char in6_addr addr;
};
跟踪 MAC 地址和 ipv6 地址。
用于处理 IPv6 地址更改:
- 我应该比较新旧值(memcmp),如果不同,则更新(memcpy)。
- 或者,我只是更新它。
两者都是有效的行为,因此性能是这里的主要关注点。
我发现了一个类似的问题:https ://jira.mongodb.org/browse/SERVER-66
他们似乎选择了“刚刚更新”的方式。