On 4/26/22 10:37, Martin Fernandez wrote: >> Also, in general, the naming is a bit verbose. You might want to trim >> some of those names down, like: >> >>> +static bool __init crypto_updater__should_update(const struct e820_entry >>> *entry, >>> + const void *data) >>> +{ >>> + const struct e820_crypto_updater_data *crypto_updater_data = >>> + (const struct e820_crypto_updater_data *)data; > Yes I agree on this. Do you have any suggestions for these kind of > functions? I want to explicitly state that these functions are in some of > namespace and are different of the other ones. > > In the end I don't think this is very harmful since these functions are one-time > used (in a single place), is not the case that you have to use them everywhere.. Let's just start with the fact that this is a pointer to a structure containing an enum that represents a single bit. You could just pass around an address to a bool: bool crypto_capable = *(bool *)data; or even just pass and use the 'void *data' pointer as a value directly: bool crypto_capable = (bool)data; That, for one, would get rid of some of the naming craziness. If it were me, and I *really* wanted to keep the full types, I would have just condensed that line down to: struct e820_crypto_updater_data *crypto_data = data; Yeah, it _can_ be const, but it buys you practically nothing in this case and only hurts readability.