On 05/21/2015 11:11 AM, Takashi Iwai wrote:
At Thu, 21 May 2015 13:37:56 -0400 (EDT),
Alan Stern wrote:
On Thu, 21 May 2015, Takashi Iwai wrote:
At Thu, 21 May 2015 11:26:17 -0400 (EDT),
Alan Stern wrote:
On Thu, 21 May 2015, Takashi Iwai wrote:
At Thu, 21 May 2015 10:18:08 -0400 (EDT),
Alan Stern wrote:
On Thu, 21 May 2015, Takashi Iwai wrote:
Then avoiding the failed firmware is no solution, indeed.
If it's a new probe, it should be never executed during resume.
Can you expand this comment? What's wrong with probing during resume?
Well, if the probe requires the access to a user-space file, it can't
be done during resume. That's the very problem we're seeing now.
The firmware loader can't help much alone if it's a new device
object.
But the same thing happens during early boot, if the driver is built
into the kernel. When the probe occurs, userspace isn't up and running
yet, so the firmware loader can't do anything.
Why should probe during resume be any worse than probe during early
boot?
The early boot has initrd, so the files can be there. But the resume
has no way to fetch the file except for cached data.
I suppose USB could delay re-probing until userspace is running again,
if we knew when that was. But it would be awkward and prone to races.
It also would leave a user-visible window of time during which the
device does not exist, which we want to avoid. (This may not matter
for bluetooth, but it does matter for other kinds of devices.)
Right.
I would prefer to solve this problem in a different way, if possible.
Well, we're back in square again :)
But, before going further the discussion in loop again, I'd like to
know which firmware file actually hits. Is it a non-existing
firmware? Or is it a firmware that should have been cached? In the
latter case, why it isn't used?
Non-existent firmware. The firmware was never present in the system and
was never loaded at all.
Takashi
Thanks,
Laura
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html