Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Revert "task_struct: make journal_info conditional"

This reverts commit e4c570c4cb7a95dbfafa3d016d2739bf3fdfe319, as
requested by Alexey:

"I think I gave a good enough arguments to not merge it.
To iterate:
* patch makes impossible to start using ext3 on EXT3_FS=n kernels
without reboot.
* this is done only for one pointer on task_struct"

None of config options which define task_struct are tristate directly
or effectively."

Requested-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

+1 -20
-4
fs/Kconfig
··· 6 6 7 7 if BLOCK 8 8 9 - config FS_JOURNAL_INFO 10 - bool 11 - default n 12 - 13 9 source "fs/ext2/Kconfig" 14 10 source "fs/ext3/Kconfig" 15 11 source "fs/ext4/Kconfig"
-1
fs/btrfs/Kconfig
··· 4 4 select LIBCRC32C 5 5 select ZLIB_INFLATE 6 6 select ZLIB_DEFLATE 7 - select FS_JOURNAL_INFO 8 7 help 9 8 Btrfs is a new filesystem with extents, writable snapshotting, 10 9 support for multiple devices and many more features.
-1
fs/ext4/Kconfig
··· 2 2 tristate "The Extended 4 (ext4) filesystem" 3 3 select JBD2 4 4 select CRC16 5 - select FS_JOURNAL_INFO 6 5 help 7 6 This is the next generation of the ext3 filesystem. 8 7
-1
fs/gfs2/Kconfig
··· 10 10 select SLOW_WORK 11 11 select QUOTA 12 12 select QUOTACTL 13 - select FS_JOURNAL_INFO 14 13 help 15 14 A cluster filesystem. 16 15
-1
fs/jbd/Kconfig
··· 1 1 config JBD 2 2 tristate 3 - select FS_JOURNAL_INFO 4 3 help 5 4 This is a generic journalling layer for block devices. It is 6 5 currently used by the ext3 file system, but it could also be
-1
fs/jbd2/Kconfig
··· 1 1 config JBD2 2 2 tristate 3 3 select CRC32 4 - select FS_JOURNAL_INFO 5 4 help 6 5 This is a generic journaling layer for block devices that support 7 6 both 32-bit and 64-bit block numbers. It is currently used by
-1
fs/nilfs2/Kconfig
··· 2 2 tristate "NILFS2 file system support (EXPERIMENTAL)" 3 3 depends on EXPERIMENTAL 4 4 select CRC32 5 - select FS_JOURNAL_INFO 6 5 help 7 6 NILFS2 is a log-structured file system (LFS) supporting continuous 8 7 snapshotting. In addition to versioning capability of the entire
-1
fs/reiserfs/Kconfig
··· 1 1 config REISERFS_FS 2 2 tristate "Reiserfs support" 3 3 select CRC32 4 - select FS_JOURNAL_INFO 5 4 help 6 5 Stores not just filenames but the files themselves in a balanced 7 6 tree. Uses journalling.
+1 -7
include/linux/init_task.h
··· 111 111 # define INIT_PERF_EVENTS(tsk) 112 112 #endif 113 113 114 - #ifdef CONFIG_FS_JOURNAL_INFO 115 - #define INIT_JOURNAL_INFO .journal_info = NULL, 116 - #else 117 - #define INIT_JOURNAL_INFO 118 - #endif 119 - 120 114 /* 121 115 * INIT_TASK is used to set up the first task table, touch at 122 116 * your own risk!. Base=0, limit=0x1fffff (=2MB) ··· 162 168 .signal = {{0}}}, \ 163 169 .blocked = {{0}}, \ 164 170 .alloc_lock = __SPIN_LOCK_UNLOCKED(tsk.alloc_lock), \ 171 + .journal_info = NULL, \ 165 172 .cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \ 166 173 .fs_excl = ATOMIC_INIT(0), \ 167 174 .pi_lock = __RAW_SPIN_LOCK_UNLOCKED(tsk.pi_lock), \ ··· 173 178 [PIDTYPE_SID] = INIT_PID_LINK(PIDTYPE_SID), \ 174 179 }, \ 175 180 .dirties = INIT_PROP_LOCAL_SINGLE(dirties), \ 176 - INIT_JOURNAL_INFO \ 177 181 INIT_IDS \ 178 182 INIT_PERF_EVENTS(tsk) \ 179 183 INIT_TRACE_IRQFLAGS \
-2
include/linux/sched.h
··· 1446 1446 gfp_t lockdep_reclaim_gfp; 1447 1447 #endif 1448 1448 1449 - #ifdef CONFIG_FS_JOURNAL_INFO 1450 1449 /* journalling filesystem info */ 1451 1450 void *journal_info; 1452 - #endif 1453 1451 1454 1452 /* stacked block device info */ 1455 1453 struct bio *bio_list, **bio_tail;