On 1/21/19 2:49 AM, Christoph Hellwig wrote: >> + buf->f_fsid.val[1] = (u32)crc32_le(0, (char *)&sbi->uuid + >> sizeof(sbi->uuid)/2, > > This adds an overly long line, and has weird operator spacing. > > In fact given how much deep magic it does it should probably be moved > into a helper and properly documented when you touch it anyway. >
I cleaned this up a bit when I pushed it to the jfs tree. https://github.com/kleikamp/linux-shaggy/commit/2e3bc6125154c691e987e2554f2c99ec10f83b73 Here's the relevant part. It's still a bit ugly, but I got rid of an unnecessary cast and kept the lines from exceeding 80 characters. diff --git a/fs/jfs/super.c b/fs/jfs/super.c index 65d8fc87ab11..c15ff56a8516 100644 --- a/fs/jfs/super.c +++ b/fs/jfs/super.c @@ -174,9 +174,11 @@ static int jfs_statfs(struct dentry *dentry, struct kstatfs *buf) buf->f_files = maxinodes; buf->f_ffree = maxinodes - (atomic_read(&imap->im_numinos) - atomic_read(&imap->im_numfree)); - buf->f_fsid.val[0] = (u32)crc32_le(0, sbi->uuid, sizeof(sbi->uuid)/2); - buf->f_fsid.val[1] = (u32)crc32_le(0, sbi->uuid + sizeof(sbi->uuid)/2, - sizeof(sbi->uuid)/2); + buf->f_fsid.val[0] = crc32_le(0, (char *)&sbi->uuid, + sizeof(sbi->uuid)/2); + buf->f_fsid.val[1] = crc32_le(0, + (char *)&sbi->uuid + sizeof(sbi->uuid)/2, + sizeof(sbi->uuid)/2); buf->f_namelen = JFS_NAME_MAX; return 0;