Re: [PATCH] tmio_mmc_pio: prevent endless loop in tmio_mmc_set_clock()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

On 06/26/2014 11:56 PM, Sergei Shtylyov wrote:

I've spent a couple of days with the driver just hanging due to me forgetting
to specify the external crystal frequency, so that clk_get_rate() returned 0
and thus the loop in tmio_mmc_set_clock() never ended. I don't think that's an
acceptable behavior, so I suggest that the minimum frequency is checked for 0
in tmio_mmc_host_probe().

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>

---
The patch is against Chris Ball's 'mmc.git' repo's 'master' branch.

    I'm still not seeing this patch applied anywhere in this repo... what's
the problem with it?

Chris, Ulf, Ian, what's the issue with this patch? Do you want me to rework it?

  drivers/mmc/host/tmio_mmc_pio.c |    9 +++++++++
  1 file changed, 9 insertions(+)

Index: mmc/drivers/mmc/host/tmio_mmc_pio.c
===================================================================
--- mmc.orig/drivers/mmc/host/tmio_mmc_pio.c
+++ mmc/drivers/mmc/host/tmio_mmc_pio.c
@@ -1044,6 +1044,15 @@ int tmio_mmc_host_probe(struct tmio_mmc_
      }

      /*
+     * Check the sanity of mmc->f_min to prevent tmio_mmc_set_clock() from
+     * looping forever...
+     */
+    if (mmc->f_min == 0) {
+        ret = -EINVAL;
+        goto pm_disable;
+    }
+
+    /*
       * There are 4 different scenarios for the card detection:
       *  1) an external gpio irq handles the cd (best for power savings)
       *  2) internal sdhi irq handles the cd

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux