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