-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
415 lines (382 loc) · 15 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
0.9.13
- added rt_e1000e
- added rt_fec [Wolfgang Grandegger]
- support for kernel up to 3.2 and Xenomai 2.6
- support for premapping rtskbs
(for compatibility with IOMMUs, enabled in rt_igb and rt_e1000e)
- rework of rtnetproxy
- RT-TCP fixes
- MSI-X support for rt_igb
- fixes, extended hardware support and cleanups for rt_r8169
(which is no longer considered experimental)
- added REBIND_RT_NICS feature to rtnet start script
(replaces "cards" driver parameter)
- updated RTAI examples [Paolo Mantegazza]
- copyright clarification for userspace-relevant headers
- various smaller fixes and cleanups
0.9.12
- RT-TCP support
- support for Intel 82575 (igb)
- kernel support up to 2.6.32
- fixed IRQ conflict detection and enabled RT-IRQ sharing for most drivers
- fixed aligment issues in RTcfg and various management interfaces that
specifically hit ARM platforms
- fixes that help packaging
- and more fixes all over the place
0.9.11
- kernel support up to 2.6.29
- statistics support for RT NICs
- enhancements of rtnetproxy (UDP, ARP)
- fixes and enhancements of rt_e1000
- new experimental e1000 driver (shall once replace rt_e1000)
- rtmacb driver for AT91
- hash table based UDP socket lookup
- support for select() on blocking receive
- configurable routing table sizes
- drop socket creation/destruction from RT context
- rewritten mpc52xx driver
- kernel 2.4 build fixes
0.9.10
- adopted to RTDM API revision 6
- support for kernel up to 2.6.24
- added rt_at91_ether [Yeoh Chun Yeow]
- added SIOCGIFADDR support
- udev support
- workaround for rt_e1000 start-up laziness
- updated rt_8139too PCI IDs
- fixed Linux netdev creation on latest kernels for RTmac VNICs and RTcap tap
devices
- fixed memory corruption in ICMP code [spotted by Gilles Chanteperdrix]
- minor build system fixes
0.9.9
- enabled IRQ sharing for rt_8139too and rt_e1000
- added x86_64 support (via Xenomai)
- enabled 2.6.20 build
- added loopback testing mode to rtnet script
- fixed cleanup bug in tdma
- fixed cleanup race in rt_8139too
0.9.8
- rt_8139too gained SIOCETHTOOL/ETHTOOL_GLINK support (link status query),
other drivers can follow now [Jorge]
- SIOCGIFHWADDR support for RTnet devices (get hardware address)
[Paolo Stein]
- fixed missing TOS initialisation for UDP [spotted by Mathias Koehrer]
- micro-optimised rtskb_acquire()
- fixed build error of e1000 over latest I-pipe patch
- fixed remaining build warnings over 2.6.19
- fixed clean and uninstallation rules
0.9.7
- fixed 0.9.6 regression in packet socket RX path
- fixed restart of recvmsg syscall after signal interruption
- build fixes for upcoming 2.6.19
- fixed rt_eepro100 for PCI bridge scenarios [Mathias]
- speed up locking in TX path of rt_eepro100
- reorganised locking in TDMA discipline to avoid cleanup races on SMP
- hide xxx_rt legacy API (=> use rt_dev_xxx)
0.9.6
- added missing timestamping support to rt_e1000
- added support for SOCK_RAW packet sockets [Jorge]
- added optional ETH_P_ALL support, so far based on copying rtskbs [Jorge]
- refactoring and minor fixes of SOCK_DGRAM packet sockets
- added missing file for Xenomai over kernel 2.4 build
- fixed broken locking in stack manager (corner-case bug since 0.9.4)
- added examples for ETH_P_ALL and SOCK_RAW (Xenomai POSIX)
- fixed Linux skb leak in rtcap when pseudo interface was down
0.9.5
- added e1000 (Intel PRO/1000) Gigabit Ethernet driver
- refactored, enhanced, and fixed RTMAC_RTIOC_WAITONCYCLE* API
- added tdma-api example
- fixed DMA mapping bug in rt_natsemi
- cleaned up tulip driver
- refactored internal time types to use RTDM's nanosecs_*_t or u64
- refactored IRQ request + enabling in drivers to prepare for upcoming RTDM
changes
- fixed potential startup issues of TDMA cycles < 1 ms
- fixed "make xconfig"
- further minor fixes
0.9.4
- fixed critical race in lock-less rx queue introduced with 0.9.3 [Mathias]
- RT-WLAN related fixes and updates [Daniel]
- pass media type to rt_8139too as module parameter [Fabian]
- allow multiple AF_PACKET sockets to listen on different devices for the
same protocol
- added support for SIOCGIFINDEX
- various fixes, enhancements, and cleanups of the examples
- added proper examples installation
- VNIC numbering now derived from RT-NIC index, not from its name
- exported NCIS->RT-device mapping via /proc/rtnet/rtmac/vnics
- fixed CONFIG_PROC_FS=n build
- fixed NIC dereferencing on packet drops due to overload
- made new MAC setting feature via rtifconfig work
- catch and deny NIC reconfiguration when it's running
- fixed 2.4 build over RTAI-3.3-cv
- fixed endless loop in rtping
- fixed verbose mode of rtnet script
0.9.3
- experimental RT-WLAN support with Ralink 2500 as first driver
- support for kernel 2.6.17
- re-added support for source-based IP routing
- lock-less stack manager rx queue
- added round-trip-time example (using pure POSIX)
- various minor updates and fixes
0.9.2
- added support for RTDM API revision 4
- finalised Xenomai 2.1 support
- finalised RTAI 3.3 support (but 3.3+CVS recommended due to RTDM bug)
- support for kernel up to 2.6.16
- rtroute support for reading host routes from file
- RTMAC_RTIOC_WAITONCYCLE_EX: support for reporting cycle number
- removed debug messages from init and error paths of rt_8139too
- updated rt_8139too according to Linux driver
- reduce verbosity of rt_eepro100 in non-debugging mode
- added verbosity switch to rtnet script
- fixed TDMA discipline detach
- several build system fixes, including MPC issues
- support for parallel build (make -j)
0.9.1
- support for upcoming Xenomai 2.1
- flattened directory structure and sped-up 2.6 building
- fixed kernel 2.6.14 related compilation issues
- re-enabled kernel 2.4 support
- joint slot support for tdma.conf
- fixed raw-packet example
- fixed kernel task cleanup issues of some core modules
- re-enable IRQ line on rt_tulip down
- fixed cleanup bug in rtping kernel code
0.9.0
- ported over new, generic RTDM layer
- added interactive configuration ("make menuconfig") with additional
fine-tuning switches
- integrated Ethernet-over-1394 support
- added Gigabit Ethernet driver for Realtek 8169
- added support for joint TDMA slots
- modularised RT-IPv4 and packet socket support
- revised examples (some still broken)
- removed old TDMA-V1 support
- removed RTNET_RTIOC_NONBLOCK in favour of negative value for
RTNET_RTIOC_TIMEOUT
- added support for overriding NIC hardware address
- added tunable stack manager priority
- linked module symbols of Xenomai and RT-FireWire into build process
- fixed various bugs
* TDMA discipline cleanup
* locking in rt_udp_sendmsg (only relevant for SMP)
* rtdev cleanup
* gcc4 warnings
0.8.3
- added support for fusion 0.8.0..0.8.3
- added experimental MPC 52xxx FEC driver
- enabled kernel 2.6.12 compilation
- revised locking in critical sections of rt_8139too and rt_via-rhine
- implemented hash chains for layer 2 protocol management
(avoids protocol handler rejection on hashkey collision)
- extended RTmac to let discipline switch off VNIC support or override xmit
handler
- fixed handling of zero-sized stage 2 files in RTcfg
- fixed cleanup bug in RTcfg
- fixed rtnet.conf to let rt-driver grab only one NIC by default (again)
0.8.2
- support for fusion 0.7.2..0.7.4 (dropped earlier versions)
- added userspace support to RTDM layer for fusion
- added two fusion userspace examples
- added detach functionality to rtcfg
- experimental build for ARM platform
- fixed cleanup bugs of udp sockets
- fixed MPC drivers
- RTAI 3.2 support, fixed issues with 3.0..r2
- fixed bugs in rtnet script
- improved RT-NIC assignment via "cards" module parameter
- fixed compilation on 2.6.11 kernels
- fixed DESTDIR detection in configure
- API cleanup with respect to packet transmission priorities and channels
(i.e. explicit TDMA slot selection)
- various tiny fixes
0.8.1
- added slot size enforcement to TDMA
- fusion 0.6.9 support
- revised stack core for channel-based overloadable MTUs
- catch CONFIG_REGPARM in kernel configuration
- revised irq abstraction for clean fusion support
- minor updates of RTDM driver definitions
- fixed natsemi cleanup
- further minor corrections
0.8.0
- TDMA-V2 implementation
* multiple slots
* packet delay compensation
* slave hot plugging
* backup masters
- new NIC device driver layer
* atomic transmission time stamp
* improved locking scheme
* layer version tag
- kernel 2.6 support
- RTAI/fusion support (0.6.6 or better)
- source tree reorganisation
- added NoMAC module as skeleton for new disciplines
- revised and extended rtnet start script
- worst-case statistics for rtping
- read stage 1 data for "rtcfg add" from stdin
- fixed cleanup bug in RTmac's VNIC handling
- bug fixes in RTcfg, /proc output, legacy tdma-v1, and some other parts
0.7.1
- extended RTcfg
* heartbeat support for clients
* client failure detection and notification
* server restart after failures
* IP assignment to clients based on HW addresses
* verbose /proc interface
- clean up loopback route when non-loopback interface goes down or changes ip
0.7.0
- ported user API to RTDM (real-time driver model)
- revised TDMA API based on RTDM
- revised routing system
* hash-table-based lookups
* removed redundant ARP table
* added network routing and forwarding support
* loopback routes for non-loopback device IPs
* lock protection
- added rtroute
- revised rtifconfig
- added rtping core support and user tool
- reordered and extended /proc interface
- improved non-real-time locking (devices and various lists)
- lock protection of variable socket parameters
- added netshm example
- reorganised and cleaned up examples directory
- fixed UDP port demultiplexing bug
- fixed return value of non-blocking receive on empty queue
- fixed queue clean-up bug in packet sockets
- fixed bug in RTcfg frames on big endian platforms (PPC)
0.6.2
- removed runtime garbage collection of fragmented IP packets
- added "cards" parameter to tulip-rt
- revised automatic UDP port number assigment
- added ip address evaluation to UDP port lookup
- added SMC91111 driver
- fixed routing bug in IP input path
- fixed bug in timeout handling of recvmsg functions
- fixed application unload problems when running RTcap
- fixed init bug in rtnetproxy
- avoid stack manager for loopback packets
- fixed compilation problem with RTAI-24 and ADEOS
- fixed some smaller issues in the build system
0.6.1
- improved RTcfg
* added stage 1/2 file support
* added ready mechanism
* native send/receive using rtskbs
* fixed several bugs
- revised rtnet start script with full RTmac/TDMA and RTcfg support
- added real-time capturing support RTcap
- device promisc flag settable on rtifconfig up
- improved TDMA
* set slot offset with rtifconfig mac add
* transmit slot offset before first SOF
* queue outgoing packets before first SOF (instead of dropping them)
* bug fix: send further offset commands synchronously
- fixed some bugs in the build system
- bug fix: solved re-enable irq issue on PPC (new abstraction rtos_irq_end)
- bug fix: UDP receive didn't work with MSG_PEEK flag
- bug fix: packet sockets didn't set transmission priority
- further minor bug fixes
0.6.0
- improved build system
* RTAI 3.0 support
* make install covers modules, tools, and API headers
- Added support for NatSemi DP8381x NICs
- separated TDMA discipline module
- upgraded RTcfg setup to new rtcfg tool
- improved rtifconfig
- added generic getsockname implementation
- introduced abstraction layer for the Linux RT extension
- new internal services
* extensible IOCTL interface through a single misc device
* unified sychronous real-time procedure calls from Linux context
- fixed route solicit IOCTL
- as usual: fixed some minor bugs
0.5.6
- Added first version of RTcfg
- improved loopback-rt throughput
- fixed cleanup of LXRT examples
- fixed several tiny bugs
0.5.5
- Revised IP fragmentation/defragmentation engine
- Added packet sockets (incl. example)
- Memory allocation for rtskbs based on a Linux slab cache (again...)
- Introduced rt_socket_ioctl
* lists IPs of available interfaces
* reports the interface flags
- Updated PPC drivers
- Added support for VIA Rhine NICs
- Fixed LXRT interface and examples
- Fixed cross-compilation issues
- Improved socket file descriptor lookup
- Discontinued static socket interfaces
- Revised device driver layer (index-based management)
- Fixed race conditions on socket close
- Added/updated the documentation
- Added/updated examples
0.5.0
- Introduced Virtual NIC support for RTmac (allows e.g. TCP/IP tunnelling
without any influence on real-time traffic)
- New config and make system (stand-alone compilation outside the RTAI tree
possible)
- Improved buffer pool management (avoids memory shortages if, e.g., an
application fails to retrieve all its incoming data on time)
- Prioritised send queues in RTmac (31 real-time priorities, 1 for non
real-time packets)
- Bindless send (sending packets without the need to bind to a specific
interface)
- Receive calls are now blocking by default (non-blocking selectable with
sockopts)
- Added support for AMD PCnet32/PCnetPCI network adapters
- Added early version of a driver porting guide
- As usual: various minor bug fixes
0.2.10
- New device naming sheme, internal modification of the driver layer (fixes bug
680211)
- Fixed loopback-rt
- New RTmac frame format
- Internal improvements of RTmac
- Added UDP fragmentation, see included README.ipfragmentation - Mathias
Koehrer
- New header file ordering, see include/INCLUDE.policy
- Various minor bug fixes...
0.2.9
- Fixed many memory leak bugs - Hans-Peter Bock
- OpenOffice document 'structure of RTnet 0.2.8' - Hans-Peter Bock
- Fixed negative module reference count bug in RTmac - Wittawat Yamwong
- RTmac deletes the master and client task correcly now - Wittawat Yamwong
0.2.8
- enhanched round_trip_time example - Hans-Peter Bock
* configurable send intervall
* configurable packetsize
* accounting of sent and received packets
* exact roundtrip time in us
* showtime displays minimum/maximum roundtrip time
- Added rt_ip_setsockopt() for IP_TOS
- Added experimental tulip driver - Wittawat Yamwong
- Added rtnetproxy - Mathias Koehrer
0.2.7
- added new example (rtt), another round trip time example, without
the bug of the old one, causing equal time.
- added support for 'Latency Measurement Gadget' in rtt example
- added sending broadcasts funtionality
0.2.6:
- added ICMP protocoll (now your rtai-box replies to pings)
- fixed bug in rt_ip_route_output (outgoing packets to unknown hosts)
- beautified ARP: answering an ARP request now makes a local ARP entry
- improved performance of 3c59x-rt by removing forgotten debug outputs
- improved performance of udp layer by removing forgotten debug outputs
- added start/stop script (tools/rtnet)
0.2.5:
- added real-time driver 3c59x-rt (3Com EtherLink PCI III/XL)
- fixed synchronization in socket.c und ipv4/udp.c (it is now save to
create rt-sockets both in RTAI task and Linux context)
- fixed cleanup-bug in routing tables
0.2.4:
- added "cards" parameter to drivers to limit the number of supported
identical NICs (allows both RT and non-RT driver of equal type to be
loaded at the same time)
- renaming: eepro100_rt -> eepro100-rt