All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jean Delvare <khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org>
To: Mika Kuoppala <mika.kuoppala-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
Cc: ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 0/1] Better i2c access latencies in high load situations
Date: Wed, 16 Sep 2009 13:49:44 +0200	[thread overview]
Message-ID: <20090916134944.4a329d62@hyperion.delvare> (raw)
In-Reply-To: <1253099829-17655-1-git-send-email-mika.kuoppala-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>

Hi Mika,

On Wed, 16 Sep 2009 14:17:08 +0300, Mika Kuoppala wrote:
> If low priority thread is holding the bus lock while more high
> priority threads needs the same i2c bus, priority inversion occurs and
> access latency can grow quite large. In my setup i have seen as high as
> 150ms access latencies in some workloads when the actual physical
> transaction is finished in less than 5ms.
> 
> The following patch (in separate email) fixes the priority
> inversion problem described above by converting the i2c bus lock mutex
> to rt_mutex. rt_mutex uses priority inheritance: low priority thread
> holding the mutex will get a kick if high priority thread is trying
> to acquire the lock.

Can you please define "get a kick"? I don't know anything about
rt_mutex.

> 
> Thanks,
> -- Mika
> 
> Mika Kuoppala (1):
>   i2c: Prevent priority inversion on top of bus lock by converting it
>     to rt_mutex
> 
>  drivers/i2c/i2c-core.c |   13 +++++++------
>  include/linux/i2c.h    |    3 +--
>  2 files changed, 8 insertions(+), 8 deletions(-)
> 


-- 
Jean Delvare

  parent reply	other threads:[~2009-09-16 11:49 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-16 11:17 [PATCH 0/1] Better i2c access latencies in high load situations Mika Kuoppala
     [not found] ` <1253099829-17655-1-git-send-email-mika.kuoppala-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2009-09-16 11:17   ` [PATCH 1/1] i2c: Prevent priority inversion on top of bus lock Mika Kuoppala
     [not found]     ` <1253099829-17655-2-git-send-email-mika.kuoppala-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2009-09-16 11:51       ` Jean Delvare
     [not found]         ` <20090916135159.0d74f178-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2009-09-16 12:35           ` Mika Kuoppala
2009-09-16 20:32             ` Jean Delvare
2009-09-16 11:49   ` Jean Delvare [this message]
     [not found]     ` <20090916134944.4a329d62-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2009-09-16 12:08       ` [PATCH 0/1] Better i2c access latencies in high load situations Mika Kuoppala
2009-09-16 20:43         ` Jean Delvare
     [not found]           ` <20090916224328.47e349ab-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2009-09-21 13:14             ` Mika Kuoppala
2009-09-21 16:30               ` Jean Delvare

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=20090916134944.4a329d62@hyperion.delvare \
    --to=khali-puyad+kwke1g9huczpvpmw@public.gmane.org \
    --cc=ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mika.kuoppala-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.