[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPcyv4i=gD0D_W8ufjCdjRuekS-mf9fZGmod+zn7dA2zDx7LAw@mail.gmail.com>
Date: Thu, 17 Dec 2015 12:35:54 -0800
From: Dan Williams <dan.j.williams@...el.com>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: Tomeu Vizoso <tomeu.vizoso@...labora.com>,
Marek Szyprowski <m.szyprowski@...sung.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-nvdimm@...ts.01.org" <linux-nvdimm@...1.01.org>,
Stephen Rothwell <sfr@...b.auug.org.au>, dhowells@...hat.com
Subject: Re: -next regression: "driver cohandle -EPROBE_DEFER from bus_type.match()"
[Adding Dave Howells who tried to correct this situation earlier this year]
On Thu, Dec 17, 2015 at 10:46 AM, Russell King - ARM Linux
<linux@....linux.org.uk> wrote:
> On Thu, Dec 17, 2015 at 07:51:14AM -0800, Dan Williams wrote:
>> The commit below causes the libnvdimm sub-system to stop loading.
>> This is due to the fact that nvdimm_bus_match() returns the result of
>> test_bit() which may be negative. If there are any other bus match
>> functions using test_bit they may be similarly impacted.
>>
>> Can we queue a fixup like the following to libnvdimm, and maybe
>> others, ahead of this driver core change?
>
> This is rather annoying. Have we uncovered a latent bug in other
> architectures? Well, looking through the test_bit() implementations,
> it looks like it.
>
> I'll drop the patch set for the time being, we can't go around breaking
> stuff like this.
...or make the interpretation from the return value of ->match() be 0,
-EPROBE_DEFER, or other non-zero value for success? Although that's
fairly subtle.
> However, I think the test_bit() result should be
> regularised across different architectures - it _looks_ to me like most
> implementations return 0/1 values, but there may be some that don't
> (maybe the assembly versions?)
Correct. Al the constant versions return 0 or 1, but the assembly
return 0 or non-zero.
Here's a link to Dave's rework.
https://lwn.net/Articles/642437/
--
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