On Thu, 27 May 2021 10:00:44 +0800 Huazhong Tan wrote: > >> @@ -179,6 +179,8 @@ __ethtool_get_link_ksettings(struct net_device *dev, > >> > >> struct kernel_ethtool_coalesce { > >> struct ethtool_coalesce base; > >> + __u32 use_cqe_mode_tx; > >> + __u32 use_cqe_mode_rx; > > No __ in front, this is not a user space structure. > > Why not bool or a bitfield? > > bool is enough, __u32 is used here to be consistent with > > fields in struct ethtool_coalesce. > > This seems unnecessary? Yup, I think the IOCTL made everything a __u32 for uniformity of the uAPI and to avoid holes and paddings. This is an internal kernel structure so natural types like bool are better.