[dpdk-dev] [PATCH 1/2] net/virtio: do not re-enter clean up routines
Maxime Coquelin
maxime.coquelin at redhat.com
Fri Nov 2 17:48:05 CET 2018
On 11/2/18 4:19 PM, Chas Williams wrote:
>
>
> On 11/02/2018 10:33 AM, Ferruh Yigit wrote:
>> On 11/1/2018 2:45 PM, Luca Boccassi wrote:
>>> On Mon, 2017-07-17 at 19:05 -0400, Charles (Chas) Williams wrote:
>>>> .dev_uninit calls .dev_stop and .dev_close. The work that is done in
>>>> those routines doesn't need repeated. Use started and opened to
>>>> track
>>>> the adapter's status.
>>>>
>>>> Signed-off-by: Chas Williams <ciwillia at brocade.com>
>>
>> <...>
>>
>>>> @@ -253,7 +254,7 @@ struct virtio_hw {
>>>> uint64_t req_guest_features;
>>>> uint64_t guest_features;
>>>> uint32_t max_queue_pairs;
>>>> - uint16_t started;
>>>> + bool started;
>>>> uint16_t max_mtu;
>>>> uint16_t vtnet_hdr_size;
>>>> uint8_t vlan_strip;
>>>> @@ -268,6 +269,7 @@ struct virtio_hw {
>>>> struct virtio_pci_common_cfg *common_cfg;
>>>> struct virtio_net_config *dev_cfg;
>>>> void *virtio_user_dev;
>>>> + bool opened;
>>
>> This is already merged into next-net-virtio, but I would like to
>> hightlight the
>> checkpatch warning about `bool` usage in struct [1].
>> Briefly it suggests preferring primitive data types against `bool` in
>> structures
>> because its size is not clear.
>>
>> What do you think about it, do you have strong opinion to have them as
>> bool?
>
> Yes, I suppose I do. bool is the "proper" representation for yes/no.
> The arguments cited aren't convincing.
>
> The size of bool is the size of bool. The compiler gets to make that
> decision. I don't get to decide the size of int either. The size and
> alignemnt of bool should be optimal because your compiler probably knows
> more about the target than you do. If your compiler can't figure out
> alignment in a structure, please fix the compiler.
>
> bool is a primitive data type per the C99 standard.
I would like to keep it as bool too.
>> [1]
>> CHECK:BOOL_MEMBER: Avoid using bool structure members because of possible
>> alignment issues - see: https://lkml.org/lkml/2017/11/21/384
>> #85: FILE: drivers/net/virtio/virtio_pci.h:234:
>> + bool started;
>>
>> CHECK:BOOL_MEMBER: Avoid using bool structure members because of possible
>> alignment issues - see: https://lkml.org/lkml/2017/11/21/384
>> #93: FILE: drivers/net/virtio/virtio_pci.h:260:
>> + bool opened;
>>
BTW, I don't get this warning when running checkpatch, what kenrel
version is it coming from?
Thanks,
Maxime
More information about the dev
mailing list