]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops
authorNicholas Piggin <npiggin@gmail.com>
Tue, 10 Apr 2018 11:49:33 +0000 (21:49 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 11 Apr 2018 01:58:43 +0000 (11:58 +1000)
commitdee0b299deffdfd21af507a4dc0b9fe2ba78fc8f
tree3fea8750d6881de6cc071e9b4dc43d92cfad7e35
parentf7f0591ec18645325e1561a8161eace7fca05c0b
powerpc/powernv: Fix OPAL NVRAM driver OPAL_BUSY loops

The OPAL NVRAM driver does not sleep in case it gets OPAL_BUSY or
OPAL_BUSY_EVENT from firmware, which causes large scheduling
latencies, and various lockup errors to trigger (again, BMC reboot
can cause it).

Fix this by converting it to the standard form OPAL_BUSY loop that
sleeps.

Fixes: 51fa8ea17e59 ("powerpc/powernv: Add RTC and NVRAM support plus RTAS fallbacks")
Depends-on: f7f0591ec186 ("powerpc/powernv: define a standard delay for OPAL_BUSY type retry loops")
Cc: stable@vger.kernel.org # v3.2+
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/platforms/powernv/opal-nvram.c