Whamcloud - gitweb
i=eeb:
[fs/lustre-release.git] / lnet / ChangeLog
1 2007-04-23  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
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        * bug fixes
15
16 ------------------------------------------------------------------------------
17
18 2007-04-01  Cluster File Systems, Inc. <info@clusterfs.com>
19        * version 1.4.10 / 1.6.0
20        * Support for networks:
21         socklnd   - kernels up to 2.6.16
22         qswlnd    - Qsnet kernel modules 5.20 and later
23         openiblnd - IbGold 1.8.2
24         o2iblnd   - OFED 1.1
25         viblnd    - Voltaire ibhost 3.4.5 and later
26         ciblnd    - Topspin 3.2.0
27         iiblnd    - Infiniserv 3.3 + PathBits patch
28         gmlnd     - GM 2.1.22 and later
29         mxlnd     - MX 1.2.1 or later
30         ptllnd    - Portals 3.3 / UNICOS/lc 1.5.x, 2.0.x
31        * bug fixes
32         
33 Severity   : normal
34 Frequency  : rare
35 Description: gmlnd ignored some transmit errors when finalizing lnet messages.
36
37 Severity   : minor
38 Frequency  : rare
39 Description: ptllnd logs a piece of incorrect debug info in kptllnd_peer_handle_hello.
40
41 Severity   : minor
42 Frequency  : rare
43 Description: the_lnet.ln_finalizing was not set when the current thread is
44              about to complete messages. It only affects multi-threaded 
45              user space LNet.
46         
47 Severity   : normal
48 Frequency  : rare
49 Bugzilla   : 11472
50 Description: Changed the default kqswlnd ntxmsg=512
51         
52 Severity   : major
53 Frequency  : rare
54 Bugzilla   : 12458
55 Description: Assertion failure in kernel ptllnd caused by posting passive
56              bulk buffers before connection establishment complete.
57         
58 Severity   : major
59 Frequency  : rare
60 Bugzilla   : 12455
61 Description: A race in kernel ptllnd between deleting a peer and posting
62              new communications for it could hang communications -
63              manifesting as "Unexpectedly long timeout" messages.
64         
65 Severity   : major
66 Frequency  : rare
67 Bugzilla   : 12432
68 Description: Kernel ptllnd lock ordering issue could hang a node.
69         
70 Severity   : major
71 Frequency  : rare
72 Bugzilla   : 12016
73 Description: node crash on socket teardown race
74
75 Severity   : minor
76 Frequency  : 'lctl peer_list' issued on a mx net
77 Bugzilla   : 12237
78 Description: Enable lctl's peer_list for MXLND
79
80 Severity   : major
81 Frequency  : after Ptllnd timeouts and portals congestion
82 Bugzilla   : 11659
83 Description: Credit overflows
84 Details    : This was a bug in ptllnd connection establishment.  The fix
85              implements better peer stamps to disambiguate connection
86              establishment and ensure both peers enter the credit flow
87              state machine consistently.
88
89 Severity   : major
90 Frequency  : rare       
91 Bugzilla   : 11394
92 Description: kptllnd didn't propagate some network errors up to LNET 
93 Details    : This bug was spotted while investigating 11394.  The fix
94              ensures network errors on sends and bulk transfers are
95              propagated to LNET/lustre correctly.
96
97 Severity   : enhancement
98 Bugzilla   : 10316
99 Description: Fixed console chatter in case of -ETIMEDOUT.
100
101 Severity   : enhancement
102 Bugzilla   : 11684
103 Description: Added D_NETTRACE for recording network packet history
104              (initially only for ptllnd).  Also a separate userspace
105              ptllnd facility to gather history which should really be
106              covered by D_NETTRACE too, if only CDEBUG recorded history in
107              userspace.
108
109 Severity   : major
110 Frequency  : rare       
111 Bugzilla   : 11616
112 Description: o2iblnd handle early RDMA_CM_EVENT_DISCONNECTED.
113 Details    : If the fabric is lossy, an RDMA_CM_EVENT_DISCONNECTED
114              callback can occur before a connection has actually been
115              established.  This caused an assertion failure previously.
116
117 Severity   : enhancement
118 Bugzilla   : 11094
119 Description: Multiple instances for o2iblnd
120 Details    : Allow multiple instances of o2iblnd to enable networking over
121              multiple HCAs and routing between them.
122
123 Severity   : major
124 Bugzilla   : 11201
125 Description: lnet deadlock in router_checker
126 Details    : turned ksnd_connd_lock, ksnd_reaper_lock, and ksock_net_t:ksnd_lock
127              into BH locks to eliminate potential deadlock caused by
128              ksocknal_data_ready() preempting code holding these locks.
129
130 Severity   : major
131 Bugzilla   : 11126
132 Description: Millions of failed socklnd connection attempts cause a very slow FS
133 Details    : added a new route flag ksnr_scheduled to distinguish from
134              ksnr_connecting, so that a peer connection request is only turned
135              down for race concerns when an active connection to the same peer
136              is under progress (instead of just being scheduled).
137
138 ------------------------------------------------------------------------------
139
140 2007-02-09  Cluster File Systems, Inc. <info@clusterfs.com>
141        * version 1.4.9
142        * Support for networks:
143         socklnd   - kernels up to 2.6.16
144         qswlnd    - Qsnet kernel modules 5.20 and later
145         openiblnd - IbGold 1.8.2
146         o2iblnd   - OFED 1.1
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
153        * bug fixes
154
155 Severity   : major on XT3
156 Bugzilla   : none
157 Description: libcfs overwrites /proc/sys/portals
158 Details    : libcfs created a symlink from /proc/sys/portals to
159              /proc/sys/lnet for backwards compatibility.  This is no
160              longer required and makes the Cray portals /proc variables
161              inaccessible.
162
163 Severity   : minor
164 Bugzilla   : 11312
165 Description: OFED FMR API change
166 Details    : This changes parameter usage to reflect a change in
167              ib_fmr_pool_map_phys() between OFED 1.0 and OFED 1.1.  Note
168              that FMR support is only used in experimental versions of the
169              o2iblnd - this change does not affect standard usage at all.
170
171 Severity   : enhancement
172 Bugzilla   : 11245
173 Description: new ko2iblnd module parameter: ib_mtu
174 Details    : the default IB MTU of 2048 performs badly on 23108 Tavor
175              HCAs.  You can avoid this problem by setting the MTU to 1024
176              using this module parameter.
177
178 Severity   : enhancement
179 Bugzilla   : 11118/11620
180 Description: ptllnd small request message buffer alignment fix
181 Details    : Set the PTL_MD_LOCAL_ALIGN8 option on small message receives.
182              Round up small message size on sends in case this option
183              is not supported.  11620 was a defect in the initial
184              implementation which effectively asserted all peers had to be
185              running the correct protocol version which was fixed by always
186              NAK-ing such requests and handling any misalignments they
187              introduce.
188
189 Severity   : minor
190 Frequency  : rarely
191 Description: When kib(nal|lnd)_del_peer() is called upon a peer whose
192              ibp_tx_queue is not empty, kib(nal|lnd)_destroy_peer()'s
193              'LASSERT(list_empty(&peer->ibp_tx_queue))' will fail.
194
195 Severity   : enhancement
196 Bugzilla   : 11250
197 Description: Patchless ZC(zero copy) socklnd
198 Details    : New protocol for socklnd, socklnd can support zero copy without
199              kernel patch, it's compatible with old socklnd. Checksum is 
200              moved from tunables to modparams.
201
202 Severity   : minor
203 Frequency  : rarely
204 Description: When ksocknal_del_peer() is called upon a peer whose
205              ksnp_tx_queue is not empty, ksocknal_destroy_peer()'s
206              'LASSERT(list_empty(&peer->ksnp_tx_queue))' will fail.
207
208 Severity   : normal
209 Frequency  : when ptlrpc is under heavy use and runs out of request buffer
210 Bugzilla   : 11318
211 Description: In lnet_match_blocked_msg(), md can be used without holding a
212              ref on it.
213
214 Severity   : minor
215 Frequency  : very rarely
216 Bugzilla   : 10727
217 Description: If ksocknal_lib_setup_sock() fails, a ref on peer is lost.
218              If connd connects a route which has been closed by
219              ksocknal_shutdown(), ksocknal_create_routes() may create new
220              routes which hold references on the peer, causing shutdown
221              process to wait for peer to disappear forever.
222
223 Severity   : enhancement
224 Bugzilla   : 11234
225 Description: Dump XT3 portals traces on kptllnd timeout
226 Details    : Set the kptllnd module parameter "ptltrace_on_timeout=1" to
227              dump Cray portals debug traces to a file.  The kptllnd module
228              parameter "ptltrace_basename", default "/tmp/lnet-ptltrace",
229              is the basename of the dump file.
230
231 Severity   : major
232 Frequency  : infrequent
233 Bugzilla   : 11308
234 Description: kernel ptllnd fix bug in connection re-establishment
235 Details    : Kernel ptllnd could produce protocol errors e.g. illegal
236              matchbits and/or violate the credit flow protocol when trying
237              to re-establish a connection with a peer after an error or
238              timeout. 
239
240 Severity   : enhancement
241 Bugzilla   : 10316
242 Description: Allow /proc/sys/lnet/debug to be set symbolically
243 Details    : Allow debug and subsystem debug values to be read/set by name
244              in addition to numerically, for ease of use.
245
246 Severity   : normal
247 Frequency  : only in configurations with LNET routers
248 Bugzilla   : 10316
249 Description: routes automatically marked down and recovered
250 Details    : In configurations with LNET routers if a router fails routers
251              now actively try to recover routes that are down, unless they
252              are marked down by an administrator.
253
254 ------------------------------------------------------------------------------
255
256 2006-12-09  Cluster File Systems, Inc. <info@clusterfs.com>
257
258 Severity   : critical
259 Frequency  : very rarely, in configurations with LNET routers and TCP
260 Bugzilla   : 10889
261 Description: incorrect data written to files on OSTs
262 Details    : In certain high-load conditions incorrect data may be written
263              to files on the OST when using TCP networks.
264
265 ------------------------------------------------------------------------------
266
267 2006-07-31  Cluster File Systems, Inc. <info@clusterfs.com>
268         * version 1.4.7
269         - rework CDEBUG messages rate-limiting mechanism b=10375
270         - add per-socket tunables for socklnd if the kernel is patched b=10327
271
272 ------------------------------------------------------------------------------
273
274 2006-02-15  Cluster File Systems, Inc. <info@clusterfs.com>
275         * version 1.4.6
276         - fix use of portals/lnet pid to avoid dropping RPCs b=10074
277         - iiblnd wasn't mapping all memory, resulting in comms errors b=9776
278         - quiet LNET startup LNI message for liblustre b=10128
279         - Better console error messages if 'ip2nets' can't match an IP address
280         - Fixed overflow/use-before-set bugs in linux-time.h
281         - Fixed ptllnd bug that wasn't initialising rx descriptors completely
282         - LNET teardown failed an assertion about the route table being empty
283         - Fixed a crash in LNetEQPoll(<invalid handle>)
284         - Future protocol compatibility work (b_rls146_lnetprotovrsn)
285         - improve debug message for liblustre/Catamount nodes (b=10116)
286
287 2005-10-10  Cluster File Systems, Inc. <info@clusterfs.com>
288         * Configuration change for the XT3
289              The PTLLND is now used to run Lustre over Portals on the XT3.
290              The configure option(s) --with-cray-portals are no longer
291              used.  Rather --with-portals=<path-to-portals-includes> is
292              used to enable building on the XT3.  In addition to enable
293              XT3 specific features the option --enable-cray-xt3 must be
294              used.
295
296 2005-10-10  Cluster File Systems, Inc. <info@clusterfs.com>
297         * Portals has been removed, replaced by LNET.
298            LNET is new networking infrastructure for Lustre, it includes a
299            reorganized network configuration mode (see the user
300            documentation for full details) as well as support for routing
301            between different network fabrics.  Lustre Networking Devices
302            (LNDS) for the supported network fabrics have also been created
303            for this new infrastructure.
304
305 2005-08-08  Cluster File Systems, Inc. <info@clusterfs.com>
306        * version 1.4.4
307        * bug fixes
308
309 Severity   : major
310 Frequency  : rare (large Voltaire clusters only)
311 Bugzilla   : 6993
312 Description: the default number of reserved transmit descriptors was too low
313              for some large clusters
314 Details    : As a workaround, the number was increased.  A proper fix includes
315              a run-time tunable.
316
317 2005-06-02  Cluster File Systems, Inc. <info@clusterfs.com>
318        * version 1.4.3
319        * bug fixes
320
321 Severity   : major
322 Frequency  : occasional (large-scale events, cluster reboot, network failure)
323 Bugzilla   : 6411
324 Description: too many error messages on console obscure actual problem and
325              can slow down/panic server, or cause recovery to fail repeatedly
326 Details    : enable rate-limiting of console error messages, and some messages
327              that were console errors now only go to the kernel log
328
329 Severity   : enhancement
330 Bugzilla   : 1693
331 Description: add /proc/sys/portals/catastrophe entry which will report if
332              that node has previously LBUGged
333
334 2005-04-06  Cluster File Systems, Inc. <info@clusterfs.com>
335        * bugs
336         - update gmnal to use PTL_MTU, fix module refcounting (b=5786)
337
338 2005-04-04  Cluster File Systems, Inc. <info@clusterfs.com>
339        * bugs
340         - handle error return code in kranal_check_fma_rx() (5915,6054)
341
342 2005-02-04  Cluster File Systems, Inc. <info@clusterfs.com>
343        * miscellania
344         - update vibnal (Voltaire IB NAL)
345         - update gmnal (Myrinet NAL), gmnalid
346
347 2005-02-04  Eric Barton  <eeb@bartonsoftware.com>
348
349         * Landed portals:b_port_step as follows...
350
351           - removed CFS_DECL_SPIN* 
352             just use 'spinlock_t' and initialise with spin_lock_init()
353
354           - removed CFS_DECL_MUTEX*
355             just use 'struct semaphore' and initialise with init_mutex()
356
357           - removed CFS_DECL_RWSEM*
358             just use 'struct rw_semaphore' and initialise with init_rwsem()
359
360           - renamed cfs_sleep_chan -> cfs_waitq
361                     cfs_sleep_link -> cfs_waitlink
362
363           - fixed race in linux version of arch-independent socknal
364             (the ENOMEM/EAGAIN decision).
365
366           - Didn't fix problems in Darwin version of arch-independent socknal
367             (resetting socket callbacks, eager ack hack, ENOMEM/EAGAIN decision)
368
369           - removed libcfs types from non-socknal header files (only some types
370             in the header files had been changed; the .c files hadn't been
371             updated at all).