Showing error 1201

User: Jiri Slaby
Error type: Double Unlock
Error type description: Some lock is unlocked twice unintentionally in a sequence
File location: fs/ocfs2/alloc.c
Line in file: 6936
Project: Linux Kernel
Project version: 2.6.28
Tools: Stanse (1.2)
Entered: 2012-04-30 10:52:00 UTC


Source:

6906                mlog_errno(status);
6907                goto bail;
6908        }
6909
6910        status = ocfs2_do_truncate(osb, clusters_to_del, inode, fe_bh, handle,
6911                                   tc, path);
6912        if (status < 0) {
6913                mlog_errno(status);
6914                goto bail;
6915        }
6916
6917        mutex_unlock(&tl_inode->i_mutex);
6918        tl_sem = 0;
6919
6920        ocfs2_commit_trans(osb, handle);
6921        handle = NULL;
6922
6923        ocfs2_reinit_path(path, 1);
6924
6925        /*
6926         * The check above will catch the case where we've truncated
6927         * away all allocation.
6928         */
6929        goto start;
6930
6931bail:
6932
6933        ocfs2_schedule_truncate_log_flush(osb, 1);
6934
6935        if (tl_sem)
6936                mutex_unlock(&tl_inode->i_mutex);
6937
6938        if (handle)
6939                ocfs2_commit_trans(osb, handle);
6940
6941        ocfs2_run_deallocs(osb, &tc->tc_dealloc);
6942
6943        ocfs2_free_path(path);
6944
6945        /* This will drop the ext_alloc cluster lock for us */
6946        ocfs2_free_truncate_context(tc);
Show full sources