[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4BB0EED2.4020406@zytor.com>
Date: Mon, 29 Mar 2010 11:17:54 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: Jesse Barnes <jbarnes@...tuousgeek.org>
CC: Giel van Schijndel <me@...tis.eu>,
Alan Cox <alan@...rguk.ukuu.org.uk>,
Hans de Goede <hdegoede@...hat.com>,
Jean Delvare <khali@...ux-fr.org>,
Jonathan Cameron <jic23@....ac.uk>,
Andrew Morton <akpm@...ux-foundation.org>,
Bjorn Helgaas <bjorn.helgaas@...com>,
Dominik Brodowski <linux@...inikbrodowski.net>,
Laurens Leemans <laurens@...nips.com>,
lm-sensors@...sensors.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/3] resource: shared I/O region support
On 03/29/2010 11:06 AM, Jesse Barnes wrote:
>>
>> I have to question this approach a bit.
>>
>> I would much rather see this as a two-step process, where multiple
>> devices request the same region with a "sharable" flag, and then have a
>> mutex associated with the struct resource (perhaps we need an outer
>> container called "struct muxed_resource" or some such.)
>>
>> What I *really* object to with this patch is that it inherently assumes
>> that there is only one multiplexed resource in the entire system... but
>> of course nowhere enforces that.
>
> Well that does keep it simple, and with just one user that's probably
> best.
>
> But why not use the common bus driver method? Muxing at the resource
> level only seems to solve part of the problem... It doesn't guarantee
> for example that driver A does something to a shared region that breaks
> driver B; it just makes sure they don't access the same region at the
> same time.
>
The common bus driver method is the obvious thing to do, but it would
presumably be greatly helped by librarization.
-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists