From: "Doug Graham" <dgraham@nortel.com>
To: linux-kernel@vger.kernel.org
Subject: More fun with MinixFS V3
Date: Sat, 4 Jul 2009 14:29:40 -0400 [thread overview]
Message-ID: <20090704182940.GA19185@nortel.com> (raw)
I was just looking over an old thread about MinixFs V3 support and
starting to get worried that my tweaks to support blocksizes of 512
bytes (for a small filesystem with many small files) might be broken.
This is the thread here: http://lkml.org/lkml/2006/5/6/50.
The nblocks() routine in fs/minix/itree_common.c now looks like this:
static inline unsigned nblocks(loff_t size, struct super_block *sb)
{
int k = sb->s_blocksize_bits - 10;
unsigned blocks, res, direct = DIRECT, i = DEPTH;
blocks = (size + sb->s_blocksize - 1) >> (BLOCK_SIZE_BITS + k);
...
and what had be worred at first is that sb->s_blocksize_bits will be 9
with a blocksize of 512, which makes k negative. But all may not be lost,
since k is only used once after this, after adding BLOCK_SIZE_BITS (10)
to it. At least that makes it nonnegative again, but then the question
is: what exactly is being accomplished here? First we subtract 10,
then add it back? The result is effectively this:
blocks = (size + sb->s_blocksize - 1) >> sb->s_blocksize_bits
which looks entirely correct to me. Is there any reason the code couldn't
just be written this way to begin with?
--Doug
reply other threads:[~2009-07-04 18:29 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090704182940.GA19185@nortel.com \
--to=dgraham@nortel.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.