<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in counters.c</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>88ae02fe - RDMA/core: Pass port to counter bind/unbind operations</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#88ae02fe</link>
        <description>RDMA/core: Pass port to counter bind/unbind operationsThis will be useful for the next patches in the series since port numberis needed for optional counters binding and unbinding.Note that this change is needed since when the operation is done qp-&gt;portisn&apos;t necessarily initialized yet and can&apos;t be used.Signed-off-by: Patrisious Haddad &lt;phaddad@nvidia.com&gt;Reviewed-by: Mark Bloch &lt;mbloch@nvidia.com&gt;Link: https://patch.msgid.link/b6f6797844acbd517358e8d2a270ea9b3e6ecba1.1741875070.git.leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leon@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 13 Mar 2025 14:18:44 +0000</pubDate>
        <dc:creator>Patrisious Haddad &lt;phaddad@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>da371107 - RDMA/core: Add support to optional-counters binding configuration</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#da371107</link>
        <description>RDMA/core: Add support to optional-counters binding configurationWhenever a new counter is created, save inside it the user requestedconfiguration for optional-counters binding, for manual configuration itis requested directly by the user and for the automatic configuration itdepends on if the automatic binding was enabled with or withoutoptional-counters binding.This argument will later be used by the driver to determine if to bind theoptional-counters as well or not when trying to bind this counter to a QP.It indicates that when binding counters to a QP we also want thecurrently enabled link optional-counters to be bound as well.Signed-off-by: Patrisious Haddad &lt;phaddad@nvidia.com&gt;Reviewed-by: Mark Bloch &lt;mbloch@nvidia.com&gt;Link: https://patch.msgid.link/82f1c357606a16932979ef9a5910122675c74a3a.1741875070.git.leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leon@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 13 Mar 2025 14:18:43 +0000</pubDate>
        <dc:creator>Patrisious Haddad &lt;phaddad@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>7e53b31a - RDMA/core: Create and destroy rdma_counter using rdma_zalloc_drv_obj()</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#7e53b31a</link>
        <description>RDMA/core: Create and destroy rdma_counter using rdma_zalloc_drv_obj()Change rdma_counter allocation to use rdma_zalloc_drv_obj() instead of,explicitly allocating at core, in order to be contained inside driverspecific structures.Adjust all drivers that use it to have their containing structure, andadd driver specific initialization operation.This change is needed to allow upcoming patches to implementoptional-counters binding whereas inside each driver specific counterstruct his bound optional-counters will be maintained.Signed-off-by: Patrisious Haddad &lt;phaddad@nvidia.com&gt;Reviewed-by: Mark Bloch &lt;mbloch@nvidia.com&gt;Link: https://patch.msgid.link/a5a484f421fc2e5595158e61a354fba43272b02d.1741875070.git.leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leon@kernel.org&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 13 Mar 2025 14:18:42 +0000</pubDate>
        <dc:creator>Patrisious Haddad &lt;phaddad@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>5e2ddd1e - RDMA/counter: Add optional counter support</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#5e2ddd1e</link>
        <description>RDMA/counter: Add optional counter supportAn optional counter is a driver-specific counter that may be dynamicallyenabled/disabled.  This enhancement allows drivers to expose counterswhich are, for example, mutually exclusive and cannot be enabled at thesame time, counters that might degrades performance, optional debugcounters, etc.Optional counters are marked with IB_STAT_FLAG_OPTIONAL flag. They are notexported in sysfs, and must be at the end of all stats, otherwise theattr-&gt;show() in sysfs would get wrong indexes for hwcounters that arebehind optional counters.Link: https://lore.kernel.org/r/20211008122439.166063-7-markzhang@nvidia.comSigned-off-by: Aharon Landau &lt;aharonl@nvidia.com&gt;Signed-off-by: Neta Ostrovsky &lt;netao@nvidia.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Mark Zhang &lt;markzhang@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Fri, 08 Oct 2021 12:24:32 +0000</pubDate>
        <dc:creator>Aharon Landau &lt;aharonl@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>0a0800ce - RDMA/core: Add a helper API rdma_free_hw_stats_struct</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#0a0800ce</link>
        <description>RDMA/core: Add a helper API rdma_free_hw_stats_structAdd a new API rdma_free_hw_stats_struct to pair withrdma_alloc_hw_stats_struct (which is also de-inlined).This will be useful when there are more alloc/free works in followingpatches.Link: https://lore.kernel.org/r/20211008122439.166063-5-markzhang@nvidia.comSigned-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Mark Zhang &lt;markzhang@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Fri, 08 Oct 2021 12:24:30 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markzhang@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>4b5f4d3f - RDMA: Split the alloc_hw_stats() ops to port and device variants</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#4b5f4d3f</link>
        <description>RDMA: Split the alloc_hw_stats() ops to port and device variantsThis is being used to implement both the port and device global stats,which is causing some confusion in the drivers. For instance EFA and i40iwboth seem to be misusing the device stats.Split it into two ops so drivers that don&apos;t support one or the other canleave the op NULL&apos;d, making the calling code a little simpler tounderstand.Link: https://lore.kernel.org/r/1955c154197b2a159adc2dc97266ddc74afe420c.1623427137.git.leonro@nvidia.comTested-by: Gal Pressman &lt;galpress@amazon.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Fri, 11 Jun 2021 16:00:20 +0000</pubDate>
        <dc:creator>Jason Gunthorpe &lt;jgg@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>49695e95 - RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_mode</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#49695e95</link>
        <description>RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_modeSuccess is returned in the following flows: * New mode is the same as the current one. * Switched to new mode and there are no bound counters yet.Link: https://lore.kernel.org/r/20210318110502.673676-1-leon@kernel.orgSigned-off-by: Patrisious Haddad &lt;phaddad@nvidia.com&gt;Reviewed-by: Mark Zhang &lt;markzhang@nvidia.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@nvidia.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 18 Mar 2021 11:05:02 +0000</pubDate>
        <dc:creator>Patrisious Haddad &lt;phaddad@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>1fb7f897 - RDMA: Support more than 255 rdma ports</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#1fb7f897</link>
        <description>RDMA: Support more than 255 rdma portsCurrent code uses many different types when dealing with a port of a RDMAdevice: u8, unsigned int and u32. Switch to u32 to clean up the logic.This allows us to make (at least) the core view consistent and use thesame type. Unfortunately not all places can be converted. Many uverbsfunctions expect port to be u8 so keep those places in order not to breakUAPIs.  HW/Spec defined values must also not be changed.With the switch to u32 we now can support devices with more than 255ports. U32_MAX is reserved to make control logic a bit easier to dealwith. As a device with U32_MAX ports probably isn&apos;t going to happen anytime soon this seems like a non issue.When a device with more than 255 ports is created uverbs will report theRDMA device as having 255 ports as this is the max currently supported.The verbs interface is not changed yet because the IBTA spec limits theport size in too many places to be u8 and all applications that relies inverbs won&apos;t be able to cope with this change. At this stage, we areextending the interfaces that are using vendor channel solelyOnce the limitation is lifted mlx5 in switchdev mode will be able to havethousands of SFs created by the device. As the only instance of an RDMAdevice that reports more than 255 ports will be a representor device andit exposes itself as a RAW Ethernet only device CM/MAD/IPoIB and otherULPs aren&apos;t effected by this change and their sysfs/interfaces that areexposes to userspace can remain unchanged.While here cleanup some alignment issues and remove unneeded sanitychecks (mainly in rdmavt),Link: https://lore.kernel.org/r/20210301070420.439400-1-leon@kernel.orgSigned-off-by: Mark Bloch &lt;mbloch@nvidia.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Mon, 01 Mar 2021 07:04:20 +0000</pubDate>
        <dc:creator>Mark Bloch &lt;mbloch@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>78f20653 - RDMA/core/counters: Demote non-conformant kernel-doc headers</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#78f20653</link>
        <description>RDMA/core/counters: Demote non-conformant kernel-doc headersFixes the following W=1 kernel build warning(s): drivers/infiniband/core/counters.c:36: warning: Function parameter or member &apos;dev&apos; not described in &apos;rdma_counter_set_auto_mode&apos; drivers/infiniband/core/counters.c:36: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_set_auto_mode&apos; drivers/infiniband/core/counters.c:36: warning: Function parameter or member &apos;on&apos; not described in &apos;rdma_counter_set_auto_mode&apos; drivers/infiniband/core/counters.c:36: warning: Function parameter or member &apos;mask&apos; not described in &apos;rdma_counter_set_auto_mode&apos; drivers/infiniband/core/counters.c:238: warning: Function parameter or member &apos;qp&apos; not described in &apos;rdma_get_counter_auto_mode&apos; drivers/infiniband/core/counters.c:238: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_get_counter_auto_mode&apos; drivers/infiniband/core/counters.c:282: warning: Function parameter or member &apos;qp&apos; not described in &apos;rdma_counter_bind_qp_auto&apos; drivers/infiniband/core/counters.c:282: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_bind_qp_auto&apos; drivers/infiniband/core/counters.c:320: warning: Function parameter or member &apos;qp&apos; not described in &apos;rdma_counter_unbind_qp&apos; drivers/infiniband/core/counters.c:388: warning: Function parameter or member &apos;dev&apos; not described in &apos;rdma_counter_get_hwstat_value&apos; drivers/infiniband/core/counters.c:388: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_get_hwstat_value&apos; drivers/infiniband/core/counters.c:388: warning: Function parameter or member &apos;index&apos; not described in &apos;rdma_counter_get_hwstat_value&apos; drivers/infiniband/core/counters.c:444: warning: Function parameter or member &apos;dev&apos; not described in &apos;rdma_counter_bind_qpn&apos; drivers/infiniband/core/counters.c:444: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_bind_qpn&apos; drivers/infiniband/core/counters.c:444: warning: Function parameter or member &apos;qp_num&apos; not described in &apos;rdma_counter_bind_qpn&apos; drivers/infiniband/core/counters.c:444: warning: Function parameter or member &apos;counter_id&apos; not described in &apos;rdma_counter_bind_qpn&apos; drivers/infiniband/core/counters.c:494: warning: Function parameter or member &apos;dev&apos; not described in &apos;rdma_counter_bind_qpn_alloc&apos; drivers/infiniband/core/counters.c:494: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_bind_qpn_alloc&apos; drivers/infiniband/core/counters.c:494: warning: Function parameter or member &apos;qp_num&apos; not described in &apos;rdma_counter_bind_qpn_alloc&apos; drivers/infiniband/core/counters.c:494: warning: Function parameter or member &apos;counter_id&apos; not described in &apos;rdma_counter_bind_qpn_alloc&apos; drivers/infiniband/core/counters.c:541: warning: Function parameter or member &apos;dev&apos; not described in &apos;rdma_counter_unbind_qpn&apos; drivers/infiniband/core/counters.c:541: warning: Function parameter or member &apos;port&apos; not described in &apos;rdma_counter_unbind_qpn&apos; drivers/infiniband/core/counters.c:541: warning: Function parameter or member &apos;qp_num&apos; not described in &apos;rdma_counter_unbind_qpn&apos; drivers/infiniband/core/counters.c:541: warning: Function parameter or member &apos;counter_id&apos; not described in &apos;rdma_counter_unbind_qpn&apos;Link: https://lore.kernel.org/r/20210118223929.512175-19-lee.jones@linaro.orgCc: Doug Ledford &lt;dledford@redhat.com&gt;Cc: Jason Gunthorpe &lt;jgg@ziepe.ca&gt;Cc: Leon Romanovsky &lt;leon@kernel.org&gt;Cc: linux-rdma@vger.kernel.orgSigned-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Mon, 18 Jan 2021 22:39:27 +0000</pubDate>
        <dc:creator>Lee Jones &lt;lee.jones@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>33eb12f2 - RDMA/nldev: Return an error message on failure to turn auto mode</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#33eb12f2</link>
        <description>RDMA/nldev: Return an error message on failure to turn auto modeThe bounded counter can&apos;t be reconfigured to be in auto mode, in attemptto do it, the user will get an error, but without any hint why. Updatenldev interface to return an error message through extack mechanism.Link: https://lore.kernel.org/r/20201230130240.180737-1-leon@kernel.orgSigned-off-by: Patrisious Haddad &lt;phaddad@nvidia.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Wed, 30 Dec 2020 13:02:40 +0000</pubDate>
        <dc:creator>Patrisious Haddad &lt;phaddad@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>2b1f7470 - RDMA/core: Allow drivers to disable restrack DB</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#2b1f7470</link>
        <description>RDMA/core: Allow drivers to disable restrack DBDriver QP types are special case with no IBTA restrictions. For example,EFA implemented creation of this QP type as regular one, while mlx5separated create to two step: create and modify. That separation causes tothe situation where DC QP (mlx5) is always added to the same xarray indexzero.This change allows to drivers like mlx5 simply disable restrack DBtracking, but it doesn&apos;t disable kref on the memory.Fixes: 52e0a118a203 (&quot;RDMA/restrack: Track driver QP types in resource tracker&quot;)Link: https://lore.kernel.org/r/20201117070148.1974114-3-leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Tue, 17 Nov 2020 07:01:47 +0000</pubDate>
        <dc:creator>Leon Romanovsky &lt;leonro@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>8bc205ef - RDMA/counter: Combine allocation and bind logic</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#8bc205ef</link>
        <description>RDMA/counter: Combine allocation and bind logicRDMA counters are allocated and bounded to QP immediately after that.Only after this two step process they are really usable. By combiningthe logic, we are ensuring that once counter is returned to the caller,it will have everything set.Link: https://lore.kernel.org/r/20201104144008.3808124-3-leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Wed, 04 Nov 2020 14:40:05 +0000</pubDate>
        <dc:creator>Leon Romanovsky &lt;leonro@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>b09c4d70 - RDMA/restrack: Improve readability in task name management</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#b09c4d70</link>
        <description>RDMA/restrack: Improve readability in task name managementUse rdma_restrack_set_name() and rdma_restrack_parent_name() instead oftricky uses of rdma_restrack_attach_task()/rdma_restrack_uadd().This uniformly makes all restracks add&apos;d using rdma_restrack_add().Link: https://lore.kernel.org/r/20200922091106.2152715-6-leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Tue, 22 Sep 2020 09:11:06 +0000</pubDate>
        <dc:creator>Leon Romanovsky &lt;leonro@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>c34a23c2 - RDMA/restrack: Simplify restrack tracking in kernel flows</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#c34a23c2</link>
        <description>RDMA/restrack: Simplify restrack tracking in kernel flowsHave a single rdma_restrack_add() that adds an entry, there is no reasonto split the user/kernel here, the rdma_restrack_set_task() is responsiblefor this difference.This patch prepares the code to the future requirement of making restrackis mandatory for managing ib objects.Link: https://lore.kernel.org/r/20200922091106.2152715-5-leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Tue, 22 Sep 2020 09:11:05 +0000</pubDate>
        <dc:creator>Leon Romanovsky &lt;leonro@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>13ef5539 - RDMA/restrack: Count references to the verbs objects</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#13ef5539</link>
        <description>RDMA/restrack: Count references to the verbs objectsRefactor the restrack code to make sure the kref inside the restrack entryproperly kref&apos;s the object in which it is embedded. This slight change isneeded for future conversions of MR and QP which are refcounted before therelease and kfree.The ideal flow from ib_core perspective as follows:* Allocate ib_* structure with rdma_zalloc_*.* Set everything that is known to ib_core to that newly created object.* Initialize kref with restrack help* Call to driver specific allocation functions.* Insert into restrack DB....* Return and release restrack with restrack_put.Largely this means a rdma_restrack_new() should be called near allocatingthe containing structure.Link: https://lore.kernel.org/r/20200922091106.2152715-4-leon@kernel.orgSigned-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Tue, 22 Sep 2020 09:11:04 +0000</pubDate>
        <dc:creator>Leon Romanovsky &lt;leonro@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>cbeb7d89 - RDMA/counter: Allow manually bind QPs with different pids to same counter</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#cbeb7d89</link>
        <description>RDMA/counter: Allow manually bind QPs with different pids to same counterIn manual mode allow bind user QPs with different pids to same counter,since this is allowed in auto mode.Bind kernel QPs and user QPs to the same counter are not allowed.Fixes: 1bd8e0a9d0fd (&quot;RDMA/counter: Allow manual mode configuration support&quot;)Link: https://lore.kernel.org/r/20200702082933.424537-4-leon@kernel.orgSigned-off-by: Mark Zhang &lt;markz@mellanox.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@mellanox.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 02 Jul 2020 08:29:33 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markz@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>c9f55742 - RDMA/counter: Only bind user QPs in auto mode</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#c9f55742</link>
        <description>RDMA/counter: Only bind user QPs in auto modeIn auto mode only bind user QPs to a dynamic counter, since this featureis mainly used for system statistic and diagnostic purpose, while there&apos;sno need to counter kernel QPs so far.Fixes: 99fa331dc862 (&quot;RDMA/counter: Add &quot;auto&quot; configuration mode support&quot;)Link: https://lore.kernel.org/r/20200702082933.424537-3-leon@kernel.orgSigned-off-by: Mark Zhang &lt;markz@mellanox.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@mellanox.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 02 Jul 2020 08:29:32 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markz@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>7c97f3ad - RDMA/counter: Add PID category support in auto mode</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#7c97f3ad</link>
        <description>RDMA/counter: Add PID category support in auto modeWith the &quot;PID&quot; category QPs have same PID will be bound to same counter;If this category is not set then QPs have different PIDs will be boundto same counter.This is implemented for 2 reasons:1. The counter is a limited resource, while there may be dozens of   applications, each of which creates several types of QPs, which means   it may doesn&apos;t have enough counter.2. The system administrator needs all QPs created by all applications   with same type bound to one counter.The counter name and PID is only make sense when &quot;PID&quot; category areconfigured.This category can also be used in combine with others, e.g. QP type.Link: https://lore.kernel.org/r/20200702082933.424537-2-leon@kernel.orgSigned-off-by: Mark Zhang &lt;markz@mellanox.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@mellanox.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 02 Jul 2020 08:29:31 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markz@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>c1d869d6 - RDMA/counter: Query a counter before release</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#c1d869d6</link>
        <description>RDMA/counter: Query a counter before releaseQuery a dynamically-allocated counter before release it, to update it&apos;shwcounters and log all of them into history data. Otherwise all values ofthese hwcounters will be lost.Fixes: f34a55e497e8 (&quot;RDMA/core: Get sum value of all counters when perform a sysfs stat read&quot;)Link: https://lore.kernel.org/r/20200621110000.56059-1-leon@kernel.orgSigned-off-by: Mark Zhang &lt;markz@mellanox.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@mellanox.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Signed-off-by: Jason Gunthorpe &lt;jgg@mellanox.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Sun, 21 Jun 2020 11:00:00 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markz@mellanox.com&gt;</dc:creator>
    </item>
