public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Johannes Reif <reif@corscience.de>
To: Dave Hylands <dhylands@gmail.com>
Cc: "S, Venkatraman" <svenkatr@ti.com>,
	Mathieu Poirier <mathieu.poirier@canonical.com>,
	Madhusudhan Chikkature <madhu.cr@ti.com>,
	Thomas Weber <weber@corscience.de>,
	linux-omap <linux-omap@vger.kernel.org>
Subject: Re: SDHC card affected by preemption model in 2.6.35
Date: Tue, 22 Feb 2011 11:03:14 +0100	[thread overview]
Message-ID: <4D6389E2.3090504@corscience.de> (raw)
In-Reply-To: <AANLkTi=UMbOYFORyTvicCvAMEd=dig7xaROMLdkcfhGW@mail.gmail.com>

Hi all,

On 22.02.2011 02:43, Dave Hylands wrote:

> Hi guys,
>
> There is a bug in the kernel workqueues. I observed it in 2.6.36.3 (it
> seems to have been introduced in 2.6.36 and is still in 2.6.37.1), One
> of my colleagues was investigating and contacted the author of the
> workqueue code (Tejun Heo). Tejun sent us the following patch:
>
> diff --git a/kernel/workqueue.c b/kernel/workqueue.c
> index 11869fa..90a17ca 100644
> --- a/kernel/workqueue.c
> +++ b/kernel/workqueue.c
> @@ -2047,6 +2047,15 @@ repeat:
>   				move_linked_works(work, scheduled,&n);
>
>   		process_scheduled_works(rescuer);
> +
> +		/*
> +		 * Leave this gcwq.  If keep_working() is %true, notify a
> +		 * regular worker; otherwise, we end up with 0 concurrency
> +		 * and stalling the execution.
> +		 */
> +		if (keep_working(gcwq))
> +			wake_up_worker(gcwq);
> +
>   		spin_unlock_irq(&gcwq->lock);
>   	}
>
>
> For us, this was causing card insertion events to not be processed.
> For us it was a race condition and depended on when the timer tick
> occured in relation to other processing, and since you're talking
> about PREEMPTION making a difference, I thought I would throw this out
> as maybe being relevant.
>
> Dave Hylands

unfortunately the cards didn't work with the patch.

We tried updating from 2.6.37-rc8 to 2.6.38-rc5 and the timeout error still occurs. However the cards get detected after the error and seem to work fine:

[    2.456512] Waiting for root device /dev/mmcblk0p2...
[    4.803375] mmc0: error -110 whilst initialising SD card
[    5.201019] mmc0: new SD card at address aaaa
[    5.206665] mmcblk0: mmc0:aaaa SU02G 1.84 GiB
[    5.214477]  mmcblk0: p1 p2

Regards,
Johannes


  reply	other threads:[~2011-02-22 10:03 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-21 11:53 SDHC card affected by preemption model in 2.6.35 Johannes Reif
2011-02-22  1:43 ` Dave Hylands
2011-02-22 10:03   ` Johannes Reif [this message]
  -- strict thread matches above, loose matches on Subject: below --
2010-06-15 14:52 Mathieu Poirier
2010-06-15 15:28 ` Venkatraman S
2010-06-15 21:17   ` Mathieu Poirier
2010-06-15 21:55     ` David Brownell
2010-06-15 22:43       ` Mathieu Poirier
2010-06-16  8:43     ` Venkatraman S
2010-06-16 22:12       ` Mathieu Poirier
2010-06-17 14:33         ` Venkatraman S
2011-02-18 12:57           ` Thomas Weber
     [not found]             ` <AANLkTikXGhSfaXqzXWsgB=z8OKeRnUR85zAnspaALHxD@mail.gmail.com>
2011-02-20 17:14               ` S, Venkatraman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4D6389E2.3090504@corscience.de \
    --to=reif@corscience.de \
    --cc=dhylands@gmail.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=madhu.cr@ti.com \
    --cc=mathieu.poirier@canonical.com \
    --cc=svenkatr@ti.com \
    --cc=weber@corscience.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox