aboutsummaryrefslogtreecommitdiff
path: root/drivers/hid
diff options
context:
space:
mode:
authorTao Ma2009-12-18 10:24:54 +0800
committerJoel Becker2009-12-18 13:32:20 -0800
commitc7d260afcbc0f9f4074e74796d4e3646875c08e1 (patch)
tree71d200fa3fddd6d98c39ecc48fd7b6ca10d91afc /drivers/hid
parent12d4cec988a8a20927a9795dbf2c6d9ef2f85baa (diff)
ocfs2: Add reflinked file's inode to inode hash eariler.
We used to add reflinked file's inode to inode hash when we add it to the dest dir. But actually there is a race. Consider the following sequence. 1. reflink happens and create the inode in orphan dir. 2. reflink thread is scheduled out because of some io. 3. recovery begins to work and calls ocfs2_recover_orphans. It calls ocfs2_iget and get a new inode and i_count = 1. It calls iput then and delete inode. the buffer's uptodate state is cleared. This patch move insert_inode_hash to the create function so that it can be found by step 3 and prevented from deleting because i_count > 1. This resolves the bug http://oss.oracle.com/bugzilla/show_bug.cgi?id=1183. Signed-off-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
Diffstat (limited to 'drivers/hid')
0 files changed, 0 insertions, 0 deletions