1 2007-08-27 Cluster File Systems, Inc. <info@clusterfs.com>
3 * Support for networks:
4 socklnd - kernels up to 2.6.16
5 qswlnd - Qsnet kernel modules 5.20 and later
6 openiblnd - IbGold 1.8.2
7 o2iblnd - OFED 1.1 and 1.2
8 viblnd - Voltaire ibhost 3.4.5 and later
10 iiblnd - Infiniserv 3.3 + PathBits patch
11 gmlnd - GM 2.1.22 and later
12 mxlnd - MX 1.2.1 or later
13 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
15 2007-07-30 Cluster File Systems, Inc. <info@clusterfs.com>
16 * version 1.4.11 / 1.6.1
17 * Support for networks:
18 socklnd - kernels up to 2.6.16
19 qswlnd - Qsnet kernel modules 5.20 and later
20 openiblnd - IbGold 1.8.2
21 o2iblnd - OFED 1.1 and 1.2
22 viblnd - Voltaire ibhost 3.4.5 and later
23 ciblnd - Topspin 3.2.0
24 iiblnd - Infiniserv 3.3 + PathBits patch
25 gmlnd - GM 2.1.22 and later
26 mxlnd - MX 1.2.1 or later
27 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
32 Details : Change "dropped message" CERRORs to D_NETERROR so they are
33 logged instead of creating "console chatter" when a lustre
34 timeout races with normal RPC completion.
37 Details : lnet_clear_peer_table can wait forever if user forgets to
41 Details : libcfs_id2str should check pid against LNET_PID_ANY.
45 Description: added LNET self test
46 Details : landing b_self_test
51 Description: cfs_duration_{u,n}sec() wrongly calculate nanosecond part of
53 Details : do_div() macro is used incorrectly.
55 2007-04-23 Cluster File Systems, Inc. <info@clusterfs.com>
59 Description: make panic on lbug configurable
63 Description: Add OFED1.2 support to o2iblnd
64 Details : o2iblnd depends on OFED's modules, if out-tree OFED's modules
65 are installed (other than kernel's in-tree infiniband), there
66 could be some problem while insmod o2iblnd (mismatch CRC of
68 If extra Module.symvers is supported in kernel (i.e, 2.6.17),
69 this link provides solution:
70 https://bugs.openfabrics.org/show_bug.cgi?id=355
71 if extra Module.symvers is not supported in kernel, we will
72 have to run the script in bug 12316 to update
73 $LINUX/module.symvers before building o2iblnd.
74 More details about this are in bug 12316.
76 ------------------------------------------------------------------------------
78 2007-04-01 Cluster File Systems, Inc. <info@clusterfs.com>
79 * version 1.4.10 / 1.6.0
80 * Support for networks:
81 socklnd - kernels up to 2.6.16
82 qswlnd - Qsnet kernel modules 5.20 and later
83 openiblnd - IbGold 1.8.2
85 viblnd - Voltaire ibhost 3.4.5 and later
86 ciblnd - Topspin 3.2.0
87 iiblnd - Infiniserv 3.3 + PathBits patch
88 gmlnd - GM 2.1.22 and later
89 mxlnd - MX 1.2.1 or later
90 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
95 Description: Ptllnd didn't init kptllnd_data.kptl_idle_txs before it could be
96 possibly accessed in kptllnd_shutdown. Ptllnd should init
97 kptllnd_data.kptl_ptlid2str_lock before calling kptllnd_ptlid2str.
101 Description: gmlnd ignored some transmit errors when finalizing lnet messages.
105 Description: ptllnd logs a piece of incorrect debug info in kptllnd_peer_handle_hello.
109 Description: the_lnet.ln_finalizing was not set when the current thread is
110 about to complete messages. It only affects multi-threaded
116 Description: Changed the default kqswlnd ntxmsg=512
121 Description: Assertion failure in kernel ptllnd caused by posting passive
122 bulk buffers before connection establishment complete.
127 Description: A race in kernel ptllnd between deleting a peer and posting
128 new communications for it could hang communications -
129 manifesting as "Unexpectedly long timeout" messages.
134 Description: Kernel ptllnd lock ordering issue could hang a node.
139 Description: node crash on socket teardown race
142 Frequency : 'lctl peer_list' issued on a mx net
144 Description: Enable lctl's peer_list for MXLND
147 Frequency : after Ptllnd timeouts and portals congestion
149 Description: Credit overflows
150 Details : This was a bug in ptllnd connection establishment. The fix
151 implements better peer stamps to disambiguate connection
152 establishment and ensure both peers enter the credit flow
153 state machine consistently.
158 Description: kptllnd didn't propagate some network errors up to LNET
159 Details : This bug was spotted while investigating 11394. The fix
160 ensures network errors on sends and bulk transfers are
161 propagated to LNET/lustre correctly.
163 Severity : enhancement
165 Description: Fixed console chatter in case of -ETIMEDOUT.
167 Severity : enhancement
169 Description: Added D_NETTRACE for recording network packet history
170 (initially only for ptllnd). Also a separate userspace
171 ptllnd facility to gather history which should really be
172 covered by D_NETTRACE too, if only CDEBUG recorded history in
178 Description: o2iblnd handle early RDMA_CM_EVENT_DISCONNECTED.
179 Details : If the fabric is lossy, an RDMA_CM_EVENT_DISCONNECTED
180 callback can occur before a connection has actually been
181 established. This caused an assertion failure previously.
183 Severity : enhancement
185 Description: Multiple instances for o2iblnd
186 Details : Allow multiple instances of o2iblnd to enable networking over
187 multiple HCAs and routing between them.
191 Description: lnet deadlock in router_checker
192 Details : turned ksnd_connd_lock, ksnd_reaper_lock, and ksock_net_t:ksnd_lock
193 into BH locks to eliminate potential deadlock caused by
194 ksocknal_data_ready() preempting code holding these locks.
198 Description: Millions of failed socklnd connection attempts cause a very slow FS
199 Details : added a new route flag ksnr_scheduled to distinguish from
200 ksnr_connecting, so that a peer connection request is only turned
201 down for race concerns when an active connection to the same peer
202 is under progress (instead of just being scheduled).
204 ------------------------------------------------------------------------------
206 2007-02-09 Cluster File Systems, Inc. <info@clusterfs.com>
208 * Support for networks:
209 socklnd - kernels up to 2.6.16
210 qswlnd - Qsnet kernel modules 5.20 and later
211 openiblnd - IbGold 1.8.2
213 viblnd - Voltaire ibhost 3.4.5 and later
214 ciblnd - Topspin 3.2.0
215 iiblnd - Infiniserv 3.3 + PathBits patch
216 gmlnd - GM 2.1.22 and later
217 mxlnd - MX 1.2.1 or later
218 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
221 Severity : major on XT3
223 Description: libcfs overwrites /proc/sys/portals
224 Details : libcfs created a symlink from /proc/sys/portals to
225 /proc/sys/lnet for backwards compatibility. This is no
226 longer required and makes the Cray portals /proc variables
231 Description: OFED FMR API change
232 Details : This changes parameter usage to reflect a change in
233 ib_fmr_pool_map_phys() between OFED 1.0 and OFED 1.1. Note
234 that FMR support is only used in experimental versions of the
235 o2iblnd - this change does not affect standard usage at all.
237 Severity : enhancement
239 Description: new ko2iblnd module parameter: ib_mtu
240 Details : the default IB MTU of 2048 performs badly on 23108 Tavor
241 HCAs. You can avoid this problem by setting the MTU to 1024
242 using this module parameter.
244 Severity : enhancement
245 Bugzilla : 11118/11620
246 Description: ptllnd small request message buffer alignment fix
247 Details : Set the PTL_MD_LOCAL_ALIGN8 option on small message receives.
248 Round up small message size on sends in case this option
249 is not supported. 11620 was a defect in the initial
250 implementation which effectively asserted all peers had to be
251 running the correct protocol version which was fixed by always
252 NAK-ing such requests and handling any misalignments they
257 Description: When kib(nal|lnd)_del_peer() is called upon a peer whose
258 ibp_tx_queue is not empty, kib(nal|lnd)_destroy_peer()'s
259 'LASSERT(list_empty(&peer->ibp_tx_queue))' will fail.
261 Severity : enhancement
263 Description: Patchless ZC(zero copy) socklnd
264 Details : New protocol for socklnd, socklnd can support zero copy without
265 kernel patch, it's compatible with old socklnd. Checksum is
266 moved from tunables to modparams.
270 Description: When ksocknal_del_peer() is called upon a peer whose
271 ksnp_tx_queue is not empty, ksocknal_destroy_peer()'s
272 'LASSERT(list_empty(&peer->ksnp_tx_queue))' will fail.
275 Frequency : when ptlrpc is under heavy use and runs out of request buffer
277 Description: In lnet_match_blocked_msg(), md can be used without holding a
281 Frequency : very rarely
283 Description: If ksocknal_lib_setup_sock() fails, a ref on peer is lost.
284 If connd connects a route which has been closed by
285 ksocknal_shutdown(), ksocknal_create_routes() may create new
286 routes which hold references on the peer, causing shutdown
287 process to wait for peer to disappear forever.
289 Severity : enhancement
291 Description: Dump XT3 portals traces on kptllnd timeout
292 Details : Set the kptllnd module parameter "ptltrace_on_timeout=1" to
293 dump Cray portals debug traces to a file. The kptllnd module
294 parameter "ptltrace_basename", default "/tmp/lnet-ptltrace",
295 is the basename of the dump file.
298 Frequency : infrequent
300 Description: kernel ptllnd fix bug in connection re-establishment
301 Details : Kernel ptllnd could produce protocol errors e.g. illegal
302 matchbits and/or violate the credit flow protocol when trying
303 to re-establish a connection with a peer after an error or
306 Severity : enhancement
308 Description: Allow /proc/sys/lnet/debug to be set symbolically
309 Details : Allow debug and subsystem debug values to be read/set by name
310 in addition to numerically, for ease of use.
313 Frequency : only in configurations with LNET routers
315 Description: routes automatically marked down and recovered
316 Details : In configurations with LNET routers if a router fails routers
317 now actively try to recover routes that are down, unless they
318 are marked down by an administrator.
320 ------------------------------------------------------------------------------
322 2006-12-09 Cluster File Systems, Inc. <info@clusterfs.com>
325 Frequency : very rarely, in configurations with LNET routers and TCP
327 Description: incorrect data written to files on OSTs
328 Details : In certain high-load conditions incorrect data may be written
329 to files on the OST when using TCP networks.
331 ------------------------------------------------------------------------------
333 2006-07-31 Cluster File Systems, Inc. <info@clusterfs.com>
335 - rework CDEBUG messages rate-limiting mechanism b=10375
336 - add per-socket tunables for socklnd if the kernel is patched b=10327
338 ------------------------------------------------------------------------------
340 2006-02-15 Cluster File Systems, Inc. <info@clusterfs.com>
342 - fix use of portals/lnet pid to avoid dropping RPCs b=10074
343 - iiblnd wasn't mapping all memory, resulting in comms errors b=9776
344 - quiet LNET startup LNI message for liblustre b=10128
345 - Better console error messages if 'ip2nets' can't match an IP address
346 - Fixed overflow/use-before-set bugs in linux-time.h
347 - Fixed ptllnd bug that wasn't initialising rx descriptors completely
348 - LNET teardown failed an assertion about the route table being empty
349 - Fixed a crash in LNetEQPoll(<invalid handle>)
350 - Future protocol compatibility work (b_rls146_lnetprotovrsn)
351 - improve debug message for liblustre/Catamount nodes (b=10116)
353 2005-10-10 Cluster File Systems, Inc. <info@clusterfs.com>
354 * Configuration change for the XT3
355 The PTLLND is now used to run Lustre over Portals on the XT3.
356 The configure option(s) --with-cray-portals are no longer
357 used. Rather --with-portals=<path-to-portals-includes> is
358 used to enable building on the XT3. In addition to enable
359 XT3 specific features the option --enable-cray-xt3 must be
362 2005-10-10 Cluster File Systems, Inc. <info@clusterfs.com>
363 * Portals has been removed, replaced by LNET.
364 LNET is new networking infrastructure for Lustre, it includes a
365 reorganized network configuration mode (see the user
366 documentation for full details) as well as support for routing
367 between different network fabrics. Lustre Networking Devices
368 (LNDS) for the supported network fabrics have also been created
369 for this new infrastructure.
371 2005-08-08 Cluster File Systems, Inc. <info@clusterfs.com>
376 Frequency : rare (large Voltaire clusters only)
378 Description: the default number of reserved transmit descriptors was too low
379 for some large clusters
380 Details : As a workaround, the number was increased. A proper fix includes
383 2005-06-02 Cluster File Systems, Inc. <info@clusterfs.com>
388 Frequency : occasional (large-scale events, cluster reboot, network failure)
390 Description: too many error messages on console obscure actual problem and
391 can slow down/panic server, or cause recovery to fail repeatedly
392 Details : enable rate-limiting of console error messages, and some messages
393 that were console errors now only go to the kernel log
395 Severity : enhancement
397 Description: add /proc/sys/portals/catastrophe entry which will report if
398 that node has previously LBUGged
400 2005-04-06 Cluster File Systems, Inc. <info@clusterfs.com>
402 - update gmnal to use PTL_MTU, fix module refcounting (b=5786)
404 2005-04-04 Cluster File Systems, Inc. <info@clusterfs.com>
406 - handle error return code in kranal_check_fma_rx() (5915,6054)
408 2005-02-04 Cluster File Systems, Inc. <info@clusterfs.com>
410 - update vibnal (Voltaire IB NAL)
411 - update gmnal (Myrinet NAL), gmnalid
413 2005-02-04 Eric Barton <eeb@bartonsoftware.com>
415 * Landed portals:b_port_step as follows...
417 - removed CFS_DECL_SPIN*
418 just use 'spinlock_t' and initialise with spin_lock_init()
420 - removed CFS_DECL_MUTEX*
421 just use 'struct semaphore' and initialise with init_mutex()
423 - removed CFS_DECL_RWSEM*
424 just use 'struct rw_semaphore' and initialise with init_rwsem()
426 - renamed cfs_sleep_chan -> cfs_waitq
427 cfs_sleep_link -> cfs_waitlink
429 - fixed race in linux version of arch-independent socknal
430 (the ENOMEM/EAGAIN decision).
432 - Didn't fix problems in Darwin version of arch-independent socknal
433 (resetting socket callbacks, eager ack hack, ENOMEM/EAGAIN decision)
435 - removed libcfs types from non-socknal header files (only some types
436 in the header files had been changed; the .c files hadn't been