Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d86d9b8c authored by Stephen Rothwell's avatar Stephen Rothwell Committed by Paul Mackerras
Browse files

[POWERPC] fix spin lock nesting in hvc_iseries



We had nested spinlocks using the same flags variable, but it turns out
that we don't need the nested locks at all (the lock protects a static
buffer that we aren't using here), so just remove the extra locks.

Spotted by Alexey Dobriyan.

Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 022d51b1
Loading
Loading
Loading
Loading
+1 −6
Original line number Diff line number Diff line
@@ -153,9 +153,7 @@ static int put_chars(uint32_t vtermno, const char *buf, int count)
	spin_lock_irqsave(&consolelock, flags);

	if (viochar_is_console(pi) && !viopath_isactive(pi->lp)) {
		spin_lock_irqsave(&consoleloglock, flags);
		HvCall_writeLogBuffer(buf, count);
		spin_unlock_irqrestore(&consoleloglock, flags);
		sent = count;
		goto done;
	}
@@ -171,11 +169,8 @@ static int put_chars(uint32_t vtermno, const char *buf, int count)

		len = (count > VIOCHAR_MAX_DATA) ? VIOCHAR_MAX_DATA : count;

		if (viochar_is_console(pi)) {
			spin_lock_irqsave(&consoleloglock, flags);
		if (viochar_is_console(pi))
			HvCall_writeLogBuffer(buf, len);
			spin_unlock_irqrestore(&consoleloglock, flags);
		}

		init_data_event(viochar, pi->lp);