lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 15 Sep 2017 21:46:31 -0700 From: Kai-Heng Feng <kai.heng.feng@...onical.com> To: mcgrof@...nel.org Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>, LKML <linux-kernel@...r.kernel.org>, Kai-Heng Feng <kai.heng.feng@...onical.com> Subject: Re: [PATCH] firmware: add firmware to new device's devres list for second time cache On Tue, Aug 22, 2017 at 12:52 AM, Kai-Heng Feng <kai.heng.feng@...onical.com> wrote: > Currently, firmware will only be chached if assign_firmware_buf() gets > called. > > When a device loses its power or a USB device gets plugged to another > port under suspend, request_firmware() can still find cached firmware, > but firmware name no longer associates with the new device's devres. > So next time the system suspend, those firmware won't be cached. > > Hence, we should add the firmware name to the devres when the firmware > is found in cache, to make the firmware cacheable next time. > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@...onical.com> > --- > drivers/base/firmware_class.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c > index bfbe1e154128..a99de34e3fdc 100644 > --- a/drivers/base/firmware_class.c > +++ b/drivers/base/firmware_class.c > @@ -1177,6 +1177,10 @@ _request_firmware_prepare(struct firmware **firmware_p, const char *name, > > ret = fw_lookup_and_allocate_buf(name, &fw_cache, &buf, dbuf, size); > > + /* device might be a new one, add it to devres list */ > + if (ret == 0 || ret == 1) > + fw_add_devm_name(device, name); > + > /* > * bind with 'buf' now to avoid warning in failure path > * of requesting firmware. > -- > 2.14.1 > *A gentle ping here*
Powered by blists - more mailing lists