[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170131075507.45721c17@vento.lan>
Date: Tue, 31 Jan 2017 07:55:07 -0200
From: Mauro Carvalho Chehab <mchehab@...pensource.com>
To: SF Markus Elfring <elfring@...rs.sourceforge.net>
Cc: linux-media@...r.kernel.org,
Dave Hansen <dave.hansen@...ux.intel.com>,
Jan Kara <jack@...e.cz>,
Javier Martinez Canillas <javier@....samsung.com>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Lorenzo Stoakes <lstoakes@...il.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Michal Hocko <mhocko@...e.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
LKML <linux-kernel@...r.kernel.org>,
kernel-janitors@...r.kernel.org
Subject: Re: [PATCH 2/8] [media] v4l2-async: Delete an error message for a
failed memory allocation in v4l2_async_notifier_unregister()
Em Mon, 26 Dec 2016 21:45:50 +0100
SF Markus Elfring <elfring@...rs.sourceforge.net> escreveu:
> From: Markus Elfring <elfring@...rs.sourceforge.net>
> Date: Mon, 26 Dec 2016 19:19:49 +0100
>
> The script "checkpatch.pl" pointed information out like the following.
>
> WARNING: Possible unnecessary 'out of memory' message
>
> Thus fix the affected source code place.
>
> Signed-off-by: Markus Elfring <elfring@...rs.sourceforge.net>
> ---
> drivers/media/v4l2-core/v4l2-async.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/media/v4l2-core/v4l2-async.c b/drivers/media/v4l2-core/v4l2-async.c
> index 277183f2d514..812d0b2a2f73 100644
> --- a/drivers/media/v4l2-core/v4l2-async.c
> +++ b/drivers/media/v4l2-core/v4l2-async.c
> @@ -203,11 +203,6 @@ void v4l2_async_notifier_unregister(struct v4l2_async_notifier *notifier)
> return;
>
> dev = kmalloc_array(n_subdev, sizeof(*dev), GFP_KERNEL);
> - if (!dev) {
> - dev_err(notifier->v4l2_dev->dev,
> - "Failed to allocate device cache!\n");
> - }
> -
In this specific case, we should keep it, as the message means that
the unregister logic won't work properly, as this loop won't run:
/*
* Call device_attach() to reprobe devices
*
* NOTE: If dev allocation fails, i is 0, and the whole loop won't be
* executed.
*/
while (i--) {
struct device *d = dev[i];
if (d && device_attach(d) < 0) {
const char *name = "(none)";
int lock = device_trylock(d);
if (lock && d->driver)
name = d->driver->name;
dev_err(d, "Failed to re-probe to %s\n", name);
if (lock)
device_unlock(d);
}
put_device(d);
}
So, IMHO, the proper patch would be to change the message to
be more comprehensive, describing the consequences of not being
able to allocate the dev cache.
> mutex_lock(&list_lock);
>
> list_del(¬ifier->list);
Thanks,
Mauro
Powered by blists - more mailing lists