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