diff --git a/[refs] b/[refs] index 85f4b9f6140d..e74293e3041a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e00ef7997195e4f8e10593727a6286e2e2802159 +refs/heads/master: f21121cde6e617b90cd03ce083652ca543004dc2 diff --git a/trunk/drivers/block/ps3vram.c b/trunk/drivers/block/ps3vram.c index 3bb7c47c869f..1fb6c3135fc8 100644 --- a/trunk/drivers/block/ps3vram.c +++ b/trunk/drivers/block/ps3vram.c @@ -123,7 +123,15 @@ static int ps3vram_notifier_wait(struct ps3_system_bus_device *dev, { struct ps3vram_priv *priv = ps3_system_bus_get_drvdata(dev); u32 *notify = ps3vram_get_notifier(priv->reports, NOTIFIER); - unsigned long timeout = jiffies + msecs_to_jiffies(timeout_ms); + unsigned long timeout; + + for (timeout = 20; timeout; timeout--) { + if (!notify[3]) + return 0; + udelay(10); + } + + timeout = jiffies + msecs_to_jiffies(timeout_ms); do { if (!notify[3])