-
Notifications
You must be signed in to change notification settings - Fork 51
/
ChangeLog.txt
308 lines (244 loc) · 7.9 KB
/
ChangeLog.txt
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
IMQ changelog:
--------------
2024-08-18
-----------
Patch for kernel 6.11
2023-05-12
-----------
Sven-Haegar Koch
Sometimes skb->dev->real_num_tx_queues can be zero, perhaps while
updating the shaping queues.
If this happens take the safe route and clear the queue mapping
instead of crashing the kernel.
Patch for kernel 6.x
2020-01-15
-----------
Removed unsed locks
changed net/core/skbuff.c to "spin_lock_irqsave(&skb_cb_store_lock, flags)"
2019-11-26
----------
Patch for kernel 5.4
2019-09-17
----------
Patch for kernel 5.3
2019-07-08
----------
Patch for kernel 5.2
2019-05-07
----------
Patch for kernel 5.1
2019-03-04
----------
Patch for kernel 5.0
2018-12-28
----------
Patch for kernel 4.20
2018-04-01
----------
Patch for kernel 4.16
2017-12-06
----------
Removed unused directories from the repo.
2017-11-20
----------
Patch for kernel 4.14
2017-09-04
----------
Patch for kernel 4.13
2017-07-04
----------
Patch for kernel 4.12
2017-05-01
----------
Patch for kernel 4.11
2017-02-28
----------
Patch for kernel 4.10
2017-01-17
----------
Patch for kernel 4.9
2016-12-04
----------
Patch for kernel 4.4.32
2016-11-17
----------
Patch for kernel 4.8.8
2016-10-03
----------
Patch for kernel 4.8
2016-07-26
----------
Patch for kernel 4.7
2016-06-12
----------
Patch for kernel 4.6
2016-03-30
----------
Patch for kernel 4.4 and 4.4.5
2015-12-26
----------
Patch for kernel 4.4
2015-09-29
----------
Patch for kernel 4.3
2015-08-12
----------
Patch for kernel 4.2
2015-06-25
----------
Feng Gao add one new parameter of IMQ module(3.18,4.0,and 4.1), imq_dev_accurate_stats (default is 1).
It is used to notify if IMQ get the accurate stats.
When imq_dev_accurate_stats is 0, it could avoid one spin to enhance the performance.
2015-06-24
----------
Feng Gao removed usless skb_cb_store_lock of 4.0 patch. It will be merged into other patches if it is ok.
Fixed malformed linux-3.2-imq.diff, linux-3.10-imq.diff, linux-3.12-imq.diff
2015-06-23
----------
Feng Gao fix one hang issue caused by IPv6 and shutdown interfaces before remove IMQ rule of IPv6
2015-06-20
----------
Feng Gao support for kernel 4.1
2015-06-19
----------
Feng Gao support for kernel 4.0 and fix the hang issue and crash issue by the performance enhancement.
2015-06-17
----------
Feng Gao support for kernel 3.18 and 3.14;
And make one enhancement for IMQ performance. It could enhance IMQ Performance about 20%.
2014-02-24
----------
patch for kernel 3.13.x
2014-01-21
----------
Please don't use patch from 3.11.x on 3.12.4+ Kernels because you will get a warning message in the logs:
skbuff: IMQ: kfree_skb: skb->nf_queue_entry != NULL
2013-10-06
----------
Jussi Kivilinna support kernel 3.11.x
2013-09-24
----------
Support Kernel 3.9.10
2013-07-20
----------
Support Kernel 3.9.1. It should work on 3.9.x also.
2012/12/23:
-----------
Support Kernel 3.7
2012/09/25:
-----------
Minor change in net/netfilter/Makefile.
Patch for 3.3.x also works for 3.4.x
2012/03/19:
-----------
Jussi Kivilinna <[email protected]>:
- Port to 3.3
2012/01/05:
-----------
Jussi Kivilinna <[email protected]>:
- Port to 3.2
2011/11/04:
-----------
Jussi Kivilinna <[email protected]>:
- Port to 3.1
- Clean-up, move 'get imq device pointer by imqX name' to
separate function from imq_nf_queue().
2011/11/03:
-----------
Germano Michel <[email protected]>:
- Fix IMQ for net namespaces
2011/08/16:
-----------
Jussi Kivilinna:
- Clear IFF_TX_SKB_SHARING flag that was added for linux 3.0.2
2011/07/26:
-----------
Jussi Kivilinna:
- Add queue mapping checks for packets exiting IMQ.
- Port to 3.0
2011/07/12:
-----------
- Crash fix that happens when the receiving interface has more
than one queue (add missing skb_set_queue_mapping in
imq_select_queue).
2011/03/18:
-----------
Jussi Kivilinna:
- Port to 2.6.38
2010/08/15:
-----------
Jussi Kivilinna:
- Port to 2.6.35
- Simplify hook registration by using nf_register_hooks.
- nf_reinject doesn't need spinlock around it, therefore remove
imq_nf_reinject function. Other nf_reinject users protect
their own data with spinlock. With IMQ however all data is
needed is stored per skbuff, so no locking is needed.
- Changed IMQ to use 'separate' NF_IMQ_QUEUE instead of
NF_QUEUE, this allows working coexistance of IMQ and other
NF_QUEUE users.
- Make IMQ multi-queue. Number of IMQ device queues can be
increased with 'numqueues' module parameters. Default number
of queues is 1, in other words by default IMQ works as
single-queue device. Multi-queue selection is based on
IFB multi-queue patch by Changli Gao <[email protected]>.
2010/02/25:
-----------
Jussi Kivilinna:
- Port to 2.6.33
2009/12/08:
-----------
Jussi Kivilinna:
- Port to 2.6.32
- Add check for skb->nf_queue_entry==NULL in imq_dev_xmit()
- Also add better error checking for skb->nf_queue_entry usage
2009/09/26:
-----------
Jussi Kivilinna:
- Add imq_nf_reinject_lockless to fix deadlock with
imq_nf_queue/imq_nf_reinject.
2009/04/20:
-----------
Jussi Kivilinna:
- Use netdevice feature flags to avoid extra packet handling
by core networking layer and possibly increase performance.
2009/04/12:
-----------
Jussi Kivilinna:
- 2.6.27 and newer overwrite control buffer.
- Add skb_save_cb/skb_restore_cb helper functions for backuping
control buffer. This is needed because qdisc-layer on kernels
- Add better locking for IMQ device. Hopefully this will solve SMP issues.
- Port to 2.6.27
- Port to 2.6.28
- Port to 2.6.29 + fix rmmod not working
2008/08/06:
-----------
2.6.26 - (JK)
- Replaced tasklet with 'netif_schedule()'.
- Cleaned up and added comments for imq_nf_queue().
2008/06/17:
-----------
2.6.25 - Changed imq.c to use qdisc_run() instead of qdisc_restart() and moved
qdisc_run() to tasklet to avoid recursive locking.
New initialization routines to fix 'rmmod' not working anymore. Used code from ifb.c. (Jussi Kivilinna)
2005/12/16:
-----------
IMQ versions between 2.6.7 and 2.6.13 were released with almost no problems.
2.6.14-x was released with some important changes: nfcache was removed.
After some weeks of trouble we figured out that some IMQ fields in skb were missing
in skbuff.c - skb_clone and copy_skb_header.
These functions are correctly patched by this new patch version.
Thanks for all who helped to figure out all the problems with
2.6.14.x:
- Patrick McHardy, Rune Kock, VeNoMouS, Max CtRiX, Kevin Shanahan, Richard Lucassen,
Valery Dachev (hopefully I didn't forget anybody). I apologize again for my lack of time.
2004/06/30:
-----------
New version of IMQ patch to kernels <=2.6.7 including the following changes:
- Correction of ipv6 support "+"s issue (Hasso Tepper)
- Correction of imq_init_devs() issue that resulted in kernel OOPS unloading IMQ as module (Norbert Buchmuller)
- Addition of functionality to choose number of IMQ devices during kernel config (Andre Correa)
- Addition of functionality to choose how IMQ hooks on PRE and POSTROUTING (after or before NAT) (Andre Correa)
- Cosmetic corrections (Norbert Buchmuller) (Andre Correa)