[PATCH 2/3] vc04_services: mmal-vchiq: Use bool for vchiq_mmal_component.in_use

Andrew Lunn andrew at lunn.ch
Thu Nov 17 16:23:36 PST 2022


>  struct vchiq_mmal_component {
> -	u32 in_use:1;
> +	bool in_use:1;
>  	bool enabled:1;

The patch you referenced says:

+If a structure has many true/false values, consider consolidating them into a
+bitfield with 1 bit members, or using an appropriate fixed width type, such as
+u8.

The code did exactly this, using two bits fields, in one u32. A bool
probably takes up 4 bytes, maybe 8 bytes, so this change probably
doubles the storage size for these two fields. Are these fields on the
hot path, where an extra AND instruction would make a difference?

    Andrew



More information about the linux-arm-kernel mailing list