On Thu 14-07-22 19:53:38, Kiselev, Oleg wrote: > > > >> + sbi->s_overhead += overhead; > >> + es->s_overhead_clusters = cpu_to_le32((unsigned long) sbi->s_overhead); > > ^^^ the typecast looks > > bogus here... > > This cast is the reverse of le32_to_cpu() cast done in fs/ext4/super.c:__ext4_fill_super(): > sbi->s_overhead = le32_to_cpu(es->s_overhead_clusters); > And follows the logic of casting done in fs/ext4/ioctl.c:set_overhead() and fs/ext4/ioctl.c:ext4_update_overhead(). I didn't mean the cpu_to_le32() call but rather the (unsigned long) part. That is pointless because sbi->s_overhead is already 'unsigned long' and even if it was not, I have hard time seeing a reason why would casting to unsigned long make any difference here. Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR