Skip to content

Commit

Permalink
[PATCH] dquot: add proper locking when using current->signal->tty
Browse files Browse the repository at this point in the history
Dquot passes the tty to tty_write_message without locking

Signed-off-by: Jan Kara <jack@suse.cz>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Jan Kara authored and Linus Torvalds committed Sep 29, 2006
1 parent 254e948 commit b525a7e
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions fs/dquot.c
Original file line number Diff line number Diff line change
Expand Up @@ -834,6 +834,9 @@ static void print_warning(struct dquot *dquot, const char warntype)
if (!need_print_warning(dquot) || (flag && test_and_set_bit(flag, &dquot->dq_flags)))
return;

mutex_lock(&tty_mutex);
if (!current->signal->tty)
goto out_lock;
tty_write_message(current->signal->tty, dquot->dq_sb->s_id);
if (warntype == ISOFTWARN || warntype == BSOFTWARN)
tty_write_message(current->signal->tty, ": warning, ");
Expand Down Expand Up @@ -861,6 +864,8 @@ static void print_warning(struct dquot *dquot, const char warntype)
break;
}
tty_write_message(current->signal->tty, msg);
out_lock:
mutex_unlock(&tty_mutex);
}

static inline void flush_warnings(struct dquot **dquots, char *warntype)
Expand Down

0 comments on commit b525a7e

Please sign in to comment.