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

Commit d0acf734 authored by Corey Minyard's avatar Corey Minyard
Browse files

ipmi_ssif: Use interruptible completion for waiting in the thread



The code was using an normal completion, but that caused stuck
task errors after a while.  Use an interruptible one to avoid that.

Signed-off-by: default avatarCorey Minyard <cminyard@mvista.com>
parent ad1ed2a9
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -468,11 +468,13 @@ static int ipmi_ssif_thread(void *data)
		int result;

		/* Wait for something to do */
		wait_for_completion(&ssif_info->wake_thread);
		init_completion(&ssif_info->wake_thread);

		result = wait_for_completion_interruptible(
						&ssif_info->wake_thread);
		if (ssif_info->stopping)
			break;
		if (result == -ERESTARTSYS)
			continue;
		init_completion(&ssif_info->wake_thread);

		if (ssif_info->i2c_read_write == I2C_SMBUS_WRITE) {
			result = i2c_smbus_write_block_data(