# Re: \[PATCH v3 1/2\] mmc: Move mmc\_delay() to include/linux/mmc/core.h

- From: Arnd Bergmann \<arnd@arndb.de\>
- Date: 2012-08-10 13:27:56 
- List: linuxppc-dev
- Page: https://ratatoskr.run/linuxppc-dev/2012/08/9470772
- Thread: https://ratatoskr.run/linuxppc-dev/2012/08/9470758/t.md

```text
On Friday 10 August 2012, Chunhe Lan wrote:

> +static inline void mmc_delay(unsigned int ms)
> +{
> +	if (ms < 1000 / HZ) {
> +		cond_resched();
> +		mdelay(ms);
> +	} else {
> +		msleep(ms);
> +	}
> +}

I would actually question the point in this function to start with: The
decision whether to call mdelay() or msleep() should only be based on
whether you are allowed to sleep in the caller context. The idea of


	cond_resched();
	mdelay(ms);

sets off alarm bells, and I would always replace that with msleep().

	Arnd
```
