Hi Jim,
On 11:06 Wed 10 Mar , Jim Schutt wrote:
Signed-off-by: Jim Schutt jasc...@sandia.gov
---
opensm/include/opensm/osm_base.h | 18 ++
opensm/include/opensm/osm_subnet.h |5 +
opensm/opensm/main.c |9 +
Hi Sasha,
Adding new events that allow event plug-in to see
when SM finishes heavy sweep and routing configuration,
when it updates dump files, when it is no longer master,
and when SM port is down:
OSM_EVENT_ID_HEAVY_SWEEP_DONE
OSM_EVENT_ID_UCAST_ROUTING_DONE
OSM_EVENT_ID_ENTERING_STANDBY
When stdout is assigned to a terminal, it is line-buffered.
But when opensm's stdout is redirected to a file, stdout
becomes block-buffered, which means that '\n' won't cause
the buffer to be flushed.
Forcing stdout to always be line-buffered and to have a
more predictable behavior when used as
Adding non-static wrapper function for pr_rcv_get_path_parms()
function to enable calling path record calculation function from
outside this file.
Signed-off-by: Yevgeny Kliteynik klit...@dev.mellanox.co.il
---
opensm/opensm/osm_sa_path_record.c | 12
1 files changed, 12
Hi Sasha,
Thanks for taking a look at this.
On Thu, 2010-06-10 at 05:25 -0600, Sasha Khapyorsky wrote:
Hi Jim,
On 11:06 Wed 10 Mar , Jim Schutt wrote:
Signed-off-by: Jim Schutt jasc...@sandia.gov
---
opensm/include/opensm/osm_base.h | 18 ++
return OSM_NO_PATH (instead of port num) when path does not exists.
this will also be reported as error in the log.
Signed-off-by: Eli Dorfman e...@voltaire.com
---
opensm/opensm/osm_switch.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/opensm/opensm/osm_switch.c
Sasha,
Before we do the work, would there be any issue converting a couple of the
ib-diag scripts to executables? Specifically, we'd like to have ibchecknet and
ibcheckerrors functionality available on Windows.
- Sean
--
To unsubscribe from this list: send the line unsubscribe linux-rdma in
The mlx4_core driver allocates 'nreq' msix vectors (and irqs),
where:
nreq = min_t(int, dev-caps.num_eqs - dev-caps.reserved_eqs,
num_possible_cpus() + 1);
ConnectX HCAs support 512 event queues (4 reserved). On a system
with enough processors, we get:
mlx4_core
Hello Roland,
This is another round of SRIOV support patches for mlx4.
Currently the support is for the mlx4_core and mlx4_en modules.
The main changes from previous round are:
1. Events on the Communication channel, no more polling.
2. Steering mechanism change for Ethernet traffic.
Thanks,
Signed-off-by: Liran Liss lir...@mellanox.co.il
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
include/linux/mlx4/device.h | 19 +++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index
The communication channel consists of 2 registers per vf (a slave function)
that are shared with the pf (the master function), as well as a new command for
inter-function memory copying (only exposed to the master).
The communication channel is used to establish a Virtual HCA Command Register
Used by vfs to modify mtts, since they cannot access in-memory mtts directly.
Signed-off-by: Liran Liss lir...@mellanox.co.il
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
drivers/net/mlx4/cmd.c | 10 +-
drivers/net/mlx4/mlx4.h |5 +++
drivers/net/mlx4/mr.c | 67
All QPs/CQs/SRQs/MPTs/MTTs are allocated from shared pools, which are owned by
the master. In addition, all backing ICM memory for these objects is managed by
the master.
To allow slaves to allocate resources, ICM allocation is separated from the rest
of the object state, which is held at the
Ports are a shared resource among functions, so special behavior is needed here:
- Bring up ports if at least one function has done so.
- Bring down ports if all functions have done so.
- Aggregate IB port capabilities
- Set max mtu among for Eth port
- Ensure steering is not broken for Eth ports.
Affiliated and unaffiliated asynch events are handled by a single EQ owned by
the master. A per-slave SW event queue is added to log and dispatch both
slave-specific
events and events that apply to all slaves.
Signed-off-by: Liran Liss lir...@mellanox.co.il
Signed-off-by: Yevgeny Petrilin
Only master function needs to configure eq asynch events, and initialize
resource
allocators.
Only the master function polls for fatal events.
Signed-off-by: Liran Liss lir...@mellanox.co.il
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
drivers/net/mlx4/cq.c |4 +++
Add virtual function device ids. Setting VF flag to device private data
Establish comm channel when sriov is enabled, and boot vfs through it.
Each slave gets one msi-X for completions, the master also gets one for
async events.
Signed-off-by: Liran Liss lir...@mellanox.co.il
Signed-off-by:
In multifunctional devices, only the primary function would succeed
to execute QUERY_FW command, all other would fail with _EACCES error.
Ownership on the device can also be claimed by reading a descriptor before
sw reset. If it is 0, no one claimed ownership on the device so far,
otherwise, you
In devices with multiple physical functions, each function activates
only one port, according to the function number.
Even functions activate port 1, odd functions activate port2.
For every virtual function we query the FW to which physical function it
belongs,
as all the functions are served by
Signed-off-by: Steve Wise sw...@opengridcomputing.com
---
drivers/infiniband/hw/cxgb4/cm.c |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/infiniband/hw/cxgb4/cm.c b/drivers/infiniband/hw/cxgb4/cm.c
index 30ce0a8..3e15a07 100644
---
T4 EQ entries are in multiples of 64B. Currently the RDMA SQ and RQ
use fixed sized entries composed of 4 EQ entries for the SQ and 2 EQ
entries for the RQ. For optimial latency with small IO, we need to
change this so the HW only needs to DMA the EQ entries actually used by
a given work
The T4 IQ hw design assumes CIDX_INC credits will be returned on a regular
basis and always before the CIDX counter crosses over the PIDX counter.
For RDMA CQs, however, returning CIDX_INC credits is only needed and
desired when and if the CQ is armed for notification. This can lead
to a GTS
Multicast table processing requires multiple related commands.
To keep things simple, low-level multicast handling is done only by the master;
a new virtual command is added to allow slaves to attach/detach QPs to mulitcast
groups at a higher abstraction level.
The multicast attachment mechanism
On 06/09/2010 11:08 AM, Roland Dreier wrote:
Please also pick up the 3-patch set Least attached vector support
from Yevgeny on 2010-5-13? RDS changes depend on these.
It's now post -rc2, so these obviously wait for 2.6.36 at best.
However, I haven't replied to these patches in detail
As for ibchecknet, under what use case do you see people running it? Could
ibnetdiscover or iblinkinfo provide the same functionality?
I'll check on how it is being used and whether the other calls would work just
as well.
Thanks,
- Sean
--
To unsubscribe from this list: send the line
On Thu, 10 Jun 2010 09:04:01 -0700
Hefty, Sean sean.he...@intel.com wrote:
Sasha,
Before we do the work, would there be any issue converting a couple of the
ib-diag scripts to executables? Specifically, we'd like to have ibchecknet
and ibcheckerrors functionality available on Windows.
For physical slaves, Mac address is retreived from static configuration.
For virtual slaves get random Macs.
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
drivers/net/mlx4/fw.c | 64 +
drivers/net/mlx4/fw.h |6
2 files
The Multicast filter configuration is done by the master,
that manages the filter which is common for all the functions.
The master holds a list of multicast addresses for all the
slaves, and adds them to the filter.
In case some slave wishes to flush the filter, only his addresses
are removed.
In multifunction device, a certain function can initialize its port after some
other function already done that. In that case link event would not be
generated.
Need to query the port to retrieve the port state.
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
Both Unicast and multicast addresses are using the same table
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
drivers/net/mlx4/mlx4.h |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/mlx4/mlx4.h b/drivers/net/mlx4/mlx4.h
index 8530032..7a7f787
The master function receives am interrupt each time on eof the slaves writes
to the communication channel, and then handles the channel from a deffered task.
The slaves can now receive command completions an async events by interrupts.
The open an EQ and the master generates eqes and pushes them
T4 EQ entries are in multiples of 64B. Currently the RDMA SQ and RQ
use fixed sized entries composed of 4 EQ entries for the SQ and 2 EQ
entries for the RQ. For optimial latency with small IO, we need to
change this so the HW only needs to DMA the EQ entries actually used by
a given
Linus has been being a hard-ass this cycle about quieting things down
post -rc2. So I'll hold off.
--
Roland Dreier rola...@cisco.com || For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/index.html
--
To unsubscribe from this list: send the line
When there are multiple interfaces on the same physical port, the old steering
model (Mac steering) would not work. The reason is in the old model there could
be
only one promiscuous QP per port.
With the new mechanism each interface can have promisc entries both for unicast
and
multicast. A
Roland Dreier wrote:
T4 EQ entries are in multiples of 64B. Currently the RDMA SQ and RQ
use fixed sized entries composed of 4 EQ entries for the SQ and 2 EQ
entries for the RQ. For optimial latency with small IO, we need to
change this so the HW only needs to DMA the EQ entries
However, I haven't replied to these patches in detail but in general I
don't like this approach of pick a random vector since it is
non-deterministic and not likely to end up with an optimal result.
What is the optimal way to do this, if it isn't to spread CQs evenly
across all
The firmware should be aware of the function a resource is opened on.
The function number is passed in the lower bits of input paramater.
Non multi-function firmware masks these bits.
Signed-off-by: Yevgeny Petrilin yevge...@mellanox.co.il
---
drivers/net/mlx4/cmd.c | 58
From: Ira Weiny wei...@hera2.llnl.gov
Date: Thu, 6 May 2010 13:49:55 -0700
Subject: [PATCH] ibqueryerrors.c: Optimize by querying AllPortSelect first
If errors are seen with AllPortSelect query individual ports for more
details.
Signed-off-by: Ira Weiny wei...@llnl.gov
---
38 matches
Mail list logo