/* The only special thing we need to do here is to make sure that all journal_stop calls result in the superblock being marked dirty, so that sync() will call the filesystem's write_super callback if appropriate.  */
int __ext3_journal_stop(const char *where, handle_t *handle)
/* The only special thing we need to do here is to make sure that all journal_stop calls result in the superblock being marked dirty, so that sync() will call the filesystem's write_super callback if appropriate.  */
int __ext3_journal_stop(const char *where, handle_t *handle)
{
	struct super_block *sb;
	int err;
	int rc;
	sb = handle->h_transaction->t_journal->j_private;
	err = handle->h_err;
	rc = journal_stop(handle);
	if (!err)
		err = rc;
	if (err)
		__ext3_std_error(sb, where, err);
	return err;
}