diff mbox series

[1/4] pipe: reduce padding in struct pipe_inode_info

Message ID 20230921075755.1378787-1-max.kellermann@ionos.com (mailing list archive)
State New, archived
Headers show
Series [1/4] pipe: reduce padding in struct pipe_inode_info | expand

Commit Message

Max Kellermann Sept. 21, 2023, 7:57 a.m. UTC
This has no effect on 64 bit because there are 10 32-bit integers
surrounding the two bools, but on 32 bit architectures, this reduces
the struct size by 4 bytes by merging the two bools into one word.

Signed-off-by: Max Kellermann <max.kellermann@ionos.com>
---
 include/linux/pipe_fs_i.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Christian Brauner Sept. 21, 2023, 3:39 p.m. UTC | #1
On Thu, 21 Sep 2023 09:57:52 +0200, Max Kellermann wrote:
> This has no effect on 64 bit because there are 10 32-bit integers
> surrounding the two bools, but on 32 bit architectures, this reduces
> the struct size by 4 bytes by merging the two bools into one word.
> 
> 

I've massaged the last commit a bit and moved that bit into a helper
instead of indentorama in pipe_write(). keyutils watchqueue tests and
LTP pipe and watch queue tests pass without regressions.

---

Applied to the vfs.misc branch of the vfs/vfs.git tree.
Patches in the vfs.misc branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs.misc

[1/4] pipe: reduce padding in struct pipe_inode_info
      https://git.kernel.org/vfs/vfs/c/5ba6d9b6d526
[2/4] fs/pipe: move check to pipe_has_watch_queue()
      https://git.kernel.org/vfs/vfs/c/7084dde72592
[3/4] fs/pipe: remove unnecessary spinlock from pipe_write()
      https://git.kernel.org/vfs/vfs/c/b9e8c77cad52
[4/4] fs/pipe: use spinlock in pipe_read() only if there is a watch_queue
      https://git.kernel.org/vfs/vfs/c/4c280825d39c
diff mbox series

Patch

diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h
index 608a9eb86bff..598a411d7da2 100644
--- a/include/linux/pipe_fs_i.h
+++ b/include/linux/pipe_fs_i.h
@@ -62,9 +62,6 @@  struct pipe_inode_info {
 	unsigned int tail;
 	unsigned int max_usage;
 	unsigned int ring_size;
-#ifdef CONFIG_WATCH_QUEUE
-	bool note_loss;
-#endif
 	unsigned int nr_accounted;
 	unsigned int readers;
 	unsigned int writers;
@@ -72,6 +69,9 @@  struct pipe_inode_info {
 	unsigned int r_counter;
 	unsigned int w_counter;
 	bool poll_usage;
+#ifdef CONFIG_WATCH_QUEUE
+	bool note_loss;
+#endif
 	struct page *tmp_page;
 	struct fasync_struct *fasync_readers;
 	struct fasync_struct *fasync_writers;