[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110620201533.847236272@bombadil.infradead.org>
Date: Mon, 20 Jun 2011 16:15:33 -0400
From: Christoph Hellwig <hch@...radead.org>
To: viro@...iv.linux.org.uk, tglx@...utronix.de
Cc: linux-fsdevel@...r.kernel.org, linux-ext4@...r.kernel.org,
linux-btrfs@...r.kernel.org, hirofumi@...l.parknet.co.jp,
mfasheh@...e.com, jlbec@...lplan.org
Subject: [PATCH 0/8] remove i_alloc_sem
i_alloc_sem has always been a bit of an odd "lock". It's the only remaining
rw_semaphore that can be released by a different thread than the one that
locked it, and it's use case in the core direct I/O code is more like a
counter given that the writers already have external serialization.
This series removes it in favour of a simpler counter scheme, thus getting
rid of the rw_semaphore non-owner APIs as requests by Thomas, while at the
same time shrinking the size of struct inode by 160 bytes on 64-bit systems.
The only nasty bit is that two filesystems (fat and ext4) have started
abusing the lock for their own purposes. I've added a new rw_semaphore
to their filesystem-specific inode structures to keep the current behaviour,
but I suspect the maintainers might have smarted ideas to archive the same
goal.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists