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