1 tbd Sun Microsystems, Inc.
3 * Support for networks:
4 socklnd - any kernel supported by Lustre,
5 qswlnd - Qsnet kernel modules 5.20 and later,
6 openiblnd - IbGold 1.8.2,
7 o2iblnd - OFED 1.1, 1.2.0, 1.2.5, and 1.3
8 viblnd - Voltaire ibhost 3.4.5 and later,
9 ciblnd - Topspin 3.2.0,
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
22 Description: socklnd prtocol version 3
23 Details : With current protocol V2, connections on router can be
24 blocked and can't receive any incoming messages when there is no
25 more router buffer, so ZC-ACK can't be handled (LNet message
26 can't be finalized) and will cause deadlock on router.
27 Protocol V3 has a dedicated connection for emergency messages
28 like ZC-ACK to router, messages on this dedicated connection
29 don't need any credit so will never be blocked. Also, V3 can send
30 keepalive ping in specified period for router healthy checking.
34 Description: workaround for OOM from o2iblnd
35 Details : OFED needs allocate big chunk of memory for QP while creating
36 connection for o2iblnd, OOM can happen if no such a contiguous
38 QP size is decided by concurrent_sends and max_fragments of
39 o2iblnd, now we permit user to specify smaller value for
40 concurrent_sends of o2iblnd(i.e: concurrent_sends=7), which
41 will decrease memory block size required by creating QP.
45 Description: Support Zerocopy receive of Chelsio device
46 Details : Chelsio driver can support zerocopy for iov[1] if it's
47 contiguous and large enough.
51 Description: fix credit flow deadlock in uptllnd
55 Description: finalize network operation in reasonable time
56 Details : conf-sanity test_32a couldn't stop ost and mds because it
57 tried to access non-existent peer and tcp connect took
58 quite long before timing out.
62 Description: Remove portals compatibility
63 Details : Remove portals compatibility, not interoperable with releases
68 Description: Continuous recovery on 33 of 413 nodes after lustre oss failure
69 Details : Lost reference on conn prevents peer from being destroyed, which
70 could prevent new peer creation if peer count has reached upper
75 Description: LNET Selftest results in Soft lockup on OSS CPU
76 Details : only hits when 8 or more o2ib clients involved and a session is
77 torn down with 'lst end_session' without preceeding 'lst stop'.
81 Description: concurrent_sends in IB LNDs should not be changeable at run time
82 Details : concurrent_sends in IB LNDs should not be changeable at run time
86 Description: ptl_send_rpc hits LASSERT when ptl_send_buf fails
87 Details : only hits under out-of-memory situations
90 -------------------------------------------------------------------------------
93 04-26-2008 Sun Microsystems, Inc.
95 * Support for networks:
96 socklnd - any kernel supported by Lustre,
97 qswlnd - Qsnet kernel modules 5.20 and later,
98 openiblnd - IbGold 1.8.2,
99 o2iblnd - OFED 1.1 and 1.2.0, 1.2.5
100 viblnd - Voltaire ibhost 3.4.5 and later,
101 ciblnd - Topspin 3.2.0,
102 iiblnd - Infiniserv 3.3 + PathBits patch,
103 gmlnd - GM 2.1.22 and later,
104 mxlnd - MX 1.2.1 or later,
105 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
109 Description: excessive debug information removed
110 Details : excessive debug information removed
114 Description: ksocknal_create_conn() hit ASSERTION during connection race
115 Details : ksocknal_create_conn() hit ASSERTION during connection race
119 Description: ksocknal_send_hello() hit ASSERTION while connecting race
120 Details : ksocknal_send_hello() hit ASSERTION while connecting race
124 Description: o2iblnd/ptllnd credit deadlock in a routed config.
125 Details : o2iblnd/ptllnd credit deadlock in a routed config.
129 Description: High load after starting lnet
130 Details : gmlnd should sleep in rx thread in interruptible way. Otherwise,
131 uptime utility reports high load that looks confusingly.
135 Description: ksocklnd fails to establish connection if accept_port is high
136 Details : PID remapping must not be done for active (outgoing) connections
138 --------------------------------------------------------------------------------
140 2008-01-11 Sun Microsystems, Inc.
142 * Support for networks:
143 socklnd - any kernel supported by Lustre,
144 qswlnd - Qsnet kernel modules 5.20 and later,
145 openiblnd - IbGold 1.8.2,
146 o2iblnd - OFED 1.1 and 1.2.0, 1.2.5
147 viblnd - Voltaire ibhost 3.4.5 and later,
148 ciblnd - Topspin 3.2.0,
149 iiblnd - Infiniserv 3.3 + PathBits patch,
150 gmlnd - GM 2.1.22 and later,
151 mxlnd - MX 1.2.1 or later,
152 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
155 Description: liblustre network error
156 Details : liblustre clients should understand LNET_ACCEPT_PORT environment
157 variable even if they don't start lnet acceptor.
161 Description: Strange message from lnet (Ignoring prediction from the future)
162 Details : Incorrect calculation of peer's last_alive value in ksocklnd
164 --------------------------------------------------------------------------------
166 2007-12-07 Cluster File Systems, Inc. <info@clusterfs.com>
168 * Support for networks:
169 socklnd - any kernel supported by Lustre,
170 qswlnd - Qsnet kernel modules 5.20 and later,
171 openiblnd - IbGold 1.8.2,
172 o2iblnd - OFED 1.1 and 1.2.0, 1.2.5.
173 viblnd - Voltaire ibhost 3.4.5 and later,
174 ciblnd - Topspin 3.2.0,
175 iiblnd - Infiniserv 3.3 + PathBits patch,
176 gmlnd - GM 2.1.22 and later,
177 mxlnd - MX 1.2.1 or later,
178 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
182 Description: ASSERTION(me == md->md_me) failed in lnet_match_md()
186 Description: increase send queue size for ciblnd/openiblnd
190 Description: new userspace socklnd
191 Details : Old userspace tcpnal that resided in lnet/ulnds/socklnd replaced
192 with new one - usocklnd.
194 Severity : enhancement
196 Description: Console message flood
197 Details : Make cdls ratelimiting more tunable by adding several tunable in
198 procfs /proc/sys/lnet/console_{min,max}_delay_centisecs and
199 /proc/sys/lnet/console_backoff.
201 --------------------------------------------------------------------------------
203 2007-09-27 Cluster File Systems, Inc. <info@clusterfs.com>
205 * Support for networks:
206 socklnd - any kernel supported by Lustre,
207 qswlnd - Qsnet kernel modules 5.20 and later,
208 openiblnd - IbGold 1.8.2,
209 o2iblnd - OFED 1.1 and 1.2,
210 viblnd - Voltaire ibhost 3.4.5 and later,
211 ciblnd - Topspin 3.2.0,
212 iiblnd - Infiniserv 3.3 + PathBits patch,
213 gmlnd - GM 2.1.22 and later,
214 mxlnd - MX 1.2.1 or later,
215 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
219 Description: /proc/sys/lnet has non-sysctl entries
220 Details : Updating dump_kernel/daemon_file/debug_mb to use sysctl variables
224 Description: TOE Kernel panic by ksocklnd
225 Details : offloaded sockets provide their own implementation of sendpage,
226 can't call tcp_sendpage() directly
230 Description: kibnal_shutdown() doesn't finish; lconf --cleanup hangs
231 Details : races between lnd_shutdown and peer creation prevent
232 lnd_shutdown from finishing.
236 Description: open files rlimit 1024 reached while liblustre testing
237 Details : ulnds/socklnd must close open socket after unsuccessful
242 Description: build error
243 Details : fix typos in gmlnd, ptllnd and viblnd
245 ------------------------------------------------------------------------------
247 2007-07-30 Cluster File Systems, Inc. <info@clusterfs.com>
249 * Support for networks:
250 socklnd - kernels up to 2.6.16,
251 qswlnd - Qsnet kernel modules 5.20 and later,
252 openiblnd - IbGold 1.8.2,
253 o2iblnd - OFED 1.1 and 1.2
254 viblnd - Voltaire ibhost 3.4.5 and later,
255 ciblnd - Topspin 3.2.0,
256 iiblnd - Infiniserv 3.3 + PathBits patch,
257 gmlnd - GM 2.1.22 and later,
258 mxlnd - MX 1.2.1 or later,
259 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
261 2007-06-21 Cluster File Systems, Inc. <info@clusterfs.com>
263 * Support for networks:
264 socklnd - kernels up to 2.6.16,
265 qswlnd - Qsnet kernel modules 5.20 and later,
266 openiblnd - IbGold 1.8.2,
268 viblnd - Voltaire ibhost 3.4.5 and later,
269 ciblnd - Topspin 3.2.0,
270 iiblnd - Infiniserv 3.3 + PathBits patch,
271 gmlnd - GM 2.1.22 and later,
272 mxlnd - MX 1.2.1 or later,
273 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
277 Description: Initialize cpumask before use
281 Description: ASSERTION failures when upgrading to the patchless zero-copy
283 Details : This bug affects "rolling upgrades", causing an inconsistent
284 protocol version negotiation and subsequent assertion failure
285 during rolling upgrades after the first wave of upgrades.
289 Details : Change "dropped message" CERRORs to D_NETERROR so they are
290 logged instead of creating "console chatter" when a lustre
291 timeout races with normal RPC completion.
294 Details : lnet_clear_peer_table can wait forever if user forgets to
298 Details : libcfs_id2str should check pid against LNET_PID_ANY.
302 Description: added LNET self test
303 Details : landing b_self_test
308 Description: cfs_duration_{u,n}sec() wrongly calculate nanosecond part of
310 Details : do_div() macro is used incorrectly.
312 2007-04-23 Cluster File Systems, Inc. <info@clusterfs.com>
316 Description: make panic on lbug configurable
320 Description: Add OFED1.2 support to o2iblnd
321 Details : o2iblnd depends on OFED's modules, if out-tree OFED's modules
322 are installed (other than kernel's in-tree infiniband), there
323 could be some problem while insmod o2iblnd (mismatch CRC of
325 If extra Module.symvers is supported in kernel (i.e, 2.6.17),
326 this link provides solution:
327 https://bugs.openfabrics.org/show_bug.cgi?id=355
328 if extra Module.symvers is not supported in kernel, we will
329 have to run the script in bug 12316 to update
330 $LINUX/module.symvers before building o2iblnd.
331 More details about this are in bug 12316.
333 ------------------------------------------------------------------------------
335 2007-04-01 Cluster File Systems, Inc. <info@clusterfs.com>
336 * version 1.4.10 / 1.6.0
337 * Support for networks:
338 socklnd - kernels up to 2.6.16,
339 qswlnd - Qsnet kernel modules 5.20 and later,
340 openiblnd - IbGold 1.8.2,
342 viblnd - Voltaire ibhost 3.4.5 and later,
343 ciblnd - Topspin 3.2.0,
344 iiblnd - Infiniserv 3.3 + PathBits patch,
345 gmlnd - GM 2.1.22 and later,
346 mxlnd - MX 1.2.1 or later,
347 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
351 Description: Ptllnd didn't init kptllnd_data.kptl_idle_txs before it could be
352 possibly accessed in kptllnd_shutdown. Ptllnd should init
353 kptllnd_data.kptl_ptlid2str_lock before calling kptllnd_ptlid2str.
357 Description: gmlnd ignored some transmit errors when finalizing lnet messages.
361 Description: ptllnd logs a piece of incorrect debug info in kptllnd_peer_handle_hello.
365 Description: the_lnet.ln_finalizing was not set when the current thread is
366 about to complete messages. It only affects multi-threaded
372 Description: Changed the default kqswlnd ntxmsg=512
377 Description: Assertion failure in kernel ptllnd caused by posting passive
378 bulk buffers before connection establishment complete.
383 Description: A race in kernel ptllnd between deleting a peer and posting
384 new communications for it could hang communications -
385 manifesting as "Unexpectedly long timeout" messages.
390 Description: Kernel ptllnd lock ordering issue could hang a node.
395 Description: node crash on socket teardown race
398 Frequency : 'lctl peer_list' issued on a mx net
400 Description: Enable lctl's peer_list for MXLND
403 Frequency : after Ptllnd timeouts and portals congestion
405 Description: Credit overflows
406 Details : This was a bug in ptllnd connection establishment. The fix
407 implements better peer stamps to disambiguate connection
408 establishment and ensure both peers enter the credit flow
409 state machine consistently.
414 Description: kptllnd didn't propagate some network errors up to LNET
415 Details : This bug was spotted while investigating 11394. The fix
416 ensures network errors on sends and bulk transfers are
417 propagated to LNET/lustre correctly.
419 Severity : enhancement
421 Description: Fixed console chatter in case of -ETIMEDOUT.
423 Severity : enhancement
425 Description: Added D_NETTRACE for recording network packet history
426 (initially only for ptllnd). Also a separate userspace
427 ptllnd facility to gather history which should really be
428 covered by D_NETTRACE too, if only CDEBUG recorded history in
434 Description: o2iblnd handle early RDMA_CM_EVENT_DISCONNECTED.
435 Details : If the fabric is lossy, an RDMA_CM_EVENT_DISCONNECTED
436 callback can occur before a connection has actually been
437 established. This caused an assertion failure previously.
439 Severity : enhancement
441 Description: Multiple instances for o2iblnd
442 Details : Allow multiple instances of o2iblnd to enable networking over
443 multiple HCAs and routing between them.
447 Description: lnet deadlock in router_checker
448 Details : turned ksnd_connd_lock, ksnd_reaper_lock, and ksock_net_t:ksnd_lock
449 into BH locks to eliminate potential deadlock caused by
450 ksocknal_data_ready() preempting code holding these locks.
454 Description: Millions of failed socklnd connection attempts cause a very slow FS
455 Details : added a new route flag ksnr_scheduled to distinguish from
456 ksnr_connecting, so that a peer connection request is only turned
457 down for race concerns when an active connection to the same peer
458 is under progress (instead of just being scheduled).
460 ------------------------------------------------------------------------------
462 2007-02-09 Cluster File Systems, Inc. <info@clusterfs.com>
464 * Support for networks:
465 socklnd - kernels up to 2.6.16
466 qswlnd - Qsnet kernel modules 5.20 and later
467 openiblnd - IbGold 1.8.2
469 viblnd - Voltaire ibhost 3.4.5 and later
470 ciblnd - Topspin 3.2.0
471 iiblnd - Infiniserv 3.3 + PathBits patch
472 gmlnd - GM 2.1.22 and later
473 mxlnd - MX 1.2.1 or later
474 ptllnd - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
477 Severity : major on XT3
479 Description: libcfs overwrites /proc/sys/portals
480 Details : libcfs created a symlink from /proc/sys/portals to
481 /proc/sys/lnet for backwards compatibility. This is no
482 longer required and makes the Cray portals /proc variables
487 Description: OFED FMR API change
488 Details : This changes parameter usage to reflect a change in
489 ib_fmr_pool_map_phys() between OFED 1.0 and OFED 1.1. Note
490 that FMR support is only used in experimental versions of the
491 o2iblnd - this change does not affect standard usage at all.
493 Severity : enhancement
495 Description: new ko2iblnd module parameter: ib_mtu
496 Details : the default IB MTU of 2048 performs badly on 23108 Tavor
497 HCAs. You can avoid this problem by setting the MTU to 1024
498 using this module parameter.
500 Severity : enhancement
501 Bugzilla : 11118/11620
502 Description: ptllnd small request message buffer alignment fix
503 Details : Set the PTL_MD_LOCAL_ALIGN8 option on small message receives.
504 Round up small message size on sends in case this option
505 is not supported. 11620 was a defect in the initial
506 implementation which effectively asserted all peers had to be
507 running the correct protocol version which was fixed by always
508 NAK-ing such requests and handling any misalignments they
513 Description: When kib(nal|lnd)_del_peer() is called upon a peer whose
514 ibp_tx_queue is not empty, kib(nal|lnd)_destroy_peer()'s
515 'LASSERT(list_empty(&peer->ibp_tx_queue))' will fail.
517 Severity : enhancement
519 Description: Patchless ZC(zero copy) socklnd
520 Details : New protocol for socklnd, socklnd can support zero copy without
521 kernel patch, it's compatible with old socklnd. Checksum is
522 moved from tunables to modparams.
526 Description: When ksocknal_del_peer() is called upon a peer whose
527 ksnp_tx_queue is not empty, ksocknal_destroy_peer()'s
528 'LASSERT(list_empty(&peer->ksnp_tx_queue))' will fail.
531 Frequency : when ptlrpc is under heavy use and runs out of request buffer
533 Description: In lnet_match_blocked_msg(), md can be used without holding a
537 Frequency : very rarely
539 Description: If ksocknal_lib_setup_sock() fails, a ref on peer is lost.
540 If connd connects a route which has been closed by
541 ksocknal_shutdown(), ksocknal_create_routes() may create new
542 routes which hold references on the peer, causing shutdown
543 process to wait for peer to disappear forever.
545 Severity : enhancement
547 Description: Dump XT3 portals traces on kptllnd timeout
548 Details : Set the kptllnd module parameter "ptltrace_on_timeout=1" to
549 dump Cray portals debug traces to a file. The kptllnd module
550 parameter "ptltrace_basename", default "/tmp/lnet-ptltrace",
551 is the basename of the dump file.
554 Frequency : infrequent
556 Description: kernel ptllnd fix bug in connection re-establishment
557 Details : Kernel ptllnd could produce protocol errors e.g. illegal
558 matchbits and/or violate the credit flow protocol when trying
559 to re-establish a connection with a peer after an error or
562 Severity : enhancement
564 Description: Allow /proc/sys/lnet/debug to be set symbolically
565 Details : Allow debug and subsystem debug values to be read/set by name
566 in addition to numerically, for ease of use.
569 Frequency : only in configurations with LNET routers
571 Description: routes automatically marked down and recovered
572 Details : In configurations with LNET routers if a router fails routers
573 now actively try to recover routes that are down, unless they
574 are marked down by an administrator.
576 ------------------------------------------------------------------------------
578 2006-12-09 Cluster File Systems, Inc. <info@clusterfs.com>
581 Frequency : very rarely, in configurations with LNET routers and TCP
583 Description: incorrect data written to files on OSTs
584 Details : In certain high-load conditions incorrect data may be written
585 to files on the OST when using TCP networks.
587 ------------------------------------------------------------------------------
589 2006-07-31 Cluster File Systems, Inc. <info@clusterfs.com>
591 - rework CDEBUG messages rate-limiting mechanism b=10375
592 - add per-socket tunables for socklnd if the kernel is patched b=10327
594 ------------------------------------------------------------------------------
596 2006-02-15 Cluster File Systems, Inc. <info@clusterfs.com>
598 - fix use of portals/lnet pid to avoid dropping RPCs b=10074
599 - iiblnd wasn't mapping all memory, resulting in comms errors b=9776
600 - quiet LNET startup LNI message for liblustre b=10128
601 - Better console error messages if 'ip2nets' can't match an IP address
602 - Fixed overflow/use-before-set bugs in linux-time.h
603 - Fixed ptllnd bug that wasn't initialising rx descriptors completely
604 - LNET teardown failed an assertion about the route table being empty
605 - Fixed a crash in LNetEQPoll(<invalid handle>)
606 - Future protocol compatibility work (b_rls146_lnetprotovrsn)
607 - improve debug message for liblustre/Catamount nodes (b=10116)
609 2005-10-10 Cluster File Systems, Inc. <info@clusterfs.com>
610 * Configuration change for the XT3
611 The PTLLND is now used to run Lustre over Portals on the XT3.
612 The configure option(s) --with-cray-portals are no longer
613 used. Rather --with-portals=<path-to-portals-includes> is
614 used to enable building on the XT3. In addition to enable
615 XT3 specific features the option --enable-cray-xt3 must be
618 2005-10-10 Cluster File Systems, Inc. <info@clusterfs.com>
619 * Portals has been removed, replaced by LNET.
620 LNET is new networking infrastructure for Lustre, it includes a
621 reorganized network configuration mode (see the user
622 documentation for full details) as well as support for routing
623 between different network fabrics. Lustre Networking Devices
624 (LNDS) for the supported network fabrics have also been created
625 for this new infrastructure.
627 2005-08-08 Cluster File Systems, Inc. <info@clusterfs.com>
632 Frequency : rare (large Voltaire clusters only)
634 Description: the default number of reserved transmit descriptors was too low
635 for some large clusters
636 Details : As a workaround, the number was increased. A proper fix includes
639 2005-06-02 Cluster File Systems, Inc. <info@clusterfs.com>
644 Frequency : occasional (large-scale events, cluster reboot, network failure)
646 Description: too many error messages on console obscure actual problem and
647 can slow down/panic server, or cause recovery to fail repeatedly
648 Details : enable rate-limiting of console error messages, and some messages
649 that were console errors now only go to the kernel log
651 Severity : enhancement
653 Description: add /proc/sys/portals/catastrophe entry which will report if
654 that node has previously LBUGged
656 2005-04-06 Cluster File Systems, Inc. <info@clusterfs.com>
658 - update gmnal to use PTL_MTU, fix module refcounting (b=5786)
660 2005-04-04 Cluster File Systems, Inc. <info@clusterfs.com>
662 - handle error return code in kranal_check_fma_rx() (5915,6054)
664 2005-02-04 Cluster File Systems, Inc. <info@clusterfs.com>
666 - update vibnal (Voltaire IB NAL)
667 - update gmnal (Myrinet NAL), gmnalid
669 2005-02-04 Eric Barton <eeb@bartonsoftware.com>
671 * Landed portals:b_port_step as follows...
673 - removed CFS_DECL_SPIN*
674 just use 'spinlock_t' and initialise with spin_lock_init()
676 - removed CFS_DECL_MUTEX*
677 just use 'struct semaphore' and initialise with init_mutex()
679 - removed CFS_DECL_RWSEM*
680 just use 'struct rw_semaphore' and initialise with init_rwsem()
682 - renamed cfs_sleep_chan -> cfs_waitq
683 cfs_sleep_link -> cfs_waitlink
685 - fixed race in linux version of arch-independent socknal
686 (the ENOMEM/EAGAIN decision).
688 - Didn't fix problems in Darwin version of arch-independent socknal
689 (resetting socket callbacks, eager ack hack, ENOMEM/EAGAIN decision)
691 - removed libcfs types from non-socknal header files (only some types
692 in the header files had been changed; the .c files hadn't been