Move waitq to make sure it's entirely in the same cache line, and move
ipc_complete to reduce padding.
struct snd_sof_ipc_msg {
void * msg_data; /* 0 8 */
void * reply_data; /* 8 8 */
size_t msg_size; /* 16 8 */
size_t reply_size; /* 24 8 */
int reply_error; /* 32 4 */
bool ipc_complete; /* 36 1 */
/* XXX 3 bytes hole, try to pack */
wait_queue_head_t waitq; /* 40 88 */
/* --- cacheline 2 boundary (128 bytes) --- */
void * rx_data; /* 128 8 */
/* size: 136, cachelines: 3, members: 8 */
/* sum members: 133, holes: 1, sum holes: 3 */
/* last cacheline: 8 bytes */
};
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@xxxxxxxxxxxxxxx>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@xxxxxxxxxxxxxxx>
---
sound/soc/sof/sof-priv.h | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/sound/soc/sof/sof-priv.h b/sound/soc/sof/sof-priv.h
index 6ecc58e11592..843be3b6415d 100644
--- a/sound/soc/sof/sof-priv.h
+++ b/sound/soc/sof/sof-priv.h
@@ -425,11 +425,12 @@ struct snd_sof_ipc_msg {
size_t reply_size;
int reply_error;
+ bool ipc_complete;
+
+ wait_queue_head_t waitq;
+
/* notification, firmware initiated messages */
void *rx_data;
-
- wait_queue_head_t waitq;
- bool ipc_complete;
};
/**
--
2.43.0
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]