<item>
        <title>33df2f19 - RDMA/counter: Prevent auto-binding a QP which are not tracked with res</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/drivers/infiniband/core/counters.c#33df2f19</link>
        <description>RDMA/counter: Prevent auto-binding a QP which are not tracked with resSome QPs (e.g. XRC QP) are not tracked in kernel, in this case they havean invalid res and should not be bound to any dynamically-allocatedcounter in auto mode.This fixes below call trace:BUG: kernel NULL pointer dereference, address: 0000000000000390PGD 80000001a7233067 P4D 80000001a7233067 PUD 1a7215067 PMD 0Oops: 0000 [#1] SMP PTICPU: 2 PID: 24822 Comm: ibv_xsrq_pingpo Not tainted 5.4.0-rc5+ #21Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-2.fc27 04/01/2014RIP: 0010:rdma_counter_bind_qp_auto+0x142/0x270 [ib_core]Code: e1 48 85 c0 48 89 c2 0f 84 bc 00 00 00 49 8b 06 48 39 42 48 75 d6 40 3a aa 90 00 00 00 75 cd 49 8b 86 00 01 00 00 48 8b 4a 28 &lt;8b&gt; 80 90 03 00 00 39 81 90 03 00 00 75 b4 85 c0 74 b0 48 8b 04 24RSP: 0018:ffffc900003f39c0 EFLAGS: 00010246RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000000RDX: ffff88820020ec00 RSI: 0000000000000004 RDI: ffffffffffffffc0RBP: 0000000000000001 R08: ffff888224149ff0 R09: ffffc900003f3968R10: ffffffffffffffff R11: ffff8882249c5848 R12: ffffffffffffffffR13: ffff88821d5aca50 R14: ffff8881f7690800 R15: ffff8881ff890000FS:  00007fe53a3e1740(0000) GS:ffff888237b00000(0000) knlGS:0000000000000000CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033CR2: 0000000000000390 CR3: 00000001a7292006 CR4: 00000000003606a0DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400Call Trace: _ib_modify_qp+0x3a4/0x3f0 [ib_core] ? lookup_get_idr_uobject.part.8+0x23/0x40 [ib_uverbs] modify_qp+0x322/0x3e0 [ib_uverbs] ib_uverbs_modify_qp+0x43/0x70 [ib_uverbs] ib_uverbs_handler_UVERBS_METHOD_INVOKE_WRITE+0xb1/0xf0 [ib_uverbs] ib_uverbs_run_method+0x6be/0x760 [ib_uverbs] ? uverbs_disassociate_api+0xd0/0xd0 [ib_uverbs] ib_uverbs_cmd_verbs+0x18d/0x3a0 [ib_uverbs] ? get_acl+0x1a/0x120 ? __alloc_pages_nodemask+0x15d/0x2c0 ib_uverbs_ioctl+0xa7/0x110 [ib_uverbs] do_vfs_ioctl+0xa5/0x610 ksys_ioctl+0x60/0x90 __x64_sys_ioctl+0x16/0x20 do_syscall_64+0x48/0x110 entry_SYSCALL_64_after_hwframe+0x44/0xa9Fixes: 99fa331dc862 (&quot;RDMA/counter: Add &quot;auto&quot; configuration mode support&quot;)Signed-off-by: Mark Zhang &lt;markz@mellanox.com&gt;Reviewed-by: Maor Gottlieb &lt;maorg@mellanox.com&gt;Reviewed-by: Ido Kalir &lt;idok@mellanox.com&gt;Signed-off-by: Leon Romanovsky &lt;leonro@mellanox.com&gt;Link: https://lore.kernel.org/r/20191212091214.315005-2-leon@kernel.orgSigned-off-by: Doug Ledford &lt;dledford@redhat.com&gt;

            List of files:
            /linux-6.15/drivers/infiniband/core/counters.c</description>
        <pubDate>Thu, 12 Dec 2019 09:12:12 +0000</pubDate>
        <dc:creator>Mark Zhang &lt;markz@mellanox.com&gt;</dc:creator>
    </item>
</channel>
</rss>
