Re: [PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-08-08 Thread Benson Leung
On Mon, Aug 8, 2016 at 9:11 AM,  wrote:
>
> From: Christopher Freeman 
>
> wait_event_interruptible_timeout() will return early if the blocked
> process receives a signal, causing the driver to abort the tuning
> procedure and possibly leaving the controller in a bad state.  Since the
> tuning command is expected to complete quickly (<50ms) and we've set a
> timeout, use wait_event_timeout() instead.
>
> Signed-off-by: Christopher Freeman 
> Tested-by: Robert Foss 
> Signed-off-by: Robert Foss 

Reviewed-by: Benson Leung 

Thanks Robert!



-- 
Benson Leung
Senior Software Engineer, Chrom* OS
ble...@chromium.org


Re: [PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-08-08 Thread Benson Leung
On Mon, Aug 8, 2016 at 9:11 AM,  wrote:
>
> From: Christopher Freeman 
>
> wait_event_interruptible_timeout() will return early if the blocked
> process receives a signal, causing the driver to abort the tuning
> procedure and possibly leaving the controller in a bad state.  Since the
> tuning command is expected to complete quickly (<50ms) and we've set a
> timeout, use wait_event_timeout() instead.
>
> Signed-off-by: Christopher Freeman 
> Tested-by: Robert Foss 
> Signed-off-by: Robert Foss 

Reviewed-by: Benson Leung 

Thanks Robert!



-- 
Benson Leung
Senior Software Engineer, Chrom* OS
ble...@chromium.org


[PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-08-08 Thread robert . foss
From: Christopher Freeman 

wait_event_interruptible_timeout() will return early if the blocked
process receives a signal, causing the driver to abort the tuning
procedure and possibly leaving the controller in a bad state.  Since the
tuning command is expected to complete quickly (<50ms) and we've set a
timeout, use wait_event_timeout() instead.

Signed-off-by: Christopher Freeman 
Tested-by: Robert Foss 
Signed-off-by: Robert Foss 
---

This is a resubmission of v2 of this patch.

 drivers/mmc/host/sdhci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 0e3d7c0..9e80203 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1960,7 +1960,7 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 
opcode)
 
spin_unlock_irqrestore(>lock, flags);
/* Wait for Buffer Read Ready interrupt */
-   wait_event_interruptible_timeout(host->buf_ready_int,
+   wait_event_timeout(host->buf_ready_int,
(host->tuning_done == 1),
msecs_to_jiffies(50));
spin_lock_irqsave(>lock, flags);
-- 
2.7.4



[PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-08-08 Thread robert . foss
From: Christopher Freeman 

wait_event_interruptible_timeout() will return early if the blocked
process receives a signal, causing the driver to abort the tuning
procedure and possibly leaving the controller in a bad state.  Since the
tuning command is expected to complete quickly (<50ms) and we've set a
timeout, use wait_event_timeout() instead.

Signed-off-by: Christopher Freeman 
Tested-by: Robert Foss 
Signed-off-by: Robert Foss 
---

This is a resubmission of v2 of this patch.

 drivers/mmc/host/sdhci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 0e3d7c0..9e80203 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1960,7 +1960,7 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 
opcode)
 
spin_unlock_irqrestore(>lock, flags);
/* Wait for Buffer Read Ready interrupt */
-   wait_event_interruptible_timeout(host->buf_ready_int,
+   wait_event_timeout(host->buf_ready_int,
(host->tuning_done == 1),
msecs_to_jiffies(50));
spin_lock_irqsave(>lock, flags);
-- 
2.7.4



[PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-07-28 Thread robert . foss
From: Christopher Freeman 

wait_event_interruptible_timeout() will return early if the blocked
process receives a signal, causing the driver to abort the tuning
procedure and possibly leaving the controller in a bad state.  Since the
tuning command is expected to complete quickly (<50ms) and we've set a
timeout, use wait_event_timeout() instead.

Signed-off-by: Christopher Freeman 
Tested-by: Robert Foss 
Signed-off-by: Robert Foss 
---
 drivers/mmc/host/sdhci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 0e3d7c0..9e80203 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1960,7 +1960,7 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 
opcode)
 
spin_unlock_irqrestore(>lock, flags);
/* Wait for Buffer Read Ready interrupt */
-   wait_event_interruptible_timeout(host->buf_ready_int,
+   wait_event_timeout(host->buf_ready_int,
(host->tuning_done == 1),
msecs_to_jiffies(50));
spin_lock_irqsave(>lock, flags);
-- 
2.7.4



[PACTH v2] mmc: sdhci: Do not allow tuning procedure to be interrupted

2016-07-28 Thread robert . foss
From: Christopher Freeman 

wait_event_interruptible_timeout() will return early if the blocked
process receives a signal, causing the driver to abort the tuning
procedure and possibly leaving the controller in a bad state.  Since the
tuning command is expected to complete quickly (<50ms) and we've set a
timeout, use wait_event_timeout() instead.

Signed-off-by: Christopher Freeman 
Tested-by: Robert Foss 
Signed-off-by: Robert Foss 
---
 drivers/mmc/host/sdhci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 0e3d7c0..9e80203 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1960,7 +1960,7 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 
opcode)
 
spin_unlock_irqrestore(>lock, flags);
/* Wait for Buffer Read Ready interrupt */
-   wait_event_interruptible_timeout(host->buf_ready_int,
+   wait_event_timeout(host->buf_ready_int,
(host->tuning_done == 1),
msecs_to_jiffies(50));
spin_lock_irqsave(>lock, flags);
-- 
2.7.4