diff mbox series

[3/4] ASoC: SOF: sof-priv.h: optimize snd_sof_ipc_msg

Message ID 20240802124609.188954-4-pierre-louis.bossart@linux.intel.com
State New
Headers show
Series ASoC: SOF: reshuffle and optimize structures | expand

Commit Message

Pierre-Louis Bossart Aug. 2, 2024, 12:46 p.m. UTC
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@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
---
 sound/soc/sof/sof-priv.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
diff mbox series

Patch

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;
 };
 
 /**