From: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> To: <alex.williamson@redhat.com>, <eric.auger@redhat.com> Cc: <kvm@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <iommu@lists.linux-foundation.org>, <linuxarm@huawei.com>, <john.garry@huawei.com>, <xuwei5@hisilicon.com>, <kevin.tian@intel.com>, Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Subject: [PATCH v8 6/6] vfio/type1: remove duplicate retrieval of reserved regions Date: Tue, 23 Jul 2019 17:06:37 +0100 [thread overview] Message-ID: <20190723160637.8384-7-shameerali.kolothum.thodi@huawei.com> (raw) In-Reply-To: <20190723160637.8384-1-shameerali.kolothum.thodi@huawei.com> As we now already have the reserved regions list, just pass that into vfio_iommu_has_sw_msi() fn. Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> --- drivers/vfio/vfio_iommu_type1.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c index d0c5e768acb7..a68405f24fbf 100644 --- a/drivers/vfio/vfio_iommu_type1.c +++ b/drivers/vfio/vfio_iommu_type1.c @@ -1296,15 +1296,13 @@ static struct vfio_group *find_iommu_group(struct vfio_domain *domain, return NULL; } -static bool vfio_iommu_has_sw_msi(struct iommu_group *group, phys_addr_t *base) +static bool vfio_iommu_has_sw_msi(struct list_head *group_resv_regions, + phys_addr_t *base) { - struct list_head group_resv_regions; - struct iommu_resv_region *region, *next; + struct iommu_resv_region *region; bool ret = false; - INIT_LIST_HEAD(&group_resv_regions); - iommu_get_group_resv_regions(group, &group_resv_regions); - list_for_each_entry(region, &group_resv_regions, list) { + list_for_each_entry(region, group_resv_regions, list) { /* * The presence of any 'real' MSI regions should take * precedence over the software-managed one if the @@ -1320,8 +1318,7 @@ static bool vfio_iommu_has_sw_msi(struct iommu_group *group, phys_addr_t *base) ret = true; } } - list_for_each_entry_safe(region, next, &group_resv_regions, list) - kfree(region); + return ret; } @@ -1768,7 +1765,7 @@ static int vfio_iommu_type1_attach_group(void *iommu_data, if (ret) goto out_detach; - resv_msi = vfio_iommu_has_sw_msi(iommu_group, &resv_msi_base); + resv_msi = vfio_iommu_has_sw_msi(&group_resv_regions, &resv_msi_base); INIT_LIST_HEAD(&domain->group_list); list_add(&group->next, &domain->group_list); -- 2.17.1
WARNING: multiple messages have this Message-ID (diff)
From: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> To: <alex.williamson@redhat.com>, <eric.auger@redhat.com> Cc: kevin.tian@intel.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, xuwei5@hisilicon.com, linuxarm@huawei.com, iommu@lists.linux-foundation.org Subject: [PATCH v8 6/6] vfio/type1: remove duplicate retrieval of reserved regions Date: Tue, 23 Jul 2019 17:06:37 +0100 [thread overview] Message-ID: <20190723160637.8384-7-shameerali.kolothum.thodi@huawei.com> (raw) In-Reply-To: <20190723160637.8384-1-shameerali.kolothum.thodi@huawei.com> As we now already have the reserved regions list, just pass that into vfio_iommu_has_sw_msi() fn. Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> --- drivers/vfio/vfio_iommu_type1.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c index d0c5e768acb7..a68405f24fbf 100644 --- a/drivers/vfio/vfio_iommu_type1.c +++ b/drivers/vfio/vfio_iommu_type1.c @@ -1296,15 +1296,13 @@ static struct vfio_group *find_iommu_group(struct vfio_domain *domain, return NULL; } -static bool vfio_iommu_has_sw_msi(struct iommu_group *group, phys_addr_t *base) +static bool vfio_iommu_has_sw_msi(struct list_head *group_resv_regions, + phys_addr_t *base) { - struct list_head group_resv_regions; - struct iommu_resv_region *region, *next; + struct iommu_resv_region *region; bool ret = false; - INIT_LIST_HEAD(&group_resv_regions); - iommu_get_group_resv_regions(group, &group_resv_regions); - list_for_each_entry(region, &group_resv_regions, list) { + list_for_each_entry(region, group_resv_regions, list) { /* * The presence of any 'real' MSI regions should take * precedence over the software-managed one if the @@ -1320,8 +1318,7 @@ static bool vfio_iommu_has_sw_msi(struct iommu_group *group, phys_addr_t *base) ret = true; } } - list_for_each_entry_safe(region, next, &group_resv_regions, list) - kfree(region); + return ret; } @@ -1768,7 +1765,7 @@ static int vfio_iommu_type1_attach_group(void *iommu_data, if (ret) goto out_detach; - resv_msi = vfio_iommu_has_sw_msi(iommu_group, &resv_msi_base); + resv_msi = vfio_iommu_has_sw_msi(&group_resv_regions, &resv_msi_base); INIT_LIST_HEAD(&domain->group_list); list_add(&group->next, &domain->group_list); -- 2.17.1 _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
next prev parent reply other threads:[~2019-07-23 16:09 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-23 16:06 [PATCH v8 0/6] vfio/type1: Add support for valid iova list management Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-23 16:06 ` [PATCH v8 1/6] vfio/type1: Introduce iova list and add iommu aperture validity check Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-26 17:09 ` Auger Eric 2019-07-26 17:09 ` Auger Eric 2019-07-23 16:06 ` [PATCH v8 2/6] vfio/type1: Check reserved region conflict and update iova list Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-26 17:09 ` Auger Eric 2019-07-26 17:09 ` Auger Eric 2019-07-23 16:06 ` [PATCH v8 3/6] vfio/type1: Update iova list on detach Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-26 17:09 ` Auger Eric 2019-07-26 17:09 ` Auger Eric 2019-07-23 16:06 ` [PATCH v8 4/6] vfio/type1: check dma map request is within a valid iova range Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-23 16:06 ` [PATCH v8 5/6] vfio/type1: Add IOVA range capability support Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum 2019-07-23 16:06 ` Shameer Kolothum [this message] 2019-07-23 16:06 ` [PATCH v8 6/6] vfio/type1: remove duplicate retrieval of reserved regions Shameer Kolothum 2019-08-23 9:02 ` [PATCH v8 0/6] vfio/type1: Add support for valid iova list management Shameerali Kolothum Thodi 2019-08-23 9:02 ` Shameerali Kolothum Thodi 2019-08-23 20:51 ` Alex Williamson 2019-08-23 20:51 ` Alex Williamson
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=20190723160637.8384-7-shameerali.kolothum.thodi@huawei.com \ --to=shameerali.kolothum.thodi@huawei.com \ --cc=alex.williamson@redhat.com \ --cc=eric.auger@redhat.com \ --cc=iommu@lists.linux-foundation.org \ --cc=john.garry@huawei.com \ --cc=kevin.tian@intel.com \ --cc=kvm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linuxarm@huawei.com \ --cc=xuwei5@hisilicon.com \ /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: linkBe 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.