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

Commit df54b52c authored by Josh Boyer's avatar Josh Boyer Committed by David Woodhouse
Browse files

CHIPS: Fix potential starvation in cfi_cmdset_0001



The patch below fixes a potential starvation issue that can arise when
there is contention on a chip during a period when a process is
currently writing to it.  The starvation is avoided by conditionally
rescheduling when the chip is left in a state usable by other processes.

Signed-off-by: default avatarJosh Boyer <jdub@us.ibm.com>
Signed-off-by: default avatarTom Gall <tom_gall@vnet.ibm.com>
Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
parent ba9627b8
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1691,6 +1691,11 @@ static int cfi_intelext_writev (struct mtd_info *mtd, const struct kvec *vecs,
			if (chipnum == cfi->numchips)
				return 0;
		}

		/* Be nice and reschedule with the chip in a usable state for other
		   processes. */
		cond_resched();

	} while (len);

	return 0;