Whamcloud - gitweb
b=14956
[fs/lustre-release.git] / lnet / ChangeLog
1 tbd  Sun Microsystems, Inc.
2        * version 1.6.5
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 and 1.2.0, 1.2.5
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
14 Severity   : normal
15 Bugzilla   : 14956
16 Description: High load after starting lnet
17 Details    : gmlnd should sleep in rx thread in interruptible way. Otherwise,
18              uptime utility reports high load that looks confusingly.
19
20 Severity   : normal
21 Bugzilla   : 14838
22 Description: ksocklnd fails to establish connection if accept_port is high
23 Details    : PID remapping must not be done for active (outgoing) connections
24
25 --------------------------------------------------------------------------------
26
27 2008-01-11  Sun Microsystems, Inc.
28        * version 1.4.12
29        * Support for networks:
30         socklnd   - any kernel supported by Lustre,
31         qswlnd    - Qsnet kernel modules 5.20 and later,
32         openiblnd - IbGold 1.8.2,
33         o2iblnd   - OFED 1.1 and 1.2.0, 1.2.5
34         viblnd    - Voltaire ibhost 3.4.5 and later,
35         ciblnd    - Topspin 3.2.0,
36         iiblnd    - Infiniserv 3.3 + PathBits patch,
37         gmlnd     - GM 2.1.22 and later,
38         mxlnd     - MX 1.2.1 or later,
39         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
40 Severity   : normal
41 Bugzilla   : 14387
42 Description: liblustre network error
43 Details    : liblustre clients should understand LNET_ACCEPT_PORT environment
44              variable even if they don't start lnet acceptor.
45
46 Severity   : normal
47 Bugzilla   : 14300
48 Description: Strange message from lnet (Ignoring prediction from the future)
49 Details    : Incorrect calculation of peer's last_alive value in ksocklnd
50
51 --------------------------------------------------------------------------------
52
53 2007-12-07         Cluster File Systems, Inc. <info@clusterfs.com>
54        * version 1.6.4
55        * Support for networks:
56         socklnd   - any kernel supported by Lustre,
57         qswlnd    - Qsnet kernel modules 5.20 and later,
58         openiblnd - IbGold 1.8.2,
59         o2iblnd   - OFED 1.1 and 1.2.0, 1.2.5.
60         viblnd    - Voltaire ibhost 3.4.5 and later,
61         ciblnd    - Topspin 3.2.0,
62         iiblnd    - Infiniserv 3.3 + PathBits patch,
63         gmlnd     - GM 2.1.22 and later,
64         mxlnd     - MX 1.2.1 or later,
65         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
66
67 Severity   : normal
68 Bugzilla   : 14238
69 Description: ASSERTION(me == md->md_me) failed in lnet_match_md()
70
71 Severity   : normal
72 Bugzilla   : 12494
73 Description: increase send queue size for ciblnd/openiblnd
74
75 Severity   : normal
76 Bugzilla   : 12302
77 Description: new userspace socklnd
78 Details    : Old userspace tcpnal that resided in lnet/ulnds/socklnd replaced
79              with new one - usocklnd.
80
81 Severity   : enhancement
82 Bugzilla   : 11686
83 Description: Console message flood
84 Details    : Make cdls ratelimiting more tunable by adding several tunable in
85              procfs /proc/sys/lnet/console_{min,max}_delay_centisecs and
86              /proc/sys/lnet/console_backoff.
87
88 --------------------------------------------------------------------------------
89
90 2007-09-27         Cluster File Systems, Inc. <info@clusterfs.com>
91        * version 1.6.3
92        * Support for networks:
93         socklnd   - any kernel supported by Lustre,
94         qswlnd    - Qsnet kernel modules 5.20 and later,
95         openiblnd - IbGold 1.8.2,
96         o2iblnd   - OFED 1.1 and 1.2,
97         viblnd    - Voltaire ibhost 3.4.5 and later,
98         ciblnd    - Topspin 3.2.0,
99         iiblnd    - Infiniserv 3.3 + PathBits patch,
100         gmlnd     - GM 2.1.22 and later,
101         mxlnd     - MX 1.2.1 or later,
102         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
103
104 Severity   : normal
105 Bugzilla   : 12782
106 Description: /proc/sys/lnet has non-sysctl entries
107 Details    : Updating dump_kernel/daemon_file/debug_mb to use sysctl variables
108
109 Severity   : major
110 Bugzilla   : 13236
111 Description: TOE Kernel panic by ksocklnd
112 Details    : offloaded sockets provide their own implementation of sendpage,
113              can't call tcp_sendpage() directly
114
115 Severity   : normal
116 Bugzilla   : 10778
117 Description: kibnal_shutdown() doesn't finish; lconf --cleanup hangs
118 Details    : races between lnd_shutdown and peer creation prevent 
119              lnd_shutdown from finishing.
120
121 Severity   : normal
122 Bugzilla   : 13279
123 Description: open files rlimit 1024 reached while liblustre testing
124 Details    : ulnds/socklnd must close open socket after unsuccessful
125              'say hello' attempt.
126
127 Severity   : major 
128 Bugzilla   : 13482
129 Description: build error
130 Details    : fix typos in gmlnd, ptllnd and viblnd
131
132 ------------------------------------------------------------------------------
133
134 2007-07-30  Cluster File Systems, Inc. <info@clusterfs.com>
135        * version 1.6.1
136        * Support for networks:
137         socklnd   - kernels up to 2.6.16,
138         qswlnd    - Qsnet kernel modules 5.20 and later,
139         openiblnd - IbGold 1.8.2,
140         o2iblnd   - OFED 1.1 and 1.2
141         viblnd    - Voltaire ibhost 3.4.5 and later,
142         ciblnd    - Topspin 3.2.0,
143         iiblnd    - Infiniserv 3.3 + PathBits patch,
144         gmlnd     - GM 2.1.22 and later,
145         mxlnd     - MX 1.2.1 or later,
146         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
147
148 2007-06-21  Cluster File Systems, Inc. <info@clusterfs.com>
149        * version 1.4.11
150        * Support for networks:
151         socklnd   - kernels up to 2.6.16,
152         qswlnd    - Qsnet kernel modules 5.20 and later,
153         openiblnd - IbGold 1.8.2,
154         o2iblnd   - OFED 1.1
155         viblnd    - Voltaire ibhost 3.4.5 and later,
156         ciblnd    - Topspin 3.2.0,
157         iiblnd    - Infiniserv 3.3 + PathBits patch,
158         gmlnd     - GM 2.1.22 and later,
159         mxlnd     - MX 1.2.1 or later,
160         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
161
162 Severity   : minor
163 Bugzilla   : 13288
164 Description: Initialize cpumask before use
165
166 Severity   : major
167 Bugzilla   : 12014
168 Description: ASSERTION failures when upgrading to the patchless zero-copy
169              socklnd 
170 Details    : This bug affects "rolling upgrades", causing an inconsistent
171              protocol version negotiation and subsequent assertion failure
172              during rolling upgrades after the first wave of upgrades.
173
174 Severity   : minor
175 Bugzilla   : 11223
176 Details    : Change "dropped message" CERRORs to D_NETERROR so they are
177              logged instead of creating "console chatter" when a lustre
178              timeout races with normal RPC completion.
179
180 Severity   : minor
181 Details    : lnet_clear_peer_table can wait forever if user forgets to
182              clear a lazy portal.
183
184 Severity   : minor
185 Details    : libcfs_id2str should check pid against LNET_PID_ANY.
186
187 Severity   : major
188 Bugzilla   : 10916
189 Description: added LNET self test
190 Details    : landing b_self_test
191
192 Severity   : minor
193 Frequency  : rare
194 Bugzilla   : 12227
195 Description: cfs_duration_{u,n}sec() wrongly calculate nanosecond part of
196              struct timeval.
197 Details    : do_div() macro is used incorrectly.
198
199 2007-04-23  Cluster File Systems, Inc. <info@clusterfs.com>
200
201 Severity   : normal
202 Bugzilla   : 11680
203 Description: make panic on lbug configurable
204
205 Severity   : major
206 Bugzilla   : 12316
207 Description: Add OFED1.2 support to o2iblnd
208 Details    : o2iblnd depends on OFED's modules, if out-tree OFED's modules
209              are installed (other than kernel's in-tree infiniband), there
210              could be some problem while insmod o2iblnd (mismatch CRC of 
211              ib_* symbols).
212              If extra Module.symvers is supported in kernel (i.e, 2.6.17),
213              this link provides solution:
214              https://bugs.openfabrics.org/show_bug.cgi?id=355
215              if extra Module.symvers is not supported in kernel, we will
216              have to run the script in bug 12316 to update
217              $LINUX/module.symvers before building o2iblnd.
218              More details about this are in bug 12316.
219
220 ------------------------------------------------------------------------------
221
222 2007-04-01  Cluster File Systems, Inc. <info@clusterfs.com>
223        * version 1.4.10 / 1.6.0
224        * Support for networks:
225         socklnd   - kernels up to 2.6.16,
226         qswlnd    - Qsnet kernel modules 5.20 and later,
227         openiblnd - IbGold 1.8.2,
228         o2iblnd   - OFED 1.1,
229         viblnd    - Voltaire ibhost 3.4.5 and later,
230         ciblnd    - Topspin 3.2.0,
231         iiblnd    - Infiniserv 3.3 + PathBits patch,
232         gmlnd     - GM 2.1.22 and later,
233         mxlnd     - MX 1.2.1 or later,
234         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
235         
236 Severity   : minor
237 Frequency  : rare
238 Description: Ptllnd didn't init kptllnd_data.kptl_idle_txs before it could be
239              possibly accessed in kptllnd_shutdown. Ptllnd should init 
240              kptllnd_data.kptl_ptlid2str_lock before calling kptllnd_ptlid2str.
241
242 Severity   : normal
243 Frequency  : rare
244 Description: gmlnd ignored some transmit errors when finalizing lnet messages.
245
246 Severity   : minor
247 Frequency  : rare
248 Description: ptllnd logs a piece of incorrect debug info in kptllnd_peer_handle_hello.
249
250 Severity   : minor
251 Frequency  : rare
252 Description: the_lnet.ln_finalizing was not set when the current thread is
253              about to complete messages. It only affects multi-threaded 
254              user space LNet.
255         
256 Severity   : normal
257 Frequency  : rare
258 Bugzilla   : 11472
259 Description: Changed the default kqswlnd ntxmsg=512
260         
261 Severity   : major
262 Frequency  : rare
263 Bugzilla   : 12458
264 Description: Assertion failure in kernel ptllnd caused by posting passive
265              bulk buffers before connection establishment complete.
266         
267 Severity   : major
268 Frequency  : rare
269 Bugzilla   : 12445
270 Description: A race in kernel ptllnd between deleting a peer and posting
271              new communications for it could hang communications -
272              manifesting as "Unexpectedly long timeout" messages.
273         
274 Severity   : major
275 Frequency  : rare
276 Bugzilla   : 12432
277 Description: Kernel ptllnd lock ordering issue could hang a node.
278         
279 Severity   : major
280 Frequency  : rare
281 Bugzilla   : 12016
282 Description: node crash on socket teardown race
283
284 Severity   : minor
285 Frequency  : 'lctl peer_list' issued on a mx net
286 Bugzilla   : 12237
287 Description: Enable lctl's peer_list for MXLND
288
289 Severity   : major
290 Frequency  : after Ptllnd timeouts and portals congestion
291 Bugzilla   : 11659
292 Description: Credit overflows
293 Details    : This was a bug in ptllnd connection establishment.  The fix
294              implements better peer stamps to disambiguate connection
295              establishment and ensure both peers enter the credit flow
296              state machine consistently.
297
298 Severity   : major
299 Frequency  : rare       
300 Bugzilla   : 11394
301 Description: kptllnd didn't propagate some network errors up to LNET 
302 Details    : This bug was spotted while investigating 11394.  The fix
303              ensures network errors on sends and bulk transfers are
304              propagated to LNET/lustre correctly.
305
306 Severity   : enhancement
307 Bugzilla   : 10316
308 Description: Fixed console chatter in case of -ETIMEDOUT.
309
310 Severity   : enhancement
311 Bugzilla   : 11684
312 Description: Added D_NETTRACE for recording network packet history
313              (initially only for ptllnd).  Also a separate userspace
314              ptllnd facility to gather history which should really be
315              covered by D_NETTRACE too, if only CDEBUG recorded history in
316              userspace.
317
318 Severity   : major
319 Frequency  : rare       
320 Bugzilla   : 11616
321 Description: o2iblnd handle early RDMA_CM_EVENT_DISCONNECTED.
322 Details    : If the fabric is lossy, an RDMA_CM_EVENT_DISCONNECTED
323              callback can occur before a connection has actually been
324              established.  This caused an assertion failure previously.
325
326 Severity   : enhancement
327 Bugzilla   : 11094
328 Description: Multiple instances for o2iblnd
329 Details    : Allow multiple instances of o2iblnd to enable networking over
330              multiple HCAs and routing between them.
331
332 Severity   : major
333 Bugzilla   : 11201
334 Description: lnet deadlock in router_checker
335 Details    : turned ksnd_connd_lock, ksnd_reaper_lock, and ksock_net_t:ksnd_lock
336              into BH locks to eliminate potential deadlock caused by
337              ksocknal_data_ready() preempting code holding these locks.
338
339 Severity   : major
340 Bugzilla   : 11126
341 Description: Millions of failed socklnd connection attempts cause a very slow FS
342 Details    : added a new route flag ksnr_scheduled to distinguish from
343              ksnr_connecting, so that a peer connection request is only turned
344              down for race concerns when an active connection to the same peer
345              is under progress (instead of just being scheduled).
346
347 ------------------------------------------------------------------------------
348
349 2007-02-09  Cluster File Systems, Inc. <info@clusterfs.com>
350        * version 1.4.9
351        * Support for networks:
352         socklnd   - kernels up to 2.6.16
353         qswlnd    - Qsnet kernel modules 5.20 and later
354         openiblnd - IbGold 1.8.2
355         o2iblnd   - OFED 1.1
356         viblnd    - Voltaire ibhost 3.4.5 and later
357         ciblnd    - Topspin 3.2.0
358         iiblnd    - Infiniserv 3.3 + PathBits patch
359         gmlnd     - GM 2.1.22 and later
360         mxlnd     - MX 1.2.1 or later
361         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
362        * bug fixes
363
364 Severity   : major on XT3
365 Bugzilla   : none
366 Description: libcfs overwrites /proc/sys/portals
367 Details    : libcfs created a symlink from /proc/sys/portals to
368              /proc/sys/lnet for backwards compatibility.  This is no
369              longer required and makes the Cray portals /proc variables
370              inaccessible.
371
372 Severity   : minor
373 Bugzilla   : 11312
374 Description: OFED FMR API change
375 Details    : This changes parameter usage to reflect a change in
376              ib_fmr_pool_map_phys() between OFED 1.0 and OFED 1.1.  Note
377              that FMR support is only used in experimental versions of the
378              o2iblnd - this change does not affect standard usage at all.
379
380 Severity   : enhancement
381 Bugzilla   : 11245
382 Description: new ko2iblnd module parameter: ib_mtu
383 Details    : the default IB MTU of 2048 performs badly on 23108 Tavor
384              HCAs.  You can avoid this problem by setting the MTU to 1024
385              using this module parameter.
386
387 Severity   : enhancement
388 Bugzilla   : 11118/11620
389 Description: ptllnd small request message buffer alignment fix
390 Details    : Set the PTL_MD_LOCAL_ALIGN8 option on small message receives.
391              Round up small message size on sends in case this option
392              is not supported.  11620 was a defect in the initial
393              implementation which effectively asserted all peers had to be
394              running the correct protocol version which was fixed by always
395              NAK-ing such requests and handling any misalignments they
396              introduce.
397
398 Severity   : minor
399 Frequency  : rarely
400 Description: When kib(nal|lnd)_del_peer() is called upon a peer whose
401              ibp_tx_queue is not empty, kib(nal|lnd)_destroy_peer()'s
402              'LASSERT(list_empty(&peer->ibp_tx_queue))' will fail.
403
404 Severity   : enhancement
405 Bugzilla   : 11250
406 Description: Patchless ZC(zero copy) socklnd
407 Details    : New protocol for socklnd, socklnd can support zero copy without
408              kernel patch, it's compatible with old socklnd. Checksum is 
409              moved from tunables to modparams.
410
411 Severity   : minor
412 Frequency  : rarely
413 Description: When ksocknal_del_peer() is called upon a peer whose
414              ksnp_tx_queue is not empty, ksocknal_destroy_peer()'s
415              'LASSERT(list_empty(&peer->ksnp_tx_queue))' will fail.
416
417 Severity   : normal
418 Frequency  : when ptlrpc is under heavy use and runs out of request buffer
419 Bugzilla   : 11318
420 Description: In lnet_match_blocked_msg(), md can be used without holding a
421              ref on it.
422
423 Severity   : minor
424 Frequency  : very rarely
425 Bugzilla   : 10727
426 Description: If ksocknal_lib_setup_sock() fails, a ref on peer is lost.
427              If connd connects a route which has been closed by
428              ksocknal_shutdown(), ksocknal_create_routes() may create new
429              routes which hold references on the peer, causing shutdown
430              process to wait for peer to disappear forever.
431
432 Severity   : enhancement
433 Bugzilla   : 11234
434 Description: Dump XT3 portals traces on kptllnd timeout
435 Details    : Set the kptllnd module parameter "ptltrace_on_timeout=1" to
436              dump Cray portals debug traces to a file.  The kptllnd module
437              parameter "ptltrace_basename", default "/tmp/lnet-ptltrace",
438              is the basename of the dump file.
439
440 Severity   : major
441 Frequency  : infrequent
442 Bugzilla   : 11308
443 Description: kernel ptllnd fix bug in connection re-establishment
444 Details    : Kernel ptllnd could produce protocol errors e.g. illegal
445              matchbits and/or violate the credit flow protocol when trying
446              to re-establish a connection with a peer after an error or
447              timeout. 
448
449 Severity   : enhancement
450 Bugzilla   : 10316
451 Description: Allow /proc/sys/lnet/debug to be set symbolically
452 Details    : Allow debug and subsystem debug values to be read/set by name
453              in addition to numerically, for ease of use.
454
455 Severity   : normal
456 Frequency  : only in configurations with LNET routers
457 Bugzilla   : 10316
458 Description: routes automatically marked down and recovered
459 Details    : In configurations with LNET routers if a router fails routers
460              now actively try to recover routes that are down, unless they
461              are marked down by an administrator.
462
463 ------------------------------------------------------------------------------
464
465 2006-12-09  Cluster File Systems, Inc. <info@clusterfs.com>
466
467 Severity   : critical
468 Frequency  : very rarely, in configurations with LNET routers and TCP
469 Bugzilla   : 10889
470 Description: incorrect data written to files on OSTs
471 Details    : In certain high-load conditions incorrect data may be written
472              to files on the OST when using TCP networks.
473
474 ------------------------------------------------------------------------------
475
476 2006-07-31  Cluster File Systems, Inc. <info@clusterfs.com>
477         * version 1.4.7
478         - rework CDEBUG messages rate-limiting mechanism b=10375
479         - add per-socket tunables for socklnd if the kernel is patched b=10327
480
481 ------------------------------------------------------------------------------
482
483 2006-02-15  Cluster File Systems, Inc. <info@clusterfs.com>
484         * version 1.4.6
485         - fix use of portals/lnet pid to avoid dropping RPCs b=10074
486         - iiblnd wasn't mapping all memory, resulting in comms errors b=9776
487         - quiet LNET startup LNI message for liblustre b=10128
488         - Better console error messages if 'ip2nets' can't match an IP address
489         - Fixed overflow/use-before-set bugs in linux-time.h
490         - Fixed ptllnd bug that wasn't initialising rx descriptors completely
491         - LNET teardown failed an assertion about the route table being empty
492         - Fixed a crash in LNetEQPoll(<invalid handle>)
493         - Future protocol compatibility work (b_rls146_lnetprotovrsn)
494         - improve debug message for liblustre/Catamount nodes (b=10116)
495
496 2005-10-10  Cluster File Systems, Inc. <info@clusterfs.com>
497         * Configuration change for the XT3
498              The PTLLND is now used to run Lustre over Portals on the XT3.
499              The configure option(s) --with-cray-portals are no longer
500              used.  Rather --with-portals=<path-to-portals-includes> is
501              used to enable building on the XT3.  In addition to enable
502              XT3 specific features the option --enable-cray-xt3 must be
503              used.
504
505 2005-10-10  Cluster File Systems, Inc. <info@clusterfs.com>
506         * Portals has been removed, replaced by LNET.
507            LNET is new networking infrastructure for Lustre, it includes a
508            reorganized network configuration mode (see the user
509            documentation for full details) as well as support for routing
510            between different network fabrics.  Lustre Networking Devices
511            (LNDS) for the supported network fabrics have also been created
512            for this new infrastructure.
513
514 2005-08-08  Cluster File Systems, Inc. <info@clusterfs.com>
515        * version 1.4.4
516        * bug fixes
517
518 Severity   : major
519 Frequency  : rare (large Voltaire clusters only)
520 Bugzilla   : 6993
521 Description: the default number of reserved transmit descriptors was too low
522              for some large clusters
523 Details    : As a workaround, the number was increased.  A proper fix includes
524              a run-time tunable.
525
526 2005-06-02  Cluster File Systems, Inc. <info@clusterfs.com>
527        * version 1.4.3
528        * bug fixes
529
530 Severity   : major
531 Frequency  : occasional (large-scale events, cluster reboot, network failure)
532 Bugzilla   : 6411
533 Description: too many error messages on console obscure actual problem and
534              can slow down/panic server, or cause recovery to fail repeatedly
535 Details    : enable rate-limiting of console error messages, and some messages
536              that were console errors now only go to the kernel log
537
538 Severity   : enhancement
539 Bugzilla   : 1693
540 Description: add /proc/sys/portals/catastrophe entry which will report if
541              that node has previously LBUGged
542
543 2005-04-06  Cluster File Systems, Inc. <info@clusterfs.com>
544        * bugs
545         - update gmnal to use PTL_MTU, fix module refcounting (b=5786)
546
547 2005-04-04  Cluster File Systems, Inc. <info@clusterfs.com>
548        * bugs
549         - handle error return code in kranal_check_fma_rx() (5915,6054)
550
551 2005-02-04  Cluster File Systems, Inc. <info@clusterfs.com>
552        * miscellania
553         - update vibnal (Voltaire IB NAL)
554         - update gmnal (Myrinet NAL), gmnalid
555
556 2005-02-04  Eric Barton  <eeb@bartonsoftware.com>
557
558         * Landed portals:b_port_step as follows...
559
560           - removed CFS_DECL_SPIN* 
561             just use 'spinlock_t' and initialise with spin_lock_init()
562
563           - removed CFS_DECL_MUTEX*
564             just use 'struct semaphore' and initialise with init_mutex()
565
566           - removed CFS_DECL_RWSEM*
567             just use 'struct rw_semaphore' and initialise with init_rwsem()
568
569           - renamed cfs_sleep_chan -> cfs_waitq
570                     cfs_sleep_link -> cfs_waitlink
571
572           - fixed race in linux version of arch-independent socknal
573             (the ENOMEM/EAGAIN decision).
574
575           - Didn't fix problems in Darwin version of arch-independent socknal
576             (resetting socket callbacks, eager ack hack, ENOMEM/EAGAIN decision)
577
578           - removed libcfs types from non-socknal header files (only some types
579             in the header files had been changed; the .c files hadn't been
580             updated at all).