Commit 9d217fb0 authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Keith Busch
Browse files

nvme: reorder fields in 'struct nvme_ctrl'



Group some variables based on their sizes to reduce holes.
On x86_64, this shrinks the size of 'struct nvme_ctrl' from 5368 to 5344
bytes when all CONFIG_* are defined.

This structure is embedded into some other structures, so it helps reducing
their size as well.

Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarKeith Busch <kbusch@kernel.org>
parent c60651e3
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -246,8 +246,8 @@ enum nvme_ctrl_flags {

struct nvme_ctrl {
	bool comp_seen;
	enum nvme_ctrl_state state;
	bool identified;
	enum nvme_ctrl_state state;
	spinlock_t lock;
	struct mutex scan_lock;
	const struct nvme_ctrl_ops *ops;
@@ -279,8 +279,8 @@ struct nvme_ctrl {
	char name[12];
	u16 cntlid;

	u32 ctrl_config;
	u16 mtfa;
	u32 ctrl_config;
	u32 queue_count;

	u64 cap;
@@ -353,10 +353,10 @@ struct nvme_ctrl {
	bool apst_enabled;

	/* PCIe only: */
	u16 hmmaxd;
	u32 hmpre;
	u32 hmmin;
	u32 hmminds;
	u16 hmmaxd;

	/* Fabrics only */
	u32 ioccsz;