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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180608174218.32455-1-willy@infradead.org>
Date:   Fri,  8 Jun 2018 10:42:16 -0700
From:   Matthew Wilcox <willy@...radead.org>
To:     hans.westgaard.ry@...cle.com, Doug Ledford <dledford@...hat.com>,
        Jason Gunthorpe <jgg@...lanox.com>
Cc:     Matthew Wilcox <mawilcox@...rosoft.com>,
        linux-rdma@...r.kernel.org,
        HÃ¥kon Bugge <haakon.bugge@...cle.com>,
        Parav Pandit <parav@...lanox.com>,
        Jack Morgenstein <jackm@....mellanox.co.il>,
        Pravin Shedge <pravin.shedge4linux@...il.com>,
        linux-kernel@...r.kernel.org
Subject: [PATCH 0/2] Convert IB/mad to use an IDR for agent IDs

From: Matthew Wilcox <mawilcox@...rosoft.com>

Compared to the RFC I sent yesterday, this version retains the per-port
spinlock for use when looking up the MAD agent by vendor/class/etc.
Now we should only see a performance improvement relative to the current
code.  We should see that improvement two different ways: interrupts
remain enabled and no spinlock is taken when doing a lookup in the IDR,
and we don't walk a linked list looking for the right agent; we just
walk the (low height) tree and find the correct agent.

There are more improvements that could be made, but this fixes the mlx4
bug that Hans reported.

Matthew Wilcox (2):
  IB/mad: Agent registration is process context only
  IB/mad: Use IDR for agent IDs

 drivers/infiniband/core/mad.c      | 90 ++++++++++++++++++------------
 drivers/infiniband/core/mad_priv.h |  7 ++-
 include/linux/idr.h                |  9 +++
 3 files changed, 66 insertions(+), 40 deletions(-)

-- 
2.17.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