f2fs: merge two uchar variable in struct node_info to reduce memory cost
authorChao Yu <chao2.yu@samsung.com>
Thu, 18 Dec 2014 09:37:21 +0000 (17:37 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Sat, 10 Jan 2015 01:02:23 +0000 (17:02 -0800)
commit5c27f4ee447b4ef1cd88d5313eeb838c56265571
tree4751969bf674317d57582deb6a59dda23f75f2a1
parent3fa06d7bc9f579bd180e879fd1c9bdb6b1b0d9b7
f2fs: merge two uchar variable in struct node_info to reduce memory cost

This patch moves one member of struct nat_entry: _flag_ to struct node_info,
so _version_ in struct node_info and _flag_ which are unsigned char type will
merge to one 32-bit space in register/memory. So the size of nat_entry will be
reduced from 28 bytes to 24 bytes (for 64-bit machine, reduce its size from 40
bytes to 32 bytes) and then slab memory using by f2fs will be reduced.

changes from v2:
 o update description of memory usage gain for 64-bit machine suggested by
   Changman Lee.
changes from v1:
 o introduce inline copy_node_info() to copy valid data from node info suggested
   by Jaegeuk Kim, it can avoid bug.

Reviewed-by: Changman Lee <cm224.lee@samsung.com>
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/node.c
fs/f2fs/node.h