From: Dan Carpenter <dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
To: eric.auger-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org
Cc: iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
Subject: [bug report] iommu: iommu_get_group_resv_regions
Date: Fri, 3 Feb 2017 12:14:40 +0300 [thread overview]
Message-ID: <20170203091440.GA23426@mwanda> (raw)
Hello Eric Auger,
The patch 6c65fb318e8b: "iommu: iommu_get_group_resv_regions" from
Jan 19, 2017, leads to the following static checker warning:
drivers/iommu/iommu.c:215 iommu_insert_device_resv_regions()
error: uninitialized symbol 'ret'.
drivers/iommu/iommu.c
203 static int
204 iommu_insert_device_resv_regions(struct list_head *dev_resv_regions,
205 struct list_head *group_resv_regions)
206 {
207 struct iommu_resv_region *entry;
208 int ret;
209
210 list_for_each_entry(entry, dev_resv_regions, list) {
211 ret = iommu_insert_resv_region(entry, group_resv_regions);
212 if (ret)
213 break;
214 }
215 return ret;
On the one hand, it probably doesn't make sense that the dev_resv_regions
would ever be empty, but on the other hand, there some code that assumes
it is possible. What I mean is that iommu_get_resv_regions() can
basically do nothing if ->get_resv_regions() isn't implemented.
I guess we should probably set ret = -EINVAL here?
216 }
217
218 int iommu_get_group_resv_regions(struct iommu_group *group,
219 struct list_head *head)
220 {
221 struct iommu_device *device;
222 int ret = 0;
223
224 mutex_lock(&group->mutex);
225 list_for_each_entry(device, &group->devices, list) {
226 struct list_head dev_resv_regions;
227
228 INIT_LIST_HEAD(&dev_resv_regions);
229 iommu_get_resv_regions(device->dev, &dev_resv_regions);
230 ret = iommu_insert_device_resv_regions(&dev_resv_regions, head);
231 iommu_put_resv_regions(device->dev, &dev_resv_regions);
232 if (ret)
233 break;
234 }
235 mutex_unlock(&group->mutex);
236 return ret;
237 }
238 EXPORT_SYMBOL_GPL(iommu_get_group_resv_regions);
regards,
dan carpenter
next reply other threads:[~2017-02-03 9:14 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-03 9:14 Dan Carpenter [this message]
2017-02-03 9:47 ` [bug report] iommu: iommu_get_group_resv_regions Auger Eric
[not found] ` <77520e58-f6e9-f4d5-d909-90cea7ed6bae-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2017-02-06 9:18 ` [patch] iommu: silence an uninintialized variable warning Dan Carpenter
2017-02-06 9:18 ` Dan Carpenter
2017-02-06 9:48 ` Dan Carpenter
2017-02-06 9:48 ` Dan Carpenter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170203091440.GA23426@mwanda \
--to=dan.carpenter-qhclzuegtsvqt0dzr+alfa@public.gmane.org \
--cc=eric.auger-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.