spi: Reorder fields in 'struct spi_message'
Group some variables based on their sizes to reduce hole and avoid padding. On x86_64, this shrinks the size from 112 to 96 bytes. This should have no real impact on memory allocation because 'struct spi_message' is mostly used on stack, but it can save a few cycles when the structure is initialized with spi_message_init() and co. Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Tested-by: Muhammad Usama Anjum <usama.anjum@collabora.com> Reviewed-by: Muhammad Usama Anjum <usama.anjum@collabora.com> Link: https://lore.kernel.org/r/c112aad16eb47808e1ec10abd87b3d273c969a68.1677704283.git.christophe.jaillet@wanadoo.fr Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Родитель
8c220e6c6d
Коммит
ae2ade4ba5
|
@ -1093,6 +1093,9 @@ struct spi_message {
|
|||
|
||||
unsigned is_dma_mapped:1;
|
||||
|
||||
/* spi_prepare_message() was called for this message */
|
||||
bool prepared;
|
||||
|
||||
/* REVISIT: we might want a flag affecting the behavior of the
|
||||
* last transfer ... allowing things like "read 16 bit length L"
|
||||
* immediately followed by "read L bytes". Basically imposing
|
||||
|
@ -1105,11 +1108,11 @@ struct spi_message {
|
|||
*/
|
||||
|
||||
/* Completion is reported through a callback */
|
||||
int status;
|
||||
void (*complete)(void *context);
|
||||
void *context;
|
||||
unsigned frame_length;
|
||||
unsigned actual_length;
|
||||
int status;
|
||||
|
||||
/* For optional use by whatever driver currently owns the
|
||||
* spi_message ... between calls to spi_async and then later
|
||||
|
@ -1120,9 +1123,6 @@ struct spi_message {
|
|||
|
||||
/* List of spi_res reources when the spi message is processed */
|
||||
struct list_head resources;
|
||||
|
||||
/* spi_prepare_message() was called for this message */
|
||||
bool prepared;
|
||||
};
|
||||
|
||||
static inline void spi_message_init_no_memset(struct spi_message *m)
|
||||
|
|
Загрузка…
Ссылка в новой задаче