]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/2.6.24.1/mbox
Fixes for 5.10
[thirdparty/kernel/stable-queue.git] / releases / 2.6.24.1 / mbox
1 From gregkh@mini.kroah.org Thu Feb 7 12:43:09 2008
2 Message-Id: <20080207204309.758113955@mini.kroah.org>
3 References: <20080207204118.202098927@mini.kroah.org>
4 User-Agent: quilt/0.46-1
5 Date: Thu, 07 Feb 2008 12:41:19 -0800
6 From: Greg KH <gregkh@suse.de>
7 To: linux-kernel@vger.kernel.org,
8 stable@kernel.org
9 Cc: Justin Forbes <jmforbes@linuxtx.org>,
10 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
11 Theodore Ts'o <tytso@mit.edu>,
12 Randy Dunlap <rdunlap@xenotime.net>,
13 Dave Jones <davej@redhat.com>,
14 Chuck Wolber <chuckw@quantumlinux.com>,
15 Chris Wedgwood <reviews@ml.cw.f00f.org>,
16 Michael Krufky <mkrufky@linuxtv.org>,
17 Chuck Ebbert <cebbert@redhat.com>,
18 Domenico Andreoli <cavokz@gmail.com>,
19 torvalds@linux-foundation.org,
20 akpm@linux-foundation.org,
21 alan@lxorguk.ukuu.org.uk,
22 mkrufky@hauppauge.com,
23 Mauro Carvalho Chehab <mchehab@infradead.org>,
24 Chris Wright <chrisw@sous-sol.org>
25 Subject: [patch 01/45] DVB: cx23885: add missing subsystem ID for Hauppauge HVR1800 Retail
26 Content-Disposition: inline; filename=dvb-cx23885-add-missing-subsystem-id-for-hauppauge-hvr1800-retail.patch
27 Content-Length: 1521
28 Lines: 38
29
30 2.6.24-stable review patch. If anyone has any objections, please let us know.
31
32 ------------------
33 From: Michael Krufky <mkrufky@linuxtv.org>
34
35 [PATCH] DVB: cx23885: add missing subsystem ID for Hauppauge HVR1800 Retail
36
37 Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
38 Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
39 Signed-off-by: Chris Wright <chrisw@sous-sol.org>
40 ---
41
42 ---
43 Documentation/video4linux/CARDLIST.cx23885 | 2 +-
44 drivers/media/video/cx23885/cx23885-cards.c | 4 ++++
45 2 files changed, 5 insertions(+), 1 deletion(-)
46
47 --- linux-2.6.24.1.orig/Documentation/video4linux/CARDLIST.cx23885
48 +++ linux-2.6.24.1/Documentation/video4linux/CARDLIST.cx23885
49 @@ -1,5 +1,5 @@
50 0 -> UNKNOWN/GENERIC [0070:3400]
51 1 -> Hauppauge WinTV-HVR1800lp [0070:7600]
52 - 2 -> Hauppauge WinTV-HVR1800 [0070:7800,0070:7801]
53 + 2 -> Hauppauge WinTV-HVR1800 [0070:7800,0070:7801,0070:7809]
54 3 -> Hauppauge WinTV-HVR1250 [0070:7911]
55 4 -> DViCO FusionHDTV5 Express [18ac:d500]
56 --- linux-2.6.24.1.orig/drivers/media/video/cx23885/cx23885-cards.c
57 +++ linux-2.6.24.1/drivers/media/video/cx23885/cx23885-cards.c
58 @@ -138,6 +138,10 @@ struct cx23885_subid cx23885_subids[] =
59 .card = CX23885_BOARD_HAUPPAUGE_HVR1800,
60 },{
61 .subvendor = 0x0070,
62 + .subdevice = 0x7809,
63 + .card = CX23885_BOARD_HAUPPAUGE_HVR1800,
64 + },{
65 + .subvendor = 0x0070,
66 .subdevice = 0x7911,
67 .card = CX23885_BOARD_HAUPPAUGE_HVR1250,
68 },{
69
70 --
71
72 From gregkh@mini.kroah.org Thu Feb 7 12:43:10 2008
73 Message-Id: <20080207204309.983568365@mini.kroah.org>
74 References: <20080207204118.202098927@mini.kroah.org>
75 User-Agent: quilt/0.46-1
76 Date: Thu, 07 Feb 2008 12:41:20 -0800
77 From: Greg KH <gregkh@suse.de>
78 To: linux-kernel@vger.kernel.org,
79 stable@kernel.org
80 Cc: Justin Forbes <jmforbes@linuxtx.org>,
81 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
82 Theodore Ts'o <tytso@mit.edu>,
83 Randy Dunlap <rdunlap@xenotime.net>,
84 Dave Jones <davej@redhat.com>,
85 Chuck Wolber <chuckw@quantumlinux.com>,
86 Chris Wedgwood <reviews@ml.cw.f00f.org>,
87 Michael Krufky <mkrufky@linuxtv.org>,
88 Chuck Ebbert <cebbert@redhat.com>,
89 Domenico Andreoli <cavokz@gmail.com>,
90 torvalds@linux-foundation.org,
91 akpm@linux-foundation.org,
92 alan@lxorguk.ukuu.org.uk,
93 mel@csn.ul.ie,
94 olaf@aepfle.de,
95 clameter@sgi.com,
96 Pekka Enberg <penberg@cs.helsinki.fi>,
97 Chris Wright <chrisw@sous-sol.org>
98 Subject: [patch 02/45] slab: fix bootstrap on memoryless node
99 Content-Disposition: inline; filename=slab-fix-bootstrap-on-memoryless-node.patch
100 Content-Length: 3881
101 Lines: 121
102
103 2.6.24-stable review patch. If anyone has any objections, please let us know.
104
105 ------------------
106 From: Pekka J Enberg <penberg@cs.helsinki.fi>
107
108 [ Upstream commit: 556a169dab38b5100df6f4a45b655dddd3db94c1 ]
109
110 If the node we're booting on doesn't have memory, bootstrapping kmalloc()
111 caches resorts to fallback_alloc() which requires ->nodelists set for all
112 nodes. Fix that by calling set_up_list3s() for CACHE_CACHE in
113 kmem_cache_init().
114
115 As kmem_getpages() is called with GFP_THISNODE set, this used to work before
116 because of breakage in 2.6.22 and before with GFP_THISNODE returning pages from
117 the wrong node if a node had no memory. So it may have worked accidentally and
118 in an unsafe manner because the pages would have been associated with the wrong
119 node which could trigger bug ons and locking troubles.
120
121 Tested-by: Mel Gorman <mel@csn.ul.ie>
122 Tested-by: Olaf Hering <olaf@aepfle.de>
123 Reviewed-by: Christoph Lameter <clameter@sgi.com>
124 [ With additional one-liner by Olaf Hering - Linus ]
125 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
126 Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
127 Signed-off-by: Chris Wright <chrisw@sous-sol.org>
128 ---
129 mm/slab.c | 46 +++++++++++++++++++++++-----------------------
130 1 file changed, 23 insertions(+), 23 deletions(-)
131
132 --- linux-2.6.24.1.orig/mm/slab.c
133 +++ linux-2.6.24.1/mm/slab.c
134 @@ -304,11 +304,11 @@ struct kmem_list3 {
135 /*
136 * Need this for bootstrapping a per node allocator.
137 */
138 -#define NUM_INIT_LISTS (2 * MAX_NUMNODES + 1)
139 +#define NUM_INIT_LISTS (3 * MAX_NUMNODES)
140 struct kmem_list3 __initdata initkmem_list3[NUM_INIT_LISTS];
141 #define CACHE_CACHE 0
142 -#define SIZE_AC 1
143 -#define SIZE_L3 (1 + MAX_NUMNODES)
144 +#define SIZE_AC MAX_NUMNODES
145 +#define SIZE_L3 (2 * MAX_NUMNODES)
146
147 static int drain_freelist(struct kmem_cache *cache,
148 struct kmem_list3 *l3, int tofree);
149 @@ -1410,6 +1410,22 @@ static void init_list(struct kmem_cache
150 }
151
152 /*
153 + * For setting up all the kmem_list3s for cache whose buffer_size is same as
154 + * size of kmem_list3.
155 + */
156 +static void __init set_up_list3s(struct kmem_cache *cachep, int index)
157 +{
158 + int node;
159 +
160 + for_each_online_node(node) {
161 + cachep->nodelists[node] = &initkmem_list3[index + node];
162 + cachep->nodelists[node]->next_reap = jiffies +
163 + REAPTIMEOUT_LIST3 +
164 + ((unsigned long)cachep) % REAPTIMEOUT_LIST3;
165 + }
166 +}
167 +
168 +/*
169 * Initialisation. Called after the page allocator have been initialised and
170 * before smp_init().
171 */
172 @@ -1432,6 +1448,7 @@ void __init kmem_cache_init(void)
173 if (i < MAX_NUMNODES)
174 cache_cache.nodelists[i] = NULL;
175 }
176 + set_up_list3s(&cache_cache, CACHE_CACHE);
177
178 /*
179 * Fragmentation resistance on low memory - only use bigger
180 @@ -1587,10 +1604,9 @@ void __init kmem_cache_init(void)
181 {
182 int nid;
183
184 - /* Replace the static kmem_list3 structures for the boot cpu */
185 - init_list(&cache_cache, &initkmem_list3[CACHE_CACHE], node);
186 -
187 for_each_online_node(nid) {
188 + init_list(&cache_cache, &initkmem_list3[CACHE_CACHE], nid);
189 +
190 init_list(malloc_sizes[INDEX_AC].cs_cachep,
191 &initkmem_list3[SIZE_AC + nid], nid);
192
193 @@ -1960,22 +1976,6 @@ static void slab_destroy(struct kmem_cac
194 }
195 }
196
197 -/*
198 - * For setting up all the kmem_list3s for cache whose buffer_size is same as
199 - * size of kmem_list3.
200 - */
201 -static void __init set_up_list3s(struct kmem_cache *cachep, int index)
202 -{
203 - int node;
204 -
205 - for_each_online_node(node) {
206 - cachep->nodelists[node] = &initkmem_list3[index + node];
207 - cachep->nodelists[node]->next_reap = jiffies +
208 - REAPTIMEOUT_LIST3 +
209 - ((unsigned long)cachep) % REAPTIMEOUT_LIST3;
210 - }
211 -}
212 -
213 static void __kmem_cache_destroy(struct kmem_cache *cachep)
214 {
215 int i;
216 @@ -2099,7 +2099,7 @@ static int __init_refok setup_cpu_cache(
217 g_cpucache_up = PARTIAL_L3;
218 } else {
219 int node;
220 - for_each_node_state(node, N_NORMAL_MEMORY) {
221 + for_each_online_node(node) {
222 cachep->nodelists[node] =
223 kmalloc_node(sizeof(struct kmem_list3),
224 GFP_KERNEL, node);
225
226 --
227
228 From gregkh@mini.kroah.org Thu Feb 7 12:43:10 2008
229 Message-Id: <20080207204310.214380624@mini.kroah.org>
230 References: <20080207204118.202098927@mini.kroah.org>
231 User-Agent: quilt/0.46-1
232 Date: Thu, 07 Feb 2008 12:41:21 -0800
233 From: Greg KH <gregkh@suse.de>
234 To: linux-kernel@vger.kernel.org,
235 stable@kernel.org
236 Cc: Justin Forbes <jmforbes@linuxtx.org>,
237 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
238 Theodore Ts'o <tytso@mit.edu>,
239 Randy Dunlap <rdunlap@xenotime.net>,
240 Dave Jones <davej@redhat.com>,
241 Chuck Wolber <chuckw@quantumlinux.com>,
242 Chris Wedgwood <reviews@ml.cw.f00f.org>,
243 Michael Krufky <mkrufky@linuxtv.org>,
244 Chuck Ebbert <cebbert@redhat.com>,
245 Domenico Andreoli <cavokz@gmail.com>,
246 torvalds@linux-foundation.org,
247 akpm@linux-foundation.org,
248 alan@lxorguk.ukuu.org.uk,
249 Nick Piggin <npiggin@suse.de>
250 Subject: [patch 03/45] vm audit: add VM_DONTEXPAND to mmap for drivers that need it (CVE-2008-0007)
251 Content-Disposition: inline; filename=vm-audit-add-vm_dontexpand-to-mmap-for-drivers-that-need-it.patch
252 Content-Length: 4618
253 Lines: 141
254
255 2.6.24-stable review patch. If anyone has any objections, please let us know.
256
257 ------------------
258 From: Nick Piggin <npiggin@suse.de>
259
260 Drivers that register a ->fault handler, but do not range-check the
261 offset argument, must set VM_DONTEXPAND in the vm_flags in order to
262 prevent an expanding mremap from overflowing the resource.
263
264 I've audited the tree and attempted to fix these problems (usually by
265 adding VM_DONTEXPAND where it is not obvious).
266
267 Signed-off-by: Nick Piggin <npiggin@suse.de>
268 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
269 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
270
271 ---
272 drivers/char/drm/drm_vm.c | 2 ++
273 drivers/char/mspec.c | 2 +-
274 fs/ncpfs/mmap.c | 4 ----
275 kernel/relay.c | 1 +
276 mm/mmap.c | 2 +-
277 sound/oss/via82cxxx_audio.c | 14 ++++++--------
278 sound/usb/usx2y/usX2Yhwdep.c | 2 +-
279 sound/usb/usx2y/usx2yhwdeppcm.c | 2 +-
280 8 files changed, 13 insertions(+), 16 deletions(-)
281
282 --- a/drivers/char/drm/drm_vm.c
283 +++ b/drivers/char/drm/drm_vm.c
284 @@ -506,6 +506,7 @@ static int drm_mmap_dma(struct file *fil
285 vma->vm_ops = &drm_vm_dma_ops;
286
287 vma->vm_flags |= VM_RESERVED; /* Don't swap */
288 + vma->vm_flags |= VM_DONTEXPAND;
289
290 vma->vm_file = filp; /* Needed for drm_vm_open() */
291 drm_vm_open_locked(vma);
292 @@ -655,6 +656,7 @@ static int drm_mmap_locked(struct file *
293 return -EINVAL; /* This should never happen. */
294 }
295 vma->vm_flags |= VM_RESERVED; /* Don't swap */
296 + vma->vm_flags |= VM_DONTEXPAND;
297
298 vma->vm_file = filp; /* Needed for drm_vm_open() */
299 drm_vm_open_locked(vma);
300 --- a/drivers/char/mspec.c
301 +++ b/drivers/char/mspec.c
302 @@ -283,7 +283,7 @@ mspec_mmap(struct file *file, struct vm_
303 vdata->refcnt = ATOMIC_INIT(1);
304 vma->vm_private_data = vdata;
305
306 - vma->vm_flags |= (VM_IO | VM_RESERVED | VM_PFNMAP);
307 + vma->vm_flags |= (VM_IO | VM_RESERVED | VM_PFNMAP | VM_DONTEXPAND);
308 if (vdata->type == MSPEC_FETCHOP || vdata->type == MSPEC_UNCACHED)
309 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
310 vma->vm_ops = &mspec_vm_ops;
311 --- a/fs/ncpfs/mmap.c
312 +++ b/fs/ncpfs/mmap.c
313 @@ -50,10 +50,6 @@ static int ncp_file_mmap_fault(struct vm
314 pos = vmf->pgoff << PAGE_SHIFT;
315
316 count = PAGE_SIZE;
317 - if ((unsigned long)vmf->virtual_address + PAGE_SIZE > area->vm_end) {
318 - WARN_ON(1); /* shouldn't happen? */
319 - count = area->vm_end - (unsigned long)vmf->virtual_address;
320 - }
321 /* what we can read in one go */
322 bufsize = NCP_SERVER(inode)->buffer_size;
323
324 --- a/kernel/relay.c
325 +++ b/kernel/relay.c
326 @@ -92,6 +92,7 @@ static int relay_mmap_buf(struct rchan_b
327 return -EINVAL;
328
329 vma->vm_ops = &relay_file_mmap_ops;
330 + vma->vm_flags |= VM_DONTEXPAND;
331 vma->vm_private_data = buf;
332 buf->chan->cb->buf_mapped(buf, filp);
333
334 --- a/mm/mmap.c
335 +++ b/mm/mmap.c
336 @@ -2215,7 +2215,7 @@ int install_special_mapping(struct mm_st
337 vma->vm_start = addr;
338 vma->vm_end = addr + len;
339
340 - vma->vm_flags = vm_flags | mm->def_flags;
341 + vma->vm_flags = vm_flags | mm->def_flags | VM_DONTEXPAND;
342 vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);
343
344 vma->vm_ops = &special_mapping_vmops;
345 --- a/sound/oss/via82cxxx_audio.c
346 +++ b/sound/oss/via82cxxx_audio.c
347 @@ -2104,6 +2104,7 @@ static struct page * via_mm_nopage (stru
348 {
349 struct via_info *card = vma->vm_private_data;
350 struct via_channel *chan = &card->ch_out;
351 + unsigned long max_bufs;
352 struct page *dmapage;
353 unsigned long pgoff;
354 int rd, wr;
355 @@ -2127,14 +2128,11 @@ static struct page * via_mm_nopage (stru
356 rd = card->ch_in.is_mapped;
357 wr = card->ch_out.is_mapped;
358
359 -#ifndef VIA_NDEBUG
360 - {
361 - unsigned long max_bufs = chan->frag_number;
362 - if (rd && wr) max_bufs *= 2;
363 - /* via_dsp_mmap() should ensure this */
364 - assert (pgoff < max_bufs);
365 - }
366 -#endif
367 + max_bufs = chan->frag_number;
368 + if (rd && wr)
369 + max_bufs *= 2;
370 + if (pgoff >= max_bufs)
371 + return NOPAGE_SIGBUS;
372
373 /* if full-duplex (read+write) and we have two sets of bufs,
374 * then the playback buffers come first, sez soundcard.c */
375 --- a/sound/usb/usx2y/usX2Yhwdep.c
376 +++ b/sound/usb/usx2y/usX2Yhwdep.c
377 @@ -88,7 +88,7 @@ static int snd_us428ctls_mmap(struct snd
378 us428->us428ctls_sharedmem->CtlSnapShotLast = -2;
379 }
380 area->vm_ops = &us428ctls_vm_ops;
381 - area->vm_flags |= VM_RESERVED;
382 + area->vm_flags |= VM_RESERVED | VM_DONTEXPAND;
383 area->vm_private_data = hw->private_data;
384 return 0;
385 }
386 --- a/sound/usb/usx2y/usx2yhwdeppcm.c
387 +++ b/sound/usb/usx2y/usx2yhwdeppcm.c
388 @@ -728,7 +728,7 @@ static int snd_usX2Y_hwdep_pcm_mmap(stru
389 return -ENODEV;
390 }
391 area->vm_ops = &snd_usX2Y_hwdep_pcm_vm_ops;
392 - area->vm_flags |= VM_RESERVED;
393 + area->vm_flags |= VM_RESERVED | VM_DONTEXPAND;
394 area->vm_private_data = hw->private_data;
395 return 0;
396 }
397
398 --
399
400 From gregkh@mini.kroah.org Thu Feb 7 12:43:10 2008
401 Message-Id: <20080207204310.441404364@mini.kroah.org>
402 References: <20080207204118.202098927@mini.kroah.org>
403 User-Agent: quilt/0.46-1
404 Date: Thu, 07 Feb 2008 12:41:22 -0800
405 From: Greg KH <gregkh@suse.de>
406 To: linux-kernel@vger.kernel.org,
407 stable@kernel.org,
408 linux-usb@vger.kernel.org
409 Cc: Justin Forbes <jmforbes@linuxtx.org>,
410 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
411 Theodore Ts'o <tytso@mit.edu>,
412 Randy Dunlap <rdunlap@xenotime.net>,
413 Dave Jones <davej@redhat.com>,
414 Chuck Wolber <chuckw@quantumlinux.com>,
415 Chris Wedgwood <reviews@ml.cw.f00f.org>,
416 Michael Krufky <mkrufky@linuxtv.org>,
417 Chuck Ebbert <cebbert@redhat.com>,
418 Domenico Andreoli <cavokz@gmail.com>,
419 torvalds@linux-foundation.org,
420 akpm@linux-foundation.org,
421 alan@lxorguk.ukuu.org.uk,
422 Alan Cox <alan@redhat.com>
423 Subject: [patch 04/45] USB: keyspan: Fix oops
424 Content-Disposition: inline; filename=usb-keyspan-fix-oops.patch
425 Content-Length: 801
426 Lines: 27
427
428
429 2.6.24-stable review patch. If anyone has any objections, please let us know.
430
431 ------------------
432 From: Alan Cox <alan@lxorguk.ukuu.org.uk>
433
434 If we get a data URB back from the hardware after we have put the tty to
435 bed we go kaboom. Fortunately all we need to do is process the URB
436 without trying to ram its contents down the throat of an ex-tty.
437
438 Signed-off-by: Alan Cox <alan@redhat.com>
439 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
440
441 ---
442 drivers/usb/serial/keyspan.c | 2 +-
443 1 file changed, 1 insertion(+), 1 deletion(-)
444
445 --- a/drivers/usb/serial/keyspan.c
446 +++ b/drivers/usb/serial/keyspan.c
447 @@ -838,7 +838,7 @@ static void usa49_indat_callback(struct
448
449 port = (struct usb_serial_port *) urb->context;
450 tty = port->tty;
451 - if (urb->actual_length) {
452 + if (tty && urb->actual_length) {
453 /* 0x80 bit is error flag */
454 if ((data[0] & 0x80) == 0) {
455 /* no error on any byte */
456
457 --
458
459 From gregkh@mini.kroah.org Thu Feb 7 12:43:10 2008
460 Message-Id: <20080207204310.667216663@mini.kroah.org>
461 References: <20080207204118.202098927@mini.kroah.org>
462 User-Agent: quilt/0.46-1
463 Date: Thu, 07 Feb 2008 12:41:23 -0800
464 From: Greg KH <gregkh@suse.de>
465 To: linux-kernel@vger.kernel.org,
466 stable@kernel.org,
467 linux-usb@vger.kernel.org
468 Cc: Justin Forbes <jmforbes@linuxtx.org>,
469 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
470 Theodore Ts'o <tytso@mit.edu>,
471 Randy Dunlap <rdunlap@xenotime.net>,
472 Dave Jones <davej@redhat.com>,
473 Chuck Wolber <chuckw@quantumlinux.com>,
474 Chris Wedgwood <reviews@ml.cw.f00f.org>,
475 Michael Krufky <mkrufky@linuxtv.org>,
476 Chuck Ebbert <cebbert@redhat.com>,
477 Domenico Andreoli <cavokz@gmail.com>,
478 torvalds@linux-foundation.org,
479 akpm@linux-foundation.org,
480 alan@lxorguk.ukuu.org.uk,
481 David Brownell <dbrownell@users.sourceforge.net>
482 Subject: [patch 05/45] usb gadget: fix fsl_usb2_udc potential OOPS
483 Content-Disposition: inline; filename=usb-gadget-fix-fsl_usb2_udc-potential-oops.patch
484 Content-Length: 851
485 Lines: 29
486
487
488 2.6.24-stable review patch. If anyone has any objections, please let us know.
489
490 ------------------
491 From: Li Yang <leoli@freescale.com>
492
493 For fsl_usb2_udc driver, ep0 also has a descriptor. Current code is
494 misleading and contains a logical mistake. Here is the patch to fix it.
495
496 http://bugzilla.kernel.org/show_bug.cgi?id=9595
497
498 Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
499 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
500 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
501
502 ---
503 drivers/usb/gadget/fsl_usb2_udc.c | 2 +-
504 1 file changed, 1 insertion(+), 1 deletion(-)
505
506 --- a/drivers/usb/gadget/fsl_usb2_udc.c
507 +++ b/drivers/usb/gadget/fsl_usb2_udc.c
508 @@ -776,7 +776,7 @@ fsl_ep_queue(struct usb_ep *_ep, struct
509 VDBG("%s, bad params\n", __FUNCTION__);
510 return -EINVAL;
511 }
512 - if (!_ep || (!ep->desc && ep_index(ep))) {
513 + if (unlikely(!_ep || !ep->desc)) {
514 VDBG("%s, bad ep\n", __FUNCTION__);
515 return -EINVAL;
516 }
517
518 --
519
520 From gregkh@mini.kroah.org Thu Feb 7 12:43:11 2008
521 Message-Id: <20080207204310.891113761@mini.kroah.org>
522 References: <20080207204118.202098927@mini.kroah.org>
523 User-Agent: quilt/0.46-1
524 Date: Thu, 07 Feb 2008 12:41:24 -0800
525 From: Greg KH <gregkh@suse.de>
526 To: linux-kernel@vger.kernel.org,
527 stable@kernel.org,
528 linux-usb@vger.kernel.org
529 Cc: Justin Forbes <jmforbes@linuxtx.org>,
530 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
531 Theodore Ts'o <tytso@mit.edu>,
532 Randy Dunlap <rdunlap@xenotime.net>,
533 Dave Jones <davej@redhat.com>,
534 Chuck Wolber <chuckw@quantumlinux.com>,
535 Chris Wedgwood <reviews@ml.cw.f00f.org>,
536 Michael Krufky <mkrufky@linuxtv.org>,
537 Chuck Ebbert <cebbert@redhat.com>,
538 Domenico Andreoli <cavokz@gmail.com>,
539 torvalds@linux-foundation.org,
540 akpm@linux-foundation.org,
541 alan@lxorguk.ukuu.org.uk,
542 Craig Shelley <craig@microtron.org.uk>
543 Subject: [patch 06/45] USB: CP2101 New Device IDs
544 Content-Disposition: inline; filename=usb-cp2101-new-device-ids.patch
545 Content-Length: 1786
546 Lines: 39
547
548
549 2.6.24-stable review patch. If anyone has any objections, please let us know.
550
551 ------------------
552 From: Craig Shelley <craig@microtron.org.uk>
553
554 Six new device IDs for CP2101 driver.
555
556 Signed-off-by: Craig Shelley <craig@microtron.org.uk>
557 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
558 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
559
560 ---
561 drivers/usb/serial/cp2101.c | 6 ++++++
562 1 file changed, 6 insertions(+)
563
564 --- a/drivers/usb/serial/cp2101.c
565 +++ b/drivers/usb/serial/cp2101.c
566 @@ -59,6 +59,7 @@ static struct usb_device_id id_table []
567 { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */
568 { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */
569 { USB_DEVICE(0x10B5, 0xAC70) }, /* Nokia CA-42 USB */
570 + { USB_DEVICE(0x10C4, 0x800A) }, /* SPORTident BSM7-D-USB main station */
571 { USB_DEVICE(0x10C4, 0x803B) }, /* Pololu USB-serial converter */
572 { USB_DEVICE(0x10C4, 0x8053) }, /* Enfora EDG1228 */
573 { USB_DEVICE(0x10C4, 0x8066) }, /* Argussoft In-System Programmer */
574 @@ -76,8 +77,13 @@ static struct usb_device_id id_table []
575 { USB_DEVICE(0x10C4, 0x8218) }, /* Lipowsky Industrie Elektronik GmbH, HARP-1 */
576 { USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */
577 { USB_DEVICE(0x10C4, 0xEA61) }, /* Silicon Labs factory default */
578 + { USB_DEVICE(0x10C4, 0xF001) }, /* Elan Digital Systems USBscope50 */
579 + { USB_DEVICE(0x10C4, 0xF002) }, /* Elan Digital Systems USBwave12 */
580 + { USB_DEVICE(0x10C4, 0xF003) }, /* Elan Digital Systems USBpulse100 */
581 + { USB_DEVICE(0x10C4, 0xF004) }, /* Elan Digital Systems USBcount50 */
582 { USB_DEVICE(0x10C5, 0xEA61) }, /* Silicon Labs MobiData GPRS USB Modem */
583 { USB_DEVICE(0x13AD, 0x9999) }, /* Baltech card reader */
584 + { USB_DEVICE(0x166A, 0x0303) }, /* Clipsal 5500PCU C-Bus USB interface */
585 { USB_DEVICE(0x16D6, 0x0001) }, /* Jablotron serial interface */
586 { } /* Terminating Entry */
587 };
588
589 --
590
591 From gregkh@mini.kroah.org Thu Feb 7 12:43:11 2008
592 Message-Id: <20080207204311.118534750@mini.kroah.org>
593 References: <20080207204118.202098927@mini.kroah.org>
594 User-Agent: quilt/0.46-1
595 Date: Thu, 07 Feb 2008 12:41:25 -0800
596 From: Greg KH <gregkh@suse.de>
597 To: linux-kernel@vger.kernel.org,
598 stable@kernel.org,
599 linux-usb@vger.kernel.org
600 Cc: Justin Forbes <jmforbes@linuxtx.org>,
601 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
602 Theodore Ts'o <tytso@mit.edu>,
603 Randy Dunlap <rdunlap@xenotime.net>,
604 Dave Jones <davej@redhat.com>,
605 Chuck Wolber <chuckw@quantumlinux.com>,
606 Chris Wedgwood <reviews@ml.cw.f00f.org>,
607 Michael Krufky <mkrufky@linuxtv.org>,
608 Chuck Ebbert <cebbert@redhat.com>,
609 Domenico Andreoli <cavokz@gmail.com>,
610 torvalds@linux-foundation.org,
611 akpm@linux-foundation.org,
612 alan@lxorguk.ukuu.org.uk,
613 Ingo Molnar <mingo@elte.hu>
614 Subject: [patch 07/45] USB: add support for 4348:5523 WinChipHead USB->RS 232 adapter
615 Content-Disposition: inline; filename=usb-add-support-for-4348-5523-winchiphead-usb-rs-232-adapter.patch
616 Content-Length: 1097
617 Lines: 40
618
619
620 2.6.24-stable review patch. If anyone has any objections, please let us know.
621
622 ------------------
623 From: Piotr Roszatycki <dexter@debian.org>
624
625 add support for:
626
627 4348:5523 WinChipHead USB->RS 232 adapter with Prolifec PL 2303 chipset
628
629 [ mingo@elte.hu: merged it and nursed it upstream ]
630
631 Signed-off-by: Ingo Molnar <mingo@elte.hu>
632 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
633
634 ---
635 drivers/usb/serial/pl2303.c | 1 +
636 drivers/usb/serial/pl2303.h | 5 +++++
637 2 files changed, 6 insertions(+)
638
639 --- a/drivers/usb/serial/pl2303.c
640 +++ b/drivers/usb/serial/pl2303.c
641 @@ -87,6 +87,7 @@ static struct usb_device_id id_table []
642 { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_ID) },
643 { USB_DEVICE(WS002IN_VENDOR_ID, WS002IN_PRODUCT_ID) },
644 { USB_DEVICE(COREGA_VENDOR_ID, COREGA_PRODUCT_ID) },
645 + { USB_DEVICE(HL340_VENDOR_ID, HL340_PRODUCT_ID) },
646 { } /* Terminating entry */
647 };
648
649 --- a/drivers/usb/serial/pl2303.h
650 +++ b/drivers/usb/serial/pl2303.h
651 @@ -107,3 +107,8 @@
652 /* Corega CG-USBRS232R Serial Adapter */
653 #define COREGA_VENDOR_ID 0x07aa
654 #define COREGA_PRODUCT_ID 0x002a
655 +
656 +/* HL HL-340 (ID: 4348:5523) */
657 +#define HL340_VENDOR_ID 0x4348
658 +#define HL340_PRODUCT_ID 0x5523
659 +
660
661 --
662
663 From gregkh@mini.kroah.org Thu Feb 7 12:43:11 2008
664 Message-Id: <20080207204311.343438636@mini.kroah.org>
665 References: <20080207204118.202098927@mini.kroah.org>
666 User-Agent: quilt/0.46-1
667 Date: Thu, 07 Feb 2008 12:41:26 -0800
668 From: Greg KH <gregkh@suse.de>
669 To: linux-kernel@vger.kernel.org,
670 stable@kernel.org,
671 linux-usb@vger.kernel.org
672 Cc: Justin Forbes <jmforbes@linuxtx.org>,
673 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
674 Theodore Ts'o <tytso@mit.edu>,
675 Randy Dunlap <rdunlap@xenotime.net>,
676 Dave Jones <davej@redhat.com>,
677 Chuck Wolber <chuckw@quantumlinux.com>,
678 Chris Wedgwood <reviews@ml.cw.f00f.org>,
679 Michael Krufky <mkrufky@linuxtv.org>,
680 Chuck Ebbert <cebbert@redhat.com>,
681 Domenico Andreoli <cavokz@gmail.com>,
682 torvalds@linux-foundation.org,
683 akpm@linux-foundation.org,
684 alan@lxorguk.ukuu.org.uk,
685 Jessica L Blank <j@twu.net>
686 Subject: [patch 08/45] USB: Sierra - Add support for Aircard 881U
687 Content-Disposition: inline; filename=usb-sierra-add-support-for-aircard-881u.patch
688 Content-Length: 1304
689 Lines: 33
690
691
692 2.6.24-stable review patch. If anyone has any objections, please let us know.
693
694 ------------------
695 From: Jessica L. Blank <j@twu.net>
696
697 Adds the appropriate vendor and device IDs for the AirCard 881U to
698 sierra.c. (This device is often rebadged by AT&T as the USBConnect 881).
699
700 Signed-off-by: Jessica L Blank <j@twu.net>
701 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
702
703 ---
704 drivers/usb/serial/sierra.c | 2 ++
705 1 file changed, 2 insertions(+)
706
707 --- a/drivers/usb/serial/sierra.c
708 +++ b/drivers/usb/serial/sierra.c
709 @@ -117,6 +117,7 @@ static struct usb_device_id id_table []
710 { USB_DEVICE(0x1199, 0x6851) }, /* Sierra Wireless AirCard 881 */
711 { USB_DEVICE(0x1199, 0x6852) }, /* Sierra Wireless AirCard 880 E */
712 { USB_DEVICE(0x1199, 0x6853) }, /* Sierra Wireless AirCard 881 E */
713 + { USB_DEVICE(0x1199, 0x6856) }, /* Sierra Wireless AirCard 881 U */
714
715 { USB_DEVICE(0x1199, 0x0112), .driver_info = DEVICE_1_PORT }, /* Sierra Wireless AirCard 580 */
716 { USB_DEVICE(0x0F3D, 0x0112), .driver_info = DEVICE_1_PORT }, /* Airprime/Sierra PC 5220 */
717 @@ -155,6 +156,7 @@ static struct usb_device_id id_table_3po
718 { USB_DEVICE(0x1199, 0x6851) }, /* Sierra Wireless AirCard 881 */
719 { USB_DEVICE(0x1199, 0x6852) }, /* Sierra Wireless AirCard 880E */
720 { USB_DEVICE(0x1199, 0x6853) }, /* Sierra Wireless AirCard 881E */
721 + { USB_DEVICE(0x1199, 0x6856) }, /* Sierra Wireless AirCard 881U */
722 { }
723 };
724
725
726 --
727
728 From gregkh@mini.kroah.org Thu Feb 7 12:43:11 2008
729 Message-Id: <20080207204311.569508297@mini.kroah.org>
730 References: <20080207204118.202098927@mini.kroah.org>
731 User-Agent: quilt/0.46-1
732 Date: Thu, 07 Feb 2008 12:41:27 -0800
733 From: Greg KH <gregkh@suse.de>
734 To: linux-kernel@vger.kernel.org,
735 stable@kernel.org,
736 linux-usb@vger.kernel.org
737 Cc: Justin Forbes <jmforbes@linuxtx.org>,
738 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
739 Theodore Ts'o <tytso@mit.edu>,
740 Randy Dunlap <rdunlap@xenotime.net>,
741 Dave Jones <davej@redhat.com>,
742 Chuck Wolber <chuckw@quantumlinux.com>,
743 Chris Wedgwood <reviews@ml.cw.f00f.org>,
744 Michael Krufky <mkrufky@linuxtv.org>,
745 Chuck Ebbert <cebbert@redhat.com>,
746 Domenico Andreoli <cavokz@gmail.com>,
747 torvalds@linux-foundation.org,
748 akpm@linux-foundation.org,
749 alan@lxorguk.ukuu.org.uk
750 Subject: [patch 09/45] USB: Adding YC Cable USB Serial device to pl2303
751 Content-Disposition: inline; filename=usb-adding-yc-cable-usb-serial-device-to-pl2303.patch
752 Content-Length: 1098
753 Lines: 36
754
755
756 2.6.24-stable review patch. If anyone has any objections, please let us know.
757
758 ------------------
759 From: Damien Stuart <dstuart@dstuart.org>
760
761 This simply adds the "YC Cable" as a vendor and its pl2303-based
762 USB<->Serial adapter as a product. This particular adapter is sold by
763 Radio Shack. I've done limited testing on a few different systems with
764 no issues.
765
766 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
767
768 ---
769 drivers/usb/serial/pl2303.c | 1 +
770 drivers/usb/serial/pl2303.h | 3 +++
771 2 files changed, 4 insertions(+)
772
773 --- a/drivers/usb/serial/pl2303.c
774 +++ b/drivers/usb/serial/pl2303.c
775 @@ -88,6 +88,7 @@ static struct usb_device_id id_table []
776 { USB_DEVICE(WS002IN_VENDOR_ID, WS002IN_PRODUCT_ID) },
777 { USB_DEVICE(COREGA_VENDOR_ID, COREGA_PRODUCT_ID) },
778 { USB_DEVICE(HL340_VENDOR_ID, HL340_PRODUCT_ID) },
779 + { USB_DEVICE(YCCABLE_VENDOR_ID, YCCABLE_PRODUCT_ID) },
780 { } /* Terminating entry */
781 };
782
783 --- a/drivers/usb/serial/pl2303.h
784 +++ b/drivers/usb/serial/pl2303.h
785 @@ -112,3 +112,6 @@
786 #define HL340_VENDOR_ID 0x4348
787 #define HL340_PRODUCT_ID 0x5523
788
789 +/* Y.C. Cable U.S.A., Inc - USB to RS-232 */
790 +#define YCCABLE_VENDOR_ID 0x05ad
791 +#define YCCABLE_PRODUCT_ID 0x0fba
792
793 --
794
795 From gregkh@mini.kroah.org Thu Feb 7 12:43:12 2008
796 Message-Id: <20080207204311.794222664@mini.kroah.org>
797 References: <20080207204118.202098927@mini.kroah.org>
798 User-Agent: quilt/0.46-1
799 Date: Thu, 07 Feb 2008 12:41:28 -0800
800 From: Greg KH <gregkh@suse.de>
801 To: linux-kernel@vger.kernel.org,
802 stable@kernel.org,
803 linux-usb@vger.kernel.org
804 Cc: Justin Forbes <jmforbes@linuxtx.org>,
805 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
806 Theodore Ts'o <tytso@mit.edu>,
807 Randy Dunlap <rdunlap@xenotime.net>,
808 Dave Jones <davej@redhat.com>,
809 Chuck Wolber <chuckw@quantumlinux.com>,
810 Chris Wedgwood <reviews@ml.cw.f00f.org>,
811 Michael Krufky <mkrufky@linuxtv.org>,
812 Chuck Ebbert <cebbert@redhat.com>,
813 Domenico Andreoli <cavokz@gmail.com>,
814 torvalds@linux-foundation.org,
815 akpm@linux-foundation.org,
816 alan@lxorguk.ukuu.org.uk,
817 Kevin Lloyd <linux@sierrawireless.com>
818 Subject: [patch 10/45] USB: sierra driver - add devices
819 Content-Disposition: inline; filename=usb-sierra-driver-add-devices.patch
820 Content-Length: 2649
821 Lines: 57
822
823
824 2.6.24-stable review patch. If anyone has any objections, please let us know.
825
826 ------------------
827 From: Kevin Lloyd <linux@sierrawireless.com>
828
829 The following improvements were made:
830 - Added new product support: MC5725, AC 880 U, MP 3G (UMTS & CDMA)
831
832 Signed-off-by: Kevin Lloyd <linux@sierrawireless.com>
833 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
834
835 ---
836 drivers/usb/serial/sierra.c | 9 +++++++++
837 1 file changed, 9 insertions(+)
838
839 --- a/drivers/usb/serial/sierra.c
840 +++ b/drivers/usb/serial/sierra.c
841 @@ -104,6 +104,7 @@ static struct usb_device_id id_table []
842 { USB_DEVICE(0x1199, 0x0019) }, /* Sierra Wireless AirCard 595 */
843 { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */
844 { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless USB Dongle 595U */
845 + { USB_DEVICE(0x1199, 0x0023) }, /* Sierra Wireless AirCard */
846
847 { USB_DEVICE(0x1199, 0x6802) }, /* Sierra Wireless MC8755 */
848 { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */
849 @@ -117,8 +118,12 @@ static struct usb_device_id id_table []
850 { USB_DEVICE(0x1199, 0x6851) }, /* Sierra Wireless AirCard 881 */
851 { USB_DEVICE(0x1199, 0x6852) }, /* Sierra Wireless AirCard 880 E */
852 { USB_DEVICE(0x1199, 0x6853) }, /* Sierra Wireless AirCard 881 E */
853 + { USB_DEVICE(0x1199, 0x6855) }, /* Sierra Wireless AirCard 880 U */
854 { USB_DEVICE(0x1199, 0x6856) }, /* Sierra Wireless AirCard 881 U */
855
856 + { USB_DEVICE(0x1199, 0x6468) }, /* Sierra Wireless MP3G - EVDO */
857 + { USB_DEVICE(0x1199, 0x6469) }, /* Sierra Wireless MP3G - UMTS/HSPA */
858 +
859 { USB_DEVICE(0x1199, 0x0112), .driver_info = DEVICE_1_PORT }, /* Sierra Wireless AirCard 580 */
860 { USB_DEVICE(0x0F3D, 0x0112), .driver_info = DEVICE_1_PORT }, /* Airprime/Sierra PC 5220 */
861
862 @@ -143,6 +148,7 @@ static struct usb_device_id id_table_3po
863 { USB_DEVICE(0x1199, 0x0019) }, /* Sierra Wireless AirCard 595 */
864 { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */
865 { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless USB Dongle 595U*/
866 + { USB_DEVICE(0x1199, 0x0023) }, /* Sierra Wireless AirCard */
867
868 { USB_DEVICE(0x1199, 0x6802) }, /* Sierra Wireless MC8755 */
869 { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */
870 @@ -156,7 +162,10 @@ static struct usb_device_id id_table_3po
871 { USB_DEVICE(0x1199, 0x6851) }, /* Sierra Wireless AirCard 881 */
872 { USB_DEVICE(0x1199, 0x6852) }, /* Sierra Wireless AirCard 880E */
873 { USB_DEVICE(0x1199, 0x6853) }, /* Sierra Wireless AirCard 881E */
874 + { USB_DEVICE(0x1199, 0x6855) }, /* Sierra Wireless AirCard 880 U */
875 { USB_DEVICE(0x1199, 0x6856) }, /* Sierra Wireless AirCard 881U */
876 + { USB_DEVICE(0x1199, 0x6468) }, /* Sierra Wireless MP3G - EVDO */
877 + { USB_DEVICE(0x1199, 0x6469) }, /* Sierra Wireless MP3G - UMTS/HSPA */
878 { }
879 };
880
881
882 --
883
884 From gregkh@mini.kroah.org Thu Feb 7 12:43:12 2008
885 Message-Id: <20080207204312.022578737@mini.kroah.org>
886 References: <20080207204118.202098927@mini.kroah.org>
887 User-Agent: quilt/0.46-1
888 Date: Thu, 07 Feb 2008 12:41:29 -0800
889 From: Greg KH <gregkh@suse.de>
890 To: linux-kernel@vger.kernel.org,
891 stable@kernel.org,
892 linux-usb@vger.kernel.org
893 Cc: Justin Forbes <jmforbes@linuxtx.org>,
894 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
895 Theodore Ts'o <tytso@mit.edu>,
896 Randy Dunlap <rdunlap@xenotime.net>,
897 Dave Jones <davej@redhat.com>,
898 Chuck Wolber <chuckw@quantumlinux.com>,
899 Chris Wedgwood <reviews@ml.cw.f00f.org>,
900 Michael Krufky <mkrufky@linuxtv.org>,
901 Chuck Ebbert <cebbert@redhat.com>,
902 Domenico Andreoli <cavokz@gmail.com>,
903 torvalds@linux-foundation.org,
904 akpm@linux-foundation.org,
905 alan@lxorguk.ukuu.org.uk,
906 Peter Stark <peter.stark@t-online.de>
907 Subject: [patch 11/45] USB: ftdi_sio - enabling multiple ELV devices, adding EM1010PC
908 Content-Disposition: inline; filename=usb-ftdi_sio-enabling-multiple-elv-devices-adding-em1010pc.patch
909 Content-Length: 4150
910 Lines: 90
911
912
913 2.6.24-stable review patch. If anyone has any objections, please let us know.
914
915 ------------------
916 From: Peter Stark <Peter.Stark@t-online.de>
917
918 I work with a group of people on a free home automation tool called
919 FHEM. Some of the users own more than one USB-serial device by ELV. The
920 ftdi_sio driver has most of the ELV devices disabled by default and
921 needs to be re-enabled every time you get a new kernel. Additionally a
922 new device (EM 1010 PC - enegry monitor) is missing in the list.
923 Currently our users have to follow the instructions we provide at
924 http://www.koeniglich.de/fhem/linux.html ... However, to some users it
925 is too complicated to compile their own kernel module.
926
927 We are aware that you can specify one additional device using the
928 vendor/product option of the module. But lot's of users own more than
929 one device.
930
931 Signed-off-by: Peter Stark <peter.stark@t-online.de>
932 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
933
934 ---
935 drivers/usb/serial/ftdi_sio.c | 44 ++++++++++++++++++++----------------------
936 drivers/usb/serial/ftdi_sio.h | 1
937 2 files changed, 22 insertions(+), 23 deletions(-)
938
939 --- a/drivers/usb/serial/ftdi_sio.c
940 +++ b/drivers/usb/serial/ftdi_sio.c
941 @@ -471,30 +471,28 @@ static struct usb_device_id id_table_com
942 { USB_DEVICE(FTDI_VID, FTDI_IBS_PEDO_PID) },
943 { USB_DEVICE(FTDI_VID, FTDI_IBS_PROD_PID) },
944 /*
945 - * These will probably use user-space drivers. Uncomment them if
946 - * you need them or use the user-specified vendor/product module
947 - * parameters (see ftdi_sio.h for the numbers). Make a fuss if
948 - * you think the driver should recognize any of them by default.
949 + * Due to many user requests for multiple ELV devices we enable
950 + * them by default.
951 */
952 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_CLI7000_PID) }, */
953 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_PPS7330_PID) }, */
954 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_TFM100_PID) }, */
955 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_UDF77_PID) }, */
956 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_UIO88_PID) }, */
957 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_UAD8_PID) }, */
958 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_UDA7_PID) }, */
959 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_USI2_PID) }, */
960 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_T1100_PID) }, */
961 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_PCD200_PID) }, */
962 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_ULA200_PID) }, */
963 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_CSI8_PID) }, */
964 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_EM1000DL_PID) }, */
965 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_PCK100_PID) }, */
966 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_RFP500_PID) }, */
967 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_FS20SIG_PID) }, */
968 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_WS300PC_PID) }, */
969 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_FHZ1300PC_PID) }, */
970 - /* { USB_DEVICE(FTDI_VID, FTDI_ELV_WS500_PID) }, */
971 + { USB_DEVICE(FTDI_VID, FTDI_ELV_CLI7000_PID) },
972 + { USB_DEVICE(FTDI_VID, FTDI_ELV_PPS7330_PID) },
973 + { USB_DEVICE(FTDI_VID, FTDI_ELV_TFM100_PID) },
974 + { USB_DEVICE(FTDI_VID, FTDI_ELV_UDF77_PID) },
975 + { USB_DEVICE(FTDI_VID, FTDI_ELV_UIO88_PID) },
976 + { USB_DEVICE(FTDI_VID, FTDI_ELV_UAD8_PID) },
977 + { USB_DEVICE(FTDI_VID, FTDI_ELV_UDA7_PID) },
978 + { USB_DEVICE(FTDI_VID, FTDI_ELV_USI2_PID) },
979 + { USB_DEVICE(FTDI_VID, FTDI_ELV_T1100_PID) },
980 + { USB_DEVICE(FTDI_VID, FTDI_ELV_PCD200_PID) },
981 + { USB_DEVICE(FTDI_VID, FTDI_ELV_ULA200_PID) },
982 + { USB_DEVICE(FTDI_VID, FTDI_ELV_CSI8_PID) },
983 + { USB_DEVICE(FTDI_VID, FTDI_ELV_EM1000DL_PID) },
984 + { USB_DEVICE(FTDI_VID, FTDI_ELV_PCK100_PID) },
985 + { USB_DEVICE(FTDI_VID, FTDI_ELV_RFP500_PID) },
986 + { USB_DEVICE(FTDI_VID, FTDI_ELV_FS20SIG_PID) },
987 + { USB_DEVICE(FTDI_VID, FTDI_ELV_WS300PC_PID) },
988 + { USB_DEVICE(FTDI_VID, FTDI_ELV_FHZ1300PC_PID) },
989 + { USB_DEVICE(FTDI_VID, FTDI_ELV_WS500_PID) },
990 { USB_DEVICE(FTDI_VID, LINX_SDMUSBQSS_PID) },
991 { USB_DEVICE(FTDI_VID, LINX_MASTERDEVEL2_PID) },
992 { USB_DEVICE(FTDI_VID, LINX_FUTURE_0_PID) },
993 --- a/drivers/usb/serial/ftdi_sio.h
994 +++ b/drivers/usb/serial/ftdi_sio.h
995 @@ -245,6 +245,7 @@
996 #define FTDI_ELV_WS300PC_PID 0xE0F6 /* PC-Wetterstation (WS 300 PC) */
997 #define FTDI_ELV_FHZ1300PC_PID 0xE0E8 /* FHZ 1300 PC */
998 #define FTDI_ELV_WS500_PID 0xE0E9 /* PC-Wetterstation (WS 500) */
999 +#define FTDI_ELV_EM1010PC_PID 0xE0EF /* Engery monitor EM 1010 PC */
1000
1001 /*
1002 * Definitions for ID TECH (www.idt-net.com) devices
1003
1004 --
1005
1006 From gregkh@mini.kroah.org Thu Feb 7 12:43:12 2008
1007 Message-Id: <20080207204312.470058865@mini.kroah.org>
1008 References: <20080207204118.202098927@mini.kroah.org>
1009 User-Agent: quilt/0.46-1
1010 Date: Thu, 07 Feb 2008 12:41:30 -0800
1011 From: Greg KH <gregkh@suse.de>
1012 To: linux-kernel@vger.kernel.org,
1013 stable@kernel.org,
1014 linux-usb@vger.kernel.org
1015 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1016 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1017 Theodore Ts'o <tytso@mit.edu>,
1018 Randy Dunlap <rdunlap@xenotime.net>,
1019 Dave Jones <davej@redhat.com>,
1020 Chuck Wolber <chuckw@quantumlinux.com>,
1021 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1022 Michael Krufky <mkrufky@linuxtv.org>,
1023 Chuck Ebbert <cebbert@redhat.com>,
1024 Domenico Andreoli <cavokz@gmail.com>,
1025 torvalds@linux-foundation.org,
1026 akpm@linux-foundation.org,
1027 alan@lxorguk.ukuu.org.uk
1028 Subject: [patch 12/45] USB: ftdi-sio: Patch to add vendor/device id for ATK_16IC CCD
1029 Content-Disposition: inline; filename=usb-ftdi-sio-patch-to-add-vendor-device-id-for-atk_16ic-ccd.patch
1030 Content-Length: 1243
1031 Lines: 36
1032
1033
1034 2.6.24-stable review patch. If anyone has any objections, please let us know.
1035
1036 ------------------
1037 From: Franco Lanza <nextime@nexlab.it>
1038
1039 little patches only to add vendor/device id of ATK_16IC CCD cam for
1040 astronomy.
1041
1042 From: Franco Lanza <nextime@nexlab.it>
1043 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1044
1045 ---
1046 drivers/usb/serial/ftdi_sio.c | 1 +
1047 drivers/usb/serial/ftdi_sio.h | 1 +
1048 2 files changed, 2 insertions(+)
1049
1050 --- a/drivers/usb/serial/ftdi_sio.c
1051 +++ b/drivers/usb/serial/ftdi_sio.c
1052 @@ -543,6 +543,7 @@ static struct usb_device_id id_table_com
1053 { USB_DEVICE(FTDI_VID, FTDI_ATIK_ATK16C_PID) },
1054 { USB_DEVICE(FTDI_VID, FTDI_ATIK_ATK16HR_PID) },
1055 { USB_DEVICE(FTDI_VID, FTDI_ATIK_ATK16HRC_PID) },
1056 + { USB_DEVICE(FTDI_VID, FTDI_ATIK_ATK16IC_PID) },
1057 { USB_DEVICE(KOBIL_VID, KOBIL_CONV_B1_PID) },
1058 { USB_DEVICE(KOBIL_VID, KOBIL_CONV_KAAN_PID) },
1059 { USB_DEVICE(POSIFLEX_VID, POSIFLEX_PP7000_PID) },
1060 --- a/drivers/usb/serial/ftdi_sio.h
1061 +++ b/drivers/usb/serial/ftdi_sio.h
1062 @@ -279,6 +279,7 @@
1063 #define FTDI_ATIK_ATK16C_PID 0xDF32 /* ATIK ATK-16C Colour Camera */
1064 #define FTDI_ATIK_ATK16HR_PID 0xDF31 /* ATIK ATK-16HR Grayscale Camera */
1065 #define FTDI_ATIK_ATK16HRC_PID 0xDF33 /* ATIK ATK-16HRC Colour Camera */
1066 +#define FTDI_ATIK_ATK16IC_PID 0xDF35 /* ATIK ATK-16IC Grayscale Camera */
1067
1068 /*
1069 * Protego product ids
1070
1071 --
1072
1073 From gregkh@mini.kroah.org Thu Feb 7 12:43:13 2008
1074 Message-Id: <20080207204312.925564082@mini.kroah.org>
1075 References: <20080207204118.202098927@mini.kroah.org>
1076 User-Agent: quilt/0.46-1
1077 Date: Thu, 07 Feb 2008 12:41:31 -0800
1078 From: Greg KH <gregkh@suse.de>
1079 To: linux-kernel@vger.kernel.org,
1080 stable@kernel.org,
1081 linux-usb@vger.kernel.org
1082 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1083 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1084 Theodore Ts'o <tytso@mit.edu>,
1085 Randy Dunlap <rdunlap@xenotime.net>,
1086 Dave Jones <davej@redhat.com>,
1087 Chuck Wolber <chuckw@quantumlinux.com>,
1088 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1089 Michael Krufky <mkrufky@linuxtv.org>,
1090 Chuck Ebbert <cebbert@redhat.com>,
1091 Domenico Andreoli <cavokz@gmail.com>,
1092 torvalds@linux-foundation.org,
1093 akpm@linux-foundation.org,
1094 alan@lxorguk.ukuu.org.uk,
1095 Bruno Redondi <bruno.redondi@altarisoluzione.com>
1096 Subject: [patch 13/45] USB: sierra: add support for Onda H600/Zte MF330 datacard to USB Driver for Sierra Wireless
1097 Content-Disposition: inline; filename=usb-sierra-add-support-for-onda-h600-zte-mf330-datacard-to-usb-driver-for-sierra-wireless.patch
1098 Content-Length: 1119
1099 Lines: 32
1100
1101
1102 2.6.24-stable review patch. If anyone has any objections, please let us know.
1103
1104 ------------------
1105 From: Bruno Redondi <bruno.redondi@altarisoluzione.com>
1106
1107 Added support for Onda H600/Zte MF330 GPRS/UMTS/HSDPA datacard
1108
1109 Signed-off-by: Bruno Redondi <bruno.redondi@altarisoluzione.com>
1110 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1111
1112 ---
1113 drivers/usb/serial/sierra.c | 2 ++
1114 1 file changed, 2 insertions(+)
1115
1116 --- a/drivers/usb/serial/sierra.c
1117 +++ b/drivers/usb/serial/sierra.c
1118 @@ -126,6 +126,7 @@ static struct usb_device_id id_table []
1119
1120 { USB_DEVICE(0x1199, 0x0112), .driver_info = DEVICE_1_PORT }, /* Sierra Wireless AirCard 580 */
1121 { USB_DEVICE(0x0F3D, 0x0112), .driver_info = DEVICE_1_PORT }, /* Airprime/Sierra PC 5220 */
1122 + { USB_DEVICE(0x05C6, 0x6613), .driver_info = DEVICE_1_PORT }, /* Onda H600/ZTE MF330 */
1123
1124 { USB_DEVICE(0x1199, 0x0FFF), .driver_info = DEVICE_INSTALLER},
1125 { }
1126 @@ -135,6 +136,7 @@ MODULE_DEVICE_TABLE(usb, id_table);
1127 static struct usb_device_id id_table_1port [] = {
1128 { USB_DEVICE(0x1199, 0x0112) }, /* Sierra Wireless AirCard 580 */
1129 { USB_DEVICE(0x0F3D, 0x0112) }, /* AirPrime/Sierra PC 5220 */
1130 + { USB_DEVICE(0x05C6, 0x6613) }, /* Onda H600/ZTE MF330 */
1131 { }
1132 };
1133
1134
1135 --
1136
1137 From gregkh@mini.kroah.org Thu Feb 7 12:43:13 2008
1138 Message-Id: <20080207204313.243910341@mini.kroah.org>
1139 References: <20080207204118.202098927@mini.kroah.org>
1140 User-Agent: quilt/0.46-1
1141 Date: Thu, 07 Feb 2008 12:41:32 -0800
1142 From: Greg KH <gregkh@suse.de>
1143 To: linux-kernel@vger.kernel.org,
1144 stable@kernel.org,
1145 linux-usb@vger.kernel.org
1146 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1147 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1148 Theodore Ts'o <tytso@mit.edu>,
1149 Randy Dunlap <rdunlap@xenotime.net>,
1150 Dave Jones <davej@redhat.com>,
1151 Chuck Wolber <chuckw@quantumlinux.com>,
1152 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1153 Michael Krufky <mkrufky@linuxtv.org>,
1154 Chuck Ebbert <cebbert@redhat.com>,
1155 Domenico Andreoli <cavokz@gmail.com>,
1156 torvalds@linux-foundation.org,
1157 akpm@linux-foundation.org,
1158 alan@lxorguk.ukuu.org.uk,
1159 =?ISO-8859-15?q?Daniel=20Koz=C3=A1k?= <kozzi11@gmail.com>
1160 Subject: [patch 14/45] USB: remove duplicate entry in Option driver and Pl2303 driver for Huawei modem
1161 Content-Disposition: inline; filename=usb-remove-duplicate-entry-in-option-driver-and-pl2303-driver-for-huawei-modem.patch
1162 Content-Length: 1293
1163 Lines: 39
1164
1165
1166 2.6.24-stable review patch. If anyone has any objections, please let us know.
1167
1168 ------------------
1169 From: Daniel Kozák <kozzi11@gmail.com>
1170
1171 Remove entry for Huawei E620 UMTS/HSDPA card (ID: 12d1:1001) in pl2303 driver
1172 Option driver is use instead
1173
1174 Signed-off-by: Daniel Kozák <kozzi11@gmail.com>
1175 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1176
1177 ---
1178 drivers/usb/serial/pl2303.c | 1 -
1179 drivers/usb/serial/pl2303.h | 4 ----
1180 2 files changed, 5 deletions(-)
1181
1182 --- a/drivers/usb/serial/pl2303.c
1183 +++ b/drivers/usb/serial/pl2303.c
1184 @@ -84,7 +84,6 @@ static struct usb_device_id id_table []
1185 { USB_DEVICE(DATAPILOT_U2_VENDOR_ID, DATAPILOT_U2_PRODUCT_ID) },
1186 { USB_DEVICE(BELKIN_VENDOR_ID, BELKIN_PRODUCT_ID) },
1187 { USB_DEVICE(ALCOR_VENDOR_ID, ALCOR_PRODUCT_ID) },
1188 - { USB_DEVICE(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_ID) },
1189 { USB_DEVICE(WS002IN_VENDOR_ID, WS002IN_PRODUCT_ID) },
1190 { USB_DEVICE(COREGA_VENDOR_ID, COREGA_PRODUCT_ID) },
1191 { USB_DEVICE(HL340_VENDOR_ID, HL340_PRODUCT_ID) },
1192 --- a/drivers/usb/serial/pl2303.h
1193 +++ b/drivers/usb/serial/pl2303.h
1194 @@ -96,10 +96,6 @@
1195 #define ALCOR_VENDOR_ID 0x058F
1196 #define ALCOR_PRODUCT_ID 0x9720
1197
1198 -/* Huawei E620 UMTS/HSDPA card (ID: 12d1:1001) */
1199 -#define HUAWEI_VENDOR_ID 0x12d1
1200 -#define HUAWEI_PRODUCT_ID 0x1001
1201 -
1202 /* Willcom WS002IN Data Driver (by NetIndex Inc.) */
1203 #define WS002IN_VENDOR_ID 0x11f6
1204 #define WS002IN_PRODUCT_ID 0x2001
1205
1206 --
1207
1208 From gregkh@mini.kroah.org Thu Feb 7 12:43:13 2008
1209 Message-Id: <20080207204313.581550549@mini.kroah.org>
1210 References: <20080207204118.202098927@mini.kroah.org>
1211 User-Agent: quilt/0.46-1
1212 Date: Thu, 07 Feb 2008 12:41:33 -0800
1213 From: Greg KH <gregkh@suse.de>
1214 To: linux-kernel@vger.kernel.org,
1215 stable@kernel.org,
1216 linux-usb@vger.kernel.org
1217 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1218 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1219 Theodore Ts'o <tytso@mit.edu>,
1220 Randy Dunlap <rdunlap@xenotime.net>,
1221 Dave Jones <davej@redhat.com>,
1222 Chuck Wolber <chuckw@quantumlinux.com>,
1223 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1224 Michael Krufky <mkrufky@linuxtv.org>,
1225 Chuck Ebbert <cebbert@redhat.com>,
1226 Domenico Andreoli <cavokz@gmail.com>,
1227 torvalds@linux-foundation.org,
1228 akpm@linux-foundation.org,
1229 alan@lxorguk.ukuu.org.uk,
1230 Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
1231 Subject: [patch 15/45] USB: pl2303: add support for RATOC REX-USB60F
1232 Content-Disposition: inline; filename=usb-pl2303-add-support-for-ratoc-rex-usb60f.patch
1233 Content-Length: 1212
1234 Lines: 38
1235
1236
1237 2.6.24-stable review patch. If anyone has any objections, please let us know.
1238
1239 ------------------
1240 From: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
1241
1242 pl2303: add support for RATOC REX-USB60F
1243
1244 This patch adds support for RATOC REX-USB60F Serial Adapters,
1245 which is widely used in Japan recently.
1246
1247 Signed-off-by: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
1248 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1249
1250 ---
1251 drivers/usb/serial/pl2303.c | 1 +
1252 drivers/usb/serial/pl2303.h | 1 +
1253 2 files changed, 2 insertions(+)
1254
1255 --- a/drivers/usb/serial/pl2303.c
1256 +++ b/drivers/usb/serial/pl2303.c
1257 @@ -65,6 +65,7 @@ static struct usb_device_id id_table []
1258 { USB_DEVICE(ITEGNO_VENDOR_ID, ITEGNO_PRODUCT_ID_2080) },
1259 { USB_DEVICE(MA620_VENDOR_ID, MA620_PRODUCT_ID) },
1260 { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID) },
1261 + { USB_DEVICE(RATOC_VENDOR_ID, RATOC_PRODUCT_ID_USB60F) },
1262 { USB_DEVICE(TRIPP_VENDOR_ID, TRIPP_PRODUCT_ID) },
1263 { USB_DEVICE(RADIOSHACK_VENDOR_ID, RADIOSHACK_PRODUCT_ID) },
1264 { USB_DEVICE(DCU10_VENDOR_ID, DCU10_PRODUCT_ID) },
1265 --- a/drivers/usb/serial/pl2303.h
1266 +++ b/drivers/usb/serial/pl2303.h
1267 @@ -35,6 +35,7 @@
1268
1269 #define RATOC_VENDOR_ID 0x0584
1270 #define RATOC_PRODUCT_ID 0xb000
1271 +#define RATOC_PRODUCT_ID_USB60F 0xb020
1272
1273 #define TRIPP_VENDOR_ID 0x2478
1274 #define TRIPP_PRODUCT_ID 0x2008
1275
1276 --
1277
1278 From gregkh@mini.kroah.org Thu Feb 7 12:43:14 2008
1279 Message-Id: <20080207204313.807483027@mini.kroah.org>
1280 References: <20080207204118.202098927@mini.kroah.org>
1281 User-Agent: quilt/0.46-1
1282 Date: Thu, 07 Feb 2008 12:41:34 -0800
1283 From: Greg KH <gregkh@suse.de>
1284 To: linux-kernel@vger.kernel.org,
1285 stable@kernel.org,
1286 linux-usb@vger.kernel.org
1287 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1288 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1289 Theodore Ts'o <tytso@mit.edu>,
1290 Randy Dunlap <rdunlap@xenotime.net>,
1291 Dave Jones <davej@redhat.com>,
1292 Chuck Wolber <chuckw@quantumlinux.com>,
1293 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1294 Michael Krufky <mkrufky@linuxtv.org>,
1295 Chuck Ebbert <cebbert@redhat.com>,
1296 Domenico Andreoli <cavokz@gmail.com>,
1297 torvalds@linux-foundation.org,
1298 akpm@linux-foundation.org,
1299 alan@lxorguk.ukuu.org.uk,
1300 Ed Beroset <beroset@mindspring.com>
1301 Subject: [patch 16/45] USB: ftdi driver - add support for optical probe device
1302 Content-Disposition: inline; filename=usb-ftdi-driver-add-support-for-optical-probe-device.patch
1303 Content-Length: 1188
1304 Lines: 37
1305
1306
1307 2.6.24-stable review patch. If anyone has any objections, please let us know.
1308
1309 ------------------
1310 From: Ed Beroset <beroset@mindspring.com>
1311
1312 Added support for the Elster Unicom III Optical Probe.
1313 The device ID has already been added to the usb.ids file.
1314
1315 Signed-off-by: Ed Beroset <beroset@mindspring.com>
1316 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1317
1318 ---
1319 drivers/usb/serial/ftdi_sio.c | 1 +
1320 drivers/usb/serial/ftdi_sio.h | 2 ++
1321 2 files changed, 3 insertions(+)
1322
1323 --- a/drivers/usb/serial/ftdi_sio.c
1324 +++ b/drivers/usb/serial/ftdi_sio.c
1325 @@ -568,6 +568,7 @@ static struct usb_device_id id_table_com
1326 { USB_DEVICE(TELLDUS_VID, TELLDUS_TELLSTICK_PID) },
1327 { USB_DEVICE(FTDI_VID, FTDI_MAXSTREAM_PID) },
1328 { USB_DEVICE(TML_VID, TML_USB_SERIAL_PID) },
1329 + { USB_DEVICE(FTDI_VID, FTDI_ELSTER_UNICOM_PID) },
1330 { USB_DEVICE(OLIMEX_VID, OLIMEX_ARM_USB_OCD_PID),
1331 .driver_info = (kernel_ulong_t)&ftdi_olimex_quirk },
1332 { }, /* Optional parameter entry */
1333 --- a/drivers/usb/serial/ftdi_sio.h
1334 +++ b/drivers/usb/serial/ftdi_sio.h
1335 @@ -536,6 +536,8 @@
1336 #define OLIMEX_VID 0x15BA
1337 #define OLIMEX_ARM_USB_OCD_PID 0x0003
1338
1339 +/* www.elsterelectricity.com Elster Unicom III Optical Probe */
1340 +#define FTDI_ELSTER_UNICOM_PID 0xE700 /* Product Id */
1341
1342 /*
1343 * The Mobility Lab (TML)
1344
1345 --
1346
1347 From gregkh@mini.kroah.org Thu Feb 7 12:43:14 2008
1348 Message-Id: <20080207204314.038039364@mini.kroah.org>
1349 References: <20080207204118.202098927@mini.kroah.org>
1350 User-Agent: quilt/0.46-1
1351 Date: Thu, 07 Feb 2008 12:41:35 -0800
1352 From: Greg KH <gregkh@suse.de>
1353 To: linux-kernel@vger.kernel.org,
1354 stable@kernel.org,
1355 linux-usb@vger.kernel.org
1356 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1357 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1358 Theodore Ts'o <tytso@mit.edu>,
1359 Randy Dunlap <rdunlap@xenotime.net>,
1360 Dave Jones <davej@redhat.com>,
1361 Chuck Wolber <chuckw@quantumlinux.com>,
1362 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1363 Michael Krufky <mkrufky@linuxtv.org>,
1364 Chuck Ebbert <cebbert@redhat.com>,
1365 Domenico Andreoli <cavokz@gmail.com>,
1366 torvalds@linux-foundation.org,
1367 akpm@linux-foundation.org,
1368 alan@lxorguk.ukuu.org.uk,
1369 Oliver Neukum <oneukum@suse.de>
1370 Subject: [patch 17/45] USB: use GFP_NOIO in reset path
1371 Content-Disposition: inline; filename=usb-use-gfp_noio-in-reset-path.patch
1372 Content-Length: 811
1373 Lines: 27
1374
1375
1376 2.6.24-stable review patch. If anyone has any objections, please let us know.
1377
1378 ------------------
1379 From: Oliver Neukum <oliver@neukum.org>
1380
1381 this function will run in the context of the scsi error handler thread.
1382 It must use GFP_NOIO instead of GFP_KERNEL to avoid a possible
1383 deadlock.
1384
1385 Signed-off-by: Oliver Neukum <oneukum@suse.de>
1386 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1387
1388 ---
1389 drivers/usb/core/hub.c | 2 +-
1390 1 file changed, 1 insertion(+), 1 deletion(-)
1391
1392 --- a/drivers/usb/core/hub.c
1393 +++ b/drivers/usb/core/hub.c
1394 @@ -2946,7 +2946,7 @@ static int config_descriptors_changed(st
1395 if (len < le16_to_cpu(udev->config[index].desc.wTotalLength))
1396 len = le16_to_cpu(udev->config[index].desc.wTotalLength);
1397 }
1398 - buf = kmalloc (len, GFP_KERNEL);
1399 + buf = kmalloc(len, GFP_NOIO);
1400 if (buf == NULL) {
1401 dev_err(&udev->dev, "no mem to re-read configs after reset\n");
1402 /* assume the worst */
1403
1404 --
1405
1406 From gregkh@mini.kroah.org Thu Feb 7 12:43:14 2008
1407 Message-Id: <20080207204314.655539224@mini.kroah.org>
1408 References: <20080207204118.202098927@mini.kroah.org>
1409 User-Agent: quilt/0.46-1
1410 Date: Thu, 07 Feb 2008 12:41:36 -0800
1411 From: Greg KH <gregkh@suse.de>
1412 To: linux-kernel@vger.kernel.org,
1413 stable@kernel.org,
1414 linux-usb@vger.kernel.org
1415 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1416 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1417 Theodore Ts'o <tytso@mit.edu>,
1418 Randy Dunlap <rdunlap@xenotime.net>,
1419 Dave Jones <davej@redhat.com>,
1420 Chuck Wolber <chuckw@quantumlinux.com>,
1421 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1422 Michael Krufky <mkrufky@linuxtv.org>,
1423 Chuck Ebbert <cebbert@redhat.com>,
1424 Domenico Andreoli <cavokz@gmail.com>,
1425 torvalds@linux-foundation.org,
1426 akpm@linux-foundation.org,
1427 alan@lxorguk.ukuu.org.uk
1428 Subject: [patch 18/45] USB: Variant of the Dell Wireless 5520 driver
1429 Content-Disposition: inline; filename=usb-variant-of-the-dell-wireless-5520-driver.patch
1430 Content-Length: 1689
1431 Lines: 39
1432
1433
1434 2.6.24-stable review patch. If anyone has any objections, please let us know.
1435
1436 ------------------
1437 From: Nate Carlson <natecars@natecarlson.com>
1438
1439 I've got a Dell wireless 5520 card with a different USB ID - specifically, 8136
1440 instead of 8137. Attached a small patch to add support, and the output of an
1441 'ati3'.
1442
1443 If we could get this in, that'd be sweet. ;) Thanks!
1444
1445 nc@knight:~/tmp/linux-2.6.24-rc8/drivers/usb/serial$ lsusb | grep 8136
1446 Bus 001 Device 005: ID 413c:8136 Dell Computer Corp.
1447 nc@knight:~/tmp/linux-source-2.6.23/drivers/usb/serial$ cu -l ttyUSB0 -s 115200
1448 Connected.
1449 ati3
1450 Manufacturer: Novatel Wireless Incorporated
1451 Model: Expedite EU860D MiniCard
1452 Revision: 10.10.04.01-01 [2007-04-11 14:07:19]
1453 IMEI: 011186000228043
1454 +GCAP: +CGSM,+DS,+ES
1455
1456 From: Nate Carlson <natecars@natecarlson.com>
1457 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1458
1459 ---
1460 drivers/usb/serial/option.c | 1 +
1461 1 file changed, 1 insertion(+)
1462
1463 --- a/drivers/usb/serial/option.c
1464 +++ b/drivers/usb/serial/option.c
1465 @@ -180,6 +180,7 @@ static struct usb_device_id option_ids[]
1466 { USB_DEVICE(DELL_VENDOR_ID, 0x8117) }, /* Dell Wireless 5700 Mobile Broadband CDMA/EVDO ExpressCard == Novatel Merlin XV620 CDMA/EV-DO */
1467 { USB_DEVICE(DELL_VENDOR_ID, 0x8118) }, /* Dell Wireless 5510 Mobile Broadband HSDPA ExpressCard == Novatel Merlin XU870 HSDPA/3G */
1468 { USB_DEVICE(DELL_VENDOR_ID, 0x8128) }, /* Dell Wireless 5700 Mobile Broadband CDMA/EVDO Mini-Card == Novatel Expedite E720 CDMA/EV-DO */
1469 + { USB_DEVICE(DELL_VENDOR_ID, 0x8136) }, /* Dell Wireless HSDPA 5520 == Novatel Expedite EU860D */
1470 { USB_DEVICE(DELL_VENDOR_ID, 0x8137) }, /* Dell Wireless HSDPA 5520 */
1471 { USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_E100A) },
1472 { USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_500A) },
1473
1474 --
1475
1476 From gregkh@mini.kroah.org Thu Feb 7 12:43:15 2008
1477 Message-Id: <20080207204314.883671985@mini.kroah.org>
1478 References: <20080207204118.202098927@mini.kroah.org>
1479 User-Agent: quilt/0.46-1
1480 Date: Thu, 07 Feb 2008 12:41:37 -0800
1481 From: Greg KH <gregkh@suse.de>
1482 To: linux-kernel@vger.kernel.org,
1483 stable@kernel.org,
1484 linux-usb@vger.kernel.org
1485 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1486 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1487 Theodore Ts'o <tytso@mit.edu>,
1488 Randy Dunlap <rdunlap@xenotime.net>,
1489 Dave Jones <davej@redhat.com>,
1490 Chuck Wolber <chuckw@quantumlinux.com>,
1491 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1492 Michael Krufky <mkrufky@linuxtv.org>,
1493 Chuck Ebbert <cebbert@redhat.com>,
1494 Domenico Andreoli <cavokz@gmail.com>,
1495 torvalds@linux-foundation.org,
1496 akpm@linux-foundation.org,
1497 alan@lxorguk.ukuu.org.uk,
1498 Grant Grundler <grundler@parisc-linux.org>,
1499 Phil Dibowitz <phil@ipom.com>
1500 Subject: [patch 19/45] USB: storage: Add unusual_dev for HP r707
1501 Content-Disposition: inline; filename=usb-storage-add-unusual_dev-for-hp-r707.patch
1502 Content-Length: 1267
1503 Lines: 36
1504
1505
1506 2.6.24-stable review patch. If anyone has any objections, please let us know.
1507
1508 ------------------
1509 From: Grant Grundler <grundler@parisc-linux.org>
1510
1511 Add "FIX_CAPACITY" entry for HP Photosmart r707 Camera in "Disk" mode.
1512 Camera will wedge when /lib/udev/vol_id attempts to access the last sector,
1513 EIO gets reported to dmesg, and block device is marked "offline" (it is).
1514 Reproduced vol_id behavior with:
1515 "dd if=/dev/sda of=/dev/null skip=60800 count=1"
1516
1517 Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
1518 Signed-off-by: Phil Dibowitz <phil@ipom.com>
1519 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1520
1521 ---
1522 drivers/usb/storage/unusual_devs.h | 8 ++++++++
1523 1 file changed, 8 insertions(+)
1524
1525 --- a/drivers/usb/storage/unusual_devs.h
1526 +++ b/drivers/usb/storage/unusual_devs.h
1527 @@ -86,6 +86,14 @@ UNUSUAL_DEV( 0x03f0, 0x0307, 0x0001, 0x
1528 US_SC_8070, US_PR_USBAT, init_usbat_cd, 0),
1529 #endif
1530
1531 +/* Reported by Grant Grundler <grundler@parisc-linux.org>
1532 + * HP r707 camera in "Disk" mode with 2.00.23 or 2.00.24 firmware.
1533 + */
1534 +UNUSUAL_DEV( 0x03f0, 0x4002, 0x0001, 0x0001,
1535 + "HP",
1536 + "PhotoSmart R707",
1537 + US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_CAPACITY),
1538 +
1539 /* Reported by Sebastian Kapfer <sebastian_kapfer@gmx.net>
1540 * and Olaf Hering <olh@suse.de> (different bcd's, same vendor/product)
1541 * for USB floppies that need the SINGLE_LUN enforcement.
1542
1543 --
1544
1545 From gregkh@mini.kroah.org Thu Feb 7 12:43:15 2008
1546 Message-Id: <20080207204315.277165056@mini.kroah.org>
1547 References: <20080207204118.202098927@mini.kroah.org>
1548 User-Agent: quilt/0.46-1
1549 Date: Thu, 07 Feb 2008 12:41:38 -0800
1550 From: Greg KH <gregkh@suse.de>
1551 To: linux-kernel@vger.kernel.org,
1552 stable@kernel.org,
1553 linux-usb@vger.kernel.org
1554 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1555 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1556 Theodore Ts'o <tytso@mit.edu>,
1557 Randy Dunlap <rdunlap@xenotime.net>,
1558 Dave Jones <davej@redhat.com>,
1559 Chuck Wolber <chuckw@quantumlinux.com>,
1560 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1561 Michael Krufky <mkrufky@linuxtv.org>,
1562 Chuck Ebbert <cebbert@redhat.com>,
1563 Domenico Andreoli <cavokz@gmail.com>,
1564 torvalds@linux-foundation.org,
1565 akpm@linux-foundation.org,
1566 alan@lxorguk.ukuu.org.uk,
1567 Jan Andersson <jan@gaisler.com>,
1568 David Brownell <david-b@pacbell.net>
1569 Subject: [patch 20/45] USB: fix usbtest halt check on big endian systems
1570 Content-Disposition: inline; filename=usb-fix-usbtest-halt-check-on-big-endian-systems.patch
1571 Content-Length: 750
1572 Lines: 27
1573
1574
1575 2.6.24-stable review patch. If anyone has any objections, please let us know.
1576
1577 ------------------
1578 From: Jan Andersson <jan@gaisler.com>
1579
1580 usbtest did not swap the received status information when checking for
1581 a non-zero value and failed to discover halted endpoints on big endian
1582 systems.
1583
1584 Signed-off-by: Jan Andersson <jan@gaisler.com>
1585 Acked-by: David Brownell <david-b@pacbell.net>
1586 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1587
1588 ---
1589 drivers/usb/misc/usbtest.c | 1 +
1590 1 file changed, 1 insertion(+)
1591
1592 --- a/drivers/usb/misc/usbtest.c
1593 +++ b/drivers/usb/misc/usbtest.c
1594 @@ -1151,6 +1151,7 @@ static int verify_halted (int ep, struct
1595 dbg ("ep %02x couldn't get halt status, %d", ep, retval);
1596 return retval;
1597 }
1598 + le16_to_cpus(&status);
1599 if (status != 1) {
1600 dbg ("ep %02x bogus status: %04x != 1", ep, status);
1601 return -EINVAL;
1602
1603 --
1604
1605 From gregkh@mini.kroah.org Thu Feb 7 12:43:15 2008
1606 Message-Id: <20080207204315.503002723@mini.kroah.org>
1607 References: <20080207204118.202098927@mini.kroah.org>
1608 User-Agent: quilt/0.46-1
1609 Date: Thu, 07 Feb 2008 12:41:39 -0800
1610 From: Greg KH <gregkh@suse.de>
1611 To: linux-kernel@vger.kernel.org,
1612 stable@kernel.org,
1613 linux-usb@vger.kernel.org
1614 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1615 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1616 Theodore Ts'o <tytso@mit.edu>,
1617 Randy Dunlap <rdunlap@xenotime.net>,
1618 Dave Jones <davej@redhat.com>,
1619 Chuck Wolber <chuckw@quantumlinux.com>,
1620 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1621 Michael Krufky <mkrufky@linuxtv.org>,
1622 Chuck Ebbert <cebbert@redhat.com>,
1623 Domenico Andreoli <cavokz@gmail.com>,
1624 torvalds@linux-foundation.org,
1625 akpm@linux-foundation.org,
1626 alan@lxorguk.ukuu.org.uk,
1627 Janusz <janumix@poczta.fm>,
1628 Jon Masters <jcm@redhat.com>
1629 Subject: [patch 21/45] USB: handle idVendor of 0x0000
1630 Content-Disposition: inline; filename=usb-handle-idvendor-of-0x0000.patch
1631 Content-Length: 1698
1632 Lines: 45
1633
1634 2.6.24-stable review patch. If anyone has any objections, please let us know.
1635
1636 ------------------
1637 From: Greg Kroah-Hartman <gregkh@suse.de>
1638
1639 Some crazy devices in the wild have a vendor id of 0x0000. If we try to
1640 add a module alias with this id, we just can't do it due to a check in
1641 the file2alias.c file. Change the test to verify that both the vendor
1642 and product ids are 0x0000 to show a real "blank" module alias.
1643
1644 Note, the module-init-tools package also needs to be changed to properly
1645 generate the depmod tables.
1646
1647 Cc: Janusz <janumix@poczta.fm>
1648 Cc: Jon Masters <jcm@redhat.com>
1649 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1650
1651 ---
1652 drivers/usb/core/driver.c | 4 ++--
1653 scripts/mod/file2alias.c | 2 +-
1654 2 files changed, 3 insertions(+), 3 deletions(-)
1655
1656 --- a/drivers/usb/core/driver.c
1657 +++ b/drivers/usb/core/driver.c
1658 @@ -534,8 +534,8 @@ const struct usb_device_id *usb_match_id
1659 id->driver_info is the way to create an entry that
1660 indicates that the driver want to examine every
1661 device and interface. */
1662 - for (; id->idVendor || id->bDeviceClass || id->bInterfaceClass ||
1663 - id->driver_info; id++) {
1664 + for (; id->idVendor || id->idProduct || id->bDeviceClass ||
1665 + id->bInterfaceClass || id->driver_info; id++) {
1666 if (usb_match_one_id(interface, id))
1667 return id;
1668 }
1669 --- a/scripts/mod/file2alias.c
1670 +++ b/scripts/mod/file2alias.c
1671 @@ -155,7 +155,7 @@ static void do_usb_entry_multi(struct us
1672 * Some modules (visor) have empty slots as placeholder for
1673 * run-time specification that results in catch-all alias
1674 */
1675 - if (!(id->idVendor | id->bDeviceClass | id->bInterfaceClass))
1676 + if (!(id->idVendor | id->idProduct | id->bDeviceClass | id->bInterfaceClass))
1677 return;
1678
1679 /* Convert numeric bcdDevice range into fnmatch-able pattern(s) */
1680
1681 --
1682
1683 From gregkh@mini.kroah.org Thu Feb 7 12:43:15 2008
1684 Message-Id: <20080207204315.740974862@mini.kroah.org>
1685 References: <20080207204118.202098927@mini.kroah.org>
1686 User-Agent: quilt/0.46-1
1687 Date: Thu, 07 Feb 2008 12:41:40 -0800
1688 From: Greg KH <gregkh@suse.de>
1689 To: linux-kernel@vger.kernel.org,
1690 stable@kernel.org,
1691 linux-usb@vger.kernel.org
1692 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1693 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1694 Theodore Ts'o <tytso@mit.edu>,
1695 Randy Dunlap <rdunlap@xenotime.net>,
1696 Dave Jones <davej@redhat.com>,
1697 Chuck Wolber <chuckw@quantumlinux.com>,
1698 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1699 Michael Krufky <mkrufky@linuxtv.org>,
1700 Chuck Ebbert <cebbert@redhat.com>,
1701 Domenico Andreoli <cavokz@gmail.com>,
1702 torvalds@linux-foundation.org,
1703 akpm@linux-foundation.org,
1704 alan@lxorguk.ukuu.org.uk,
1705 Stefan Bader <stefan.bader@canonical.com>,
1706 Alan Cox <alan@redhat.com>
1707 Subject: [patch 22/45] USB: Fix usb_serial_driver structure for Kobil cardreader driver.
1708 Content-Disposition: inline; filename=usb-fix-usb_serial_driver-structure-for-kobil-cardreader-driver.patch
1709 Content-Length: 732
1710 Lines: 26
1711
1712
1713 2.6.24-stable review patch. If anyone has any objections, please let us know.
1714
1715 ------------------
1716 From: Stefan Bader <stefan.bader@canonical.com>
1717
1718 The device setup did miss to initialize the num_interrupt_out field, thus
1719 failing to successfully complete the probe function.
1720
1721 Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
1722 Cc: Alan Cox <alan@redhat.com>
1723 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1724
1725 ---
1726 drivers/usb/serial/kobil_sct.c | 1 +
1727 1 file changed, 1 insertion(+)
1728
1729 --- a/drivers/usb/serial/kobil_sct.c
1730 +++ b/drivers/usb/serial/kobil_sct.c
1731 @@ -114,6 +114,7 @@ static struct usb_serial_driver kobil_de
1732 .usb_driver = &kobil_driver,
1733 .id_table = id_table,
1734 .num_interrupt_in = NUM_DONT_CARE,
1735 + .num_interrupt_out = NUM_DONT_CARE,
1736 .num_bulk_in = 0,
1737 .num_bulk_out = 0,
1738 .num_ports = 1,
1739
1740 --
1741
1742 From gregkh@mini.kroah.org Thu Feb 7 12:43:16 2008
1743 Message-Id: <20080207204315.965936209@mini.kroah.org>
1744 References: <20080207204118.202098927@mini.kroah.org>
1745 User-Agent: quilt/0.46-1
1746 Date: Thu, 07 Feb 2008 12:41:41 -0800
1747 From: Greg KH <gregkh@suse.de>
1748 To: linux-kernel@vger.kernel.org,
1749 stable@kernel.org,
1750 Jeff Garzik <jgarzik@pobox.com>,
1751 Andrew Morton <akpm@osdl.org>,
1752 nedev <netdev@vger.kernel.org>
1753 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1754 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1755 Theodore Ts'o <tytso@mit.edu>,
1756 Randy Dunlap <rdunlap@xenotime.net>,
1757 Dave Jones <davej@redhat.com>,
1758 Chuck Wolber <chuckw@quantumlinux.com>,
1759 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1760 Michael Krufky <mkrufky@linuxtv.org>,
1761 Chuck Ebbert <cebbert@redhat.com>,
1762 Domenico Andreoli <cavokz@gmail.com>,
1763 torvalds@linux-foundation.org,
1764 akpm@linux-foundation.org,
1765 alan@lxorguk.ukuu.org.uk,
1766 Ayaz Abdulla <aabdulla@nvidia.com>,
1767 Jeff Garzik <jeff@garzik.org>,
1768 "David S. Miller" <davem@davemloft.net>
1769 Subject: [patch 23/45] forcedeth: mac address mcp77/79
1770 Content-Disposition: inline; filename=forcedeth-mac-address-mcp77-79.patch
1771 Content-Length: 5073
1772 Lines: 65
1773
1774 2.6.24-stable review patch. If anyone has any objections, please let us know.
1775
1776 ------------------
1777 From: Ayaz Abdulla <aabdulla@nvidia.com>
1778
1779 patch 2b91213064bd882c3adf35f028c6d12fab3269ec in mainline.
1780
1781 This patch is a critical fix for MCP77 and MCP79 devices. The feature
1782 flags were missing the define for correct mac address
1783 (DEV_HAS_CORRECT_MACADDR).
1784
1785 Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
1786 Signed-off-by: Jeff Garzik <jeff@garzik.org>
1787 Signed-off-by: David S. Miller <davem@davemloft.net>
1788 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1789
1790 ---
1791 drivers/net/forcedeth.c | 16 ++++++++--------
1792 1 file changed, 8 insertions(+), 8 deletions(-)
1793
1794 --- a/drivers/net/forcedeth.c
1795 +++ b/drivers/net/forcedeth.c
1796 @@ -5593,35 +5593,35 @@ static struct pci_device_id pci_tbl[] =
1797 },
1798 { /* MCP77 Ethernet Controller */
1799 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_32),
1800 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1801 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1802 },
1803 { /* MCP77 Ethernet Controller */
1804 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_33),
1805 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1806 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1807 },
1808 { /* MCP77 Ethernet Controller */
1809 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_34),
1810 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1811 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1812 },
1813 { /* MCP77 Ethernet Controller */
1814 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_35),
1815 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1816 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1817 },
1818 { /* MCP79 Ethernet Controller */
1819 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_36),
1820 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1821 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1822 },
1823 { /* MCP79 Ethernet Controller */
1824 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_37),
1825 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1826 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1827 },
1828 { /* MCP79 Ethernet Controller */
1829 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_38),
1830 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1831 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1832 },
1833 { /* MCP79 Ethernet Controller */
1834 PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NVENET_39),
1835 - .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT,
1836 + .driver_data = DEV_NEED_TIMERIRQ|DEV_NEED_LINKTIMER|DEV_HAS_CHECKSUM|DEV_HAS_HIGH_DMA|DEV_HAS_MSI|DEV_HAS_POWER_CNTRL|DEV_HAS_PAUSEFRAME_TX|DEV_HAS_STATISTICS_V2|DEV_HAS_TEST_EXTENDED|DEV_HAS_MGMT_UNIT|DEV_HAS_CORRECT_MACADDR,
1837 },
1838 {0,},
1839 };
1840
1841 --
1842
1843 From gregkh@mini.kroah.org Thu Feb 7 12:43:16 2008
1844 Message-Id: <20080207204316.195134186@mini.kroah.org>
1845 References: <20080207204118.202098927@mini.kroah.org>
1846 User-Agent: quilt/0.46-1
1847 Date: Thu, 07 Feb 2008 12:41:42 -0800
1848 From: Greg KH <gregkh@suse.de>
1849 To: linux-kernel@vger.kernel.org,
1850 stable@kernel.org,
1851 torvalds@linux-foundation.org
1852 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1853 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1854 Theodore Ts'o <tytso@mit.edu>,
1855 Randy Dunlap <rdunlap@xenotime.net>,
1856 Dave Jones <davej@redhat.com>,
1857 Chuck Wolber <chuckw@quantumlinux.com>,
1858 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1859 Michael Krufky <mkrufky@linuxtv.org>,
1860 Chuck Ebbert <cebbert@redhat.com>,
1861 Domenico Andreoli <cavokz@gmail.com>,
1862 akpm@linux-foundation.org,
1863 alan@lxorguk.ukuu.org.uk,
1864 stefanr@s5r6.in-berlin.de,
1865 a.p.zijlstra@chello.nl,
1866 davidel@xmailserver.org
1867 Subject: [patch 24/45] lockdep: annotate epoll
1868 Content-Disposition: inline; filename=lockdep-annotate-epoll.patch
1869 Content-Length: 3128
1870 Lines: 89
1871
1872
1873 2.6.24-stable review patch. If anyone has any objections, please let us know.
1874
1875 ------------------
1876 From: Peter Zijlstra <a.p.zijlstra@chello.nl>
1877
1878 patch 0ccf831cbee94df9c5006dd46248c0f07847dd7c in mainline.
1879
1880 On Sat, 2008-01-05 at 13:35 -0800, Davide Libenzi wrote:
1881
1882 > I remember I talked with Arjan about this time ago. Basically, since 1)
1883 > you can drop an epoll fd inside another epoll fd 2) callback-based wakeups
1884 > are used, you can see a wake_up() from inside another wake_up(), but they
1885 > will never refer to the same lock instance.
1886 > Think about:
1887 >
1888 > dfd = socket(...);
1889 > efd1 = epoll_create();
1890 > efd2 = epoll_create();
1891 > epoll_ctl(efd1, EPOLL_CTL_ADD, dfd, ...);
1892 > epoll_ctl(efd2, EPOLL_CTL_ADD, efd1, ...);
1893 >
1894 > When a packet arrives to the device underneath "dfd", the net code will
1895 > issue a wake_up() on its poll wake list. Epoll (efd1) has installed a
1896 > callback wakeup entry on that queue, and the wake_up() performed by the
1897 > "dfd" net code will end up in ep_poll_callback(). At this point epoll
1898 > (efd1) notices that it may have some event ready, so it needs to wake up
1899 > the waiters on its poll wait list (efd2). So it calls ep_poll_safewake()
1900 > that ends up in another wake_up(), after having checked about the
1901 > recursion constraints. That are, no more than EP_MAX_POLLWAKE_NESTS, to
1902 > avoid stack blasting. Never hit the same queue, to avoid loops like:
1903 >
1904 > epoll_ctl(efd2, EPOLL_CTL_ADD, efd1, ...);
1905 > epoll_ctl(efd3, EPOLL_CTL_ADD, efd2, ...);
1906 > epoll_ctl(efd4, EPOLL_CTL_ADD, efd3, ...);
1907 > epoll_ctl(efd1, EPOLL_CTL_ADD, efd4, ...);
1908 >
1909 > The code "if (tncur->wq == wq || ..." prevents re-entering the same
1910 > queue/lock.
1911
1912 Since the epoll code is very careful to not nest same instance locks
1913 allow the recursion.
1914
1915 Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
1916 Tested-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
1917 Acked-by: Davide Libenzi <davidel@xmailserver.org>
1918 Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1919 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1920
1921 ---
1922 fs/eventpoll.c | 2 +-
1923 include/linux/wait.h | 16 ++++++++++++++++
1924 2 files changed, 17 insertions(+), 1 deletion(-)
1925
1926 --- a/fs/eventpoll.c
1927 +++ b/fs/eventpoll.c
1928 @@ -353,7 +353,7 @@ static void ep_poll_safewake(struct poll
1929 spin_unlock_irqrestore(&psw->lock, flags);
1930
1931 /* Do really wake up now */
1932 - wake_up(wq);
1933 + wake_up_nested(wq, 1 + wake_nests);
1934
1935 /* Remove the current task from the list */
1936 spin_lock_irqsave(&psw->lock, flags);
1937 --- a/include/linux/wait.h
1938 +++ b/include/linux/wait.h
1939 @@ -161,6 +161,22 @@ wait_queue_head_t *FASTCALL(bit_waitqueu
1940 #define wake_up_locked(x) __wake_up_locked((x), TASK_UNINTERRUPTIBLE | TASK_INTERRUPTIBLE)
1941 #define wake_up_interruptible_sync(x) __wake_up_sync((x),TASK_INTERRUPTIBLE, 1)
1942
1943 +#ifdef CONFIG_DEBUG_LOCK_ALLOC
1944 +/*
1945 + * macro to avoid include hell
1946 + */
1947 +#define wake_up_nested(x, s) \
1948 +do { \
1949 + unsigned long flags; \
1950 + \
1951 + spin_lock_irqsave_nested(&(x)->lock, flags, (s)); \
1952 + wake_up_locked(x); \
1953 + spin_unlock_irqrestore(&(x)->lock, flags); \
1954 +} while (0)
1955 +#else
1956 +#define wake_up_nested(x, s) wake_up(x)
1957 +#endif
1958 +
1959 #define __wait_event(wq, condition) \
1960 do { \
1961 DEFINE_WAIT(__wait); \
1962
1963 --
1964
1965 From gregkh@mini.kroah.org Thu Feb 7 12:43:16 2008
1966 Message-Id: <20080207204316.424546949@mini.kroah.org>
1967 References: <20080207204118.202098927@mini.kroah.org>
1968 User-Agent: quilt/0.46-1
1969 Date: Thu, 07 Feb 2008 12:41:43 -0800
1970 From: Greg KH <gregkh@suse.de>
1971 To: linux-kernel@vger.kernel.org,
1972 stable@kernel.org,
1973 torvalds@linux-foundation.org
1974 Cc: Justin Forbes <jmforbes@linuxtx.org>,
1975 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
1976 Theodore Ts'o <tytso@mit.edu>,
1977 Randy Dunlap <rdunlap@xenotime.net>,
1978 Dave Jones <davej@redhat.com>,
1979 Chuck Wolber <chuckw@quantumlinux.com>,
1980 Chris Wedgwood <reviews@ml.cw.f00f.org>,
1981 Michael Krufky <mkrufky@linuxtv.org>,
1982 Chuck Ebbert <cebbert@redhat.com>,
1983 Domenico Andreoli <cavokz@gmail.com>,
1984 akpm@linux-foundation.org,
1985 alan@lxorguk.ukuu.org.uk,
1986 mszeredi@suse.cz,
1987 oleg@tv-sign.ru
1988 Subject: [patch 25/45] sys_remap_file_pages: fix ->vm_file accounting
1989 Content-Disposition: inline; filename=sys_remap_file_pages-fix-vm_file-accounting.patch
1990 Content-Length: 982
1991 Lines: 36
1992
1993
1994 2.6.24-stable review patch. If anyone has any objections, please let us know.
1995
1996 ------------------
1997 From: Oleg Nesterov <oleg@tv-sign.ru>
1998
1999 patch 8a459e44ad837018ea5c34a9efe8eb4ad27ded26 in mainline.
2000
2001 Fix ->vm_file accounting, mmap_region() may do do_munmap().
2002
2003 Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
2004 Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
2005 Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2006 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008 ---
2009
2010 mm/fremap.c | 5 ++++-
2011 1 file changed, 4 insertions(+), 1 deletion(-)
2012
2013 --- a/mm/fremap.c
2014 +++ b/mm/fremap.c
2015 @@ -190,10 +190,13 @@ asmlinkage long sys_remap_file_pages(uns
2016 */
2017 if (mapping_cap_account_dirty(mapping)) {
2018 unsigned long addr;
2019 + struct file *file = vma->vm_file;
2020
2021 flags &= MAP_NONBLOCK;
2022 - addr = mmap_region(vma->vm_file, start, size,
2023 + get_file(file);
2024 + addr = mmap_region(file, start, size,
2025 flags, vma->vm_flags, pgoff, 1);
2026 + fput(file);
2027 if (IS_ERR_VALUE(addr)) {
2028 err = addr;
2029 } else {
2030
2031 --
2032
2033 From gregkh@mini.kroah.org Thu Feb 7 12:43:16 2008
2034 Message-Id: <20080207204316.651252794@mini.kroah.org>
2035 References: <20080207204118.202098927@mini.kroah.org>
2036 User-Agent: quilt/0.46-1
2037 Date: Thu, 07 Feb 2008 12:41:44 -0800
2038 From: Greg KH <gregkh@suse.de>
2039 To: linux-kernel@vger.kernel.org,
2040 stable@kernel.org
2041 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2042 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2043 Theodore Ts'o <tytso@mit.edu>,
2044 Randy Dunlap <rdunlap@xenotime.net>,
2045 Dave Jones <davej@redhat.com>,
2046 Chuck Wolber <chuckw@quantumlinux.com>,
2047 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2048 Michael Krufky <mkrufky@linuxtv.org>,
2049 Chuck Ebbert <cebbert@redhat.com>,
2050 Domenico Andreoli <cavokz@gmail.com>,
2051 torvalds@linux-foundation.org,
2052 akpm@linux-foundation.org,
2053 alan@lxorguk.ukuu.org.uk,
2054 linux-pci@atrey.karlin.mff.cuni.cz,
2055 Ian Abbott <abbotti@mev.co.uk>
2056 Subject: [patch 26/45] PCI: Fix fakephp deadlock
2057 Content-Disposition: inline; filename=pci-fix-fakephp-deadlock.patch
2058 Content-Length: 3974
2059 Lines: 131
2060
2061
2062 2.6.24-stable review patch. If anyone has any objections, please let us know.
2063
2064 ------------------
2065 From: Ian Abbott <abbotti@mev.co.uk>
2066
2067 This patch works around a problem in the fakephp driver when a process
2068 writing "0" to a "power" sysfs file to fake removal of a PCI device ends
2069 up deadlocking itself in the sysfs code.
2070
2071 The patch was recently accepted into Linus' tree after the 2.6.24 release:
2072 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=5c796ae7a7ebe56967ed9b9963d7c16d733635ff
2073
2074 Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
2075 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2076
2077 ---
2078 drivers/pci/hotplug/fakephp.c | 39 +++++++++++++++++++++++++++++++++++----
2079 1 file changed, 35 insertions(+), 4 deletions(-)
2080
2081 --- a/drivers/pci/hotplug/fakephp.c
2082 +++ b/drivers/pci/hotplug/fakephp.c
2083 @@ -39,6 +39,7 @@
2084 #include <linux/init.h>
2085 #include <linux/string.h>
2086 #include <linux/slab.h>
2087 +#include <linux/workqueue.h>
2088 #include "../pci.h"
2089
2090 #if !defined(MODULE)
2091 @@ -63,10 +64,16 @@ struct dummy_slot {
2092 struct list_head node;
2093 struct hotplug_slot *slot;
2094 struct pci_dev *dev;
2095 + struct work_struct remove_work;
2096 + unsigned long removed;
2097 };
2098
2099 static int debug;
2100 static LIST_HEAD(slot_list);
2101 +static struct workqueue_struct *dummyphp_wq;
2102 +
2103 +static void pci_rescan_worker(struct work_struct *work);
2104 +static DECLARE_WORK(pci_rescan_work, pci_rescan_worker);
2105
2106 static int enable_slot (struct hotplug_slot *slot);
2107 static int disable_slot (struct hotplug_slot *slot);
2108 @@ -109,7 +116,7 @@ static int add_slot(struct pci_dev *dev)
2109 slot->name = &dev->dev.bus_id[0];
2110 dbg("slot->name = %s\n", slot->name);
2111
2112 - dslot = kmalloc(sizeof(struct dummy_slot), GFP_KERNEL);
2113 + dslot = kzalloc(sizeof(struct dummy_slot), GFP_KERNEL);
2114 if (!dslot)
2115 goto error_info;
2116
2117 @@ -164,6 +171,14 @@ static void remove_slot(struct dummy_slo
2118 err("Problem unregistering a slot %s\n", dslot->slot->name);
2119 }
2120
2121 +/* called from the single-threaded workqueue handler to remove a slot */
2122 +static void remove_slot_worker(struct work_struct *work)
2123 +{
2124 + struct dummy_slot *dslot =
2125 + container_of(work, struct dummy_slot, remove_work);
2126 + remove_slot(dslot);
2127 +}
2128 +
2129 /**
2130 * pci_rescan_slot - Rescan slot
2131 * @temp: Device template. Should be set: bus and devfn.
2132 @@ -267,11 +282,17 @@ static inline void pci_rescan(void) {
2133 pci_rescan_buses(&pci_root_buses);
2134 }
2135
2136 +/* called from the single-threaded workqueue handler to rescan all pci buses */
2137 +static void pci_rescan_worker(struct work_struct *work)
2138 +{
2139 + pci_rescan();
2140 +}
2141
2142 static int enable_slot(struct hotplug_slot *hotplug_slot)
2143 {
2144 /* mis-use enable_slot for rescanning of the pci bus */
2145 - pci_rescan();
2146 + cancel_work_sync(&pci_rescan_work);
2147 + queue_work(dummyphp_wq, &pci_rescan_work);
2148 return -ENODEV;
2149 }
2150
2151 @@ -306,6 +327,10 @@ static int disable_slot(struct hotplug_s
2152 err("Can't remove PCI devices with other PCI devices behind it yet.\n");
2153 return -ENODEV;
2154 }
2155 + if (test_and_set_bit(0, &dslot->removed)) {
2156 + dbg("Slot already scheduled for removal\n");
2157 + return -ENODEV;
2158 + }
2159 /* search for subfunctions and disable them first */
2160 if (!(dslot->dev->devfn & 7)) {
2161 for (func = 1; func < 8; func++) {
2162 @@ -328,8 +353,9 @@ static int disable_slot(struct hotplug_s
2163 /* remove the device from the pci core */
2164 pci_remove_bus_device(dslot->dev);
2165
2166 - /* blow away this sysfs entry and other parts. */
2167 - remove_slot(dslot);
2168 + /* queue work item to blow away this sysfs entry and other parts. */
2169 + INIT_WORK(&dslot->remove_work, remove_slot_worker);
2170 + queue_work(dummyphp_wq, &dslot->remove_work);
2171
2172 return 0;
2173 }
2174 @@ -340,6 +366,7 @@ static void cleanup_slots (void)
2175 struct list_head *next;
2176 struct dummy_slot *dslot;
2177
2178 + destroy_workqueue(dummyphp_wq);
2179 list_for_each_safe (tmp, next, &slot_list) {
2180 dslot = list_entry (tmp, struct dummy_slot, node);
2181 remove_slot(dslot);
2182 @@ -351,6 +378,10 @@ static int __init dummyphp_init(void)
2183 {
2184 info(DRIVER_DESC "\n");
2185
2186 + dummyphp_wq = create_singlethread_workqueue(MY_NAME);
2187 + if (!dummyphp_wq)
2188 + return -ENOMEM;
2189 +
2190 return pci_scan_buses();
2191 }
2192
2193
2194 --
2195
2196 From gregkh@mini.kroah.org Thu Feb 7 12:43:17 2008
2197 Message-Id: <20080207204316.876873553@mini.kroah.org>
2198 References: <20080207204118.202098927@mini.kroah.org>
2199 User-Agent: quilt/0.46-1
2200 Date: Thu, 07 Feb 2008 12:41:45 -0800
2201 From: Greg KH <gregkh@suse.de>
2202 To: linux-kernel@vger.kernel.org,
2203 stable@kernel.org
2204 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2205 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2206 Theodore Ts'o <tytso@mit.edu>,
2207 Randy Dunlap <rdunlap@xenotime.net>,
2208 Dave Jones <davej@redhat.com>,
2209 Chuck Wolber <chuckw@quantumlinux.com>,
2210 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2211 Michael Krufky <mkrufky@linuxtv.org>,
2212 Chuck Ebbert <cebbert@redhat.com>,
2213 Domenico Andreoli <cavokz@gmail.com>,
2214 torvalds@linux-foundation.org,
2215 akpm@linux-foundation.org,
2216 alan@lxorguk.ukuu.org.uk,
2217 Len Brown <len.brown@intel.com>
2218 Subject: [patch 27/45] ACPI: update ACPI blacklist
2219 Content-Disposition: inline; filename=acpi-update-acpi-blacklist.patch
2220 Content-Length: 4598
2221 Lines: 152
2222
2223
2224 2.6.24-stable review patch. If anyone has any objections, please let us know.
2225
2226 ------------------
2227 From: Len Brown <len.brown@intel.com>
2228
2229 These minor changes sync the latest ACPI blacklist into 2.6.24.
2230 The main benefit of this patch is to make any future
2231 changes easier to apply. The immediate benefit is one less
2232 dmesg line on Acer systems.
2233
2234 Signed-off-by: Len Brown <len.brown@intel.com>
2235 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2236
2237 ---
2238 drivers/acpi/blacklist.c | 23 ++++++++++++++---------
2239 drivers/acpi/osl.c | 16 ++++++++--------
2240 drivers/firmware/dmi_scan.c | 9 ---------
2241 include/linux/dmi.h | 2 --
2242 4 files changed, 22 insertions(+), 28 deletions(-)
2243
2244 --- a/drivers/acpi/blacklist.c
2245 +++ b/drivers/acpi/blacklist.c
2246 @@ -208,24 +208,24 @@ static struct dmi_system_id acpi_osi_dmi
2247 * Disable OSI(Linux) warnings on all "Acer, inc."
2248 *
2249 * _OSI(Linux) disables the latest Windows BIOS code:
2250 + * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 3100"),
2251 * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5050"),
2252 + * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5100"),
2253 * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5580"),
2254 * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 3010"),
2255 * _OSI(Linux) effect unknown:
2256 * DMI_MATCH(DMI_PRODUCT_NAME, "Ferrari 5000"),
2257 */
2258 - {
2259 - .callback = dmi_disable_osi_linux,
2260 - .ident = "Acer, inc.",
2261 - .matches = {
2262 - DMI_MATCH(DMI_SYS_VENDOR, "Acer, inc."),
2263 - },
2264 - },
2265 + /*
2266 + * note that dmi_check_system() uses strstr()
2267 + * to match sub-strings rather than !strcmp(),
2268 + * so "Acer" below matches "Acer, inc." above.
2269 + */
2270 /*
2271 * Disable OSI(Linux) warnings on all "Acer"
2272 *
2273 * _OSI(Linux) effect unknown:
2274 - * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5100"),
2275 + * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5315"),
2276 * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5610"),
2277 * DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 7720Z"),
2278 * DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 5520"),
2279 @@ -300,7 +300,7 @@ static struct dmi_system_id acpi_osi_dmi
2280 DMI_MATCH(DMI_BIOS_VENDOR, "COMPAL"),
2281 },
2282 },
2283 - { /* OSI(Linux) touches USB, breaks suspend to disk */
2284 + { /* OSI(Linux) touches USB, unknown side-effect */
2285 .callback = dmi_disable_osi_linux,
2286 .ident = "Dell Dimension 5150",
2287 .matches = {
2288 @@ -474,6 +474,11 @@ static struct dmi_system_id acpi_osi_dmi
2289 *
2290 * _OSI(Linux) confirmed to be a NOP:
2291 * DMI_MATCH(DMI_PRODUCT_NAME, "P1-J150B"),
2292 + * with DMI_MATCH(DMI_BOARD_NAME, "ROCKY"),
2293 + *
2294 + * unknown:
2295 + * DMI_MATCH(DMI_PRODUCT_NAME, "S1-MDGDG"),
2296 + * with DMI_MATCH(DMI_BOARD_NAME, "ROCKY"),
2297 */
2298 {
2299 .callback = dmi_disable_osi_linux,
2300 --- a/drivers/acpi/osl.c
2301 +++ b/drivers/acpi/osl.c
2302 @@ -120,7 +120,7 @@ static char osi_additional_string[OSI_ST
2303 */
2304 #define OSI_LINUX_ENABLE 0
2305
2306 -struct osi_linux {
2307 +static struct osi_linux {
2308 unsigned int enable:1;
2309 unsigned int dmi:1;
2310 unsigned int cmdline:1;
2311 @@ -1213,24 +1213,24 @@ acpi_status acpi_os_release_object(acpi_
2312 *
2313 * Returns 0 on success
2314 */
2315 -int acpi_dmi_dump(void)
2316 +static int acpi_dmi_dump(void)
2317 {
2318
2319 if (!dmi_available)
2320 return -1;
2321
2322 printk(KERN_NOTICE PREFIX "DMI System Vendor: %s\n",
2323 - dmi_get_slot(DMI_SYS_VENDOR));
2324 + dmi_get_system_info(DMI_SYS_VENDOR));
2325 printk(KERN_NOTICE PREFIX "DMI Product Name: %s\n",
2326 - dmi_get_slot(DMI_PRODUCT_NAME));
2327 + dmi_get_system_info(DMI_PRODUCT_NAME));
2328 printk(KERN_NOTICE PREFIX "DMI Product Version: %s\n",
2329 - dmi_get_slot(DMI_PRODUCT_VERSION));
2330 + dmi_get_system_info(DMI_PRODUCT_VERSION));
2331 printk(KERN_NOTICE PREFIX "DMI Board Name: %s\n",
2332 - dmi_get_slot(DMI_BOARD_NAME));
2333 + dmi_get_system_info(DMI_BOARD_NAME));
2334 printk(KERN_NOTICE PREFIX "DMI BIOS Vendor: %s\n",
2335 - dmi_get_slot(DMI_BIOS_VENDOR));
2336 + dmi_get_system_info(DMI_BIOS_VENDOR));
2337 printk(KERN_NOTICE PREFIX "DMI BIOS Date: %s\n",
2338 - dmi_get_slot(DMI_BIOS_DATE));
2339 + dmi_get_system_info(DMI_BIOS_DATE));
2340
2341 return 0;
2342 }
2343 --- a/drivers/firmware/dmi_scan.c
2344 +++ b/drivers/firmware/dmi_scan.c
2345 @@ -469,12 +469,3 @@ int dmi_get_year(int field)
2346
2347 return year;
2348 }
2349 -
2350 -/**
2351 - * dmi_get_slot - return dmi_ident[slot]
2352 - * @slot: index into dmi_ident[]
2353 - */
2354 -char *dmi_get_slot(int slot)
2355 -{
2356 - return(dmi_ident[slot]);
2357 -}
2358 --- a/include/linux/dmi.h
2359 +++ b/include/linux/dmi.h
2360 @@ -79,7 +79,6 @@ extern void dmi_scan_machine(void);
2361 extern int dmi_get_year(int field);
2362 extern int dmi_name_in_vendors(const char *str);
2363 extern int dmi_available;
2364 -extern char *dmi_get_slot(int slot);
2365
2366 #else
2367
2368 @@ -90,7 +89,6 @@ static inline const struct dmi_device *
2369 static inline int dmi_get_year(int year) { return 0; }
2370 static inline int dmi_name_in_vendors(const char *s) { return 0; }
2371 #define dmi_available 0
2372 -static inline char *dmi_get_slot(int slot) { return NULL; }
2373
2374 #endif
2375
2376
2377 --
2378
2379 From gregkh@mini.kroah.org Thu Feb 7 12:43:17 2008
2380 Message-Id: <20080207204317.103489448@mini.kroah.org>
2381 References: <20080207204118.202098927@mini.kroah.org>
2382 User-Agent: quilt/0.46-1
2383 Date: Thu, 07 Feb 2008 12:41:46 -0800
2384 From: Greg KH <gregkh@suse.de>
2385 To: linux-kernel@vger.kernel.org,
2386 stable@kernel.org
2387 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2388 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2389 Theodore Ts'o <tytso@mit.edu>,
2390 Randy Dunlap <rdunlap@xenotime.net>,
2391 Dave Jones <davej@redhat.com>,
2392 Chuck Wolber <chuckw@quantumlinux.com>,
2393 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2394 Michael Krufky <mkrufky@linuxtv.org>,
2395 Chuck Ebbert <cebbert@redhat.com>,
2396 Domenico Andreoli <cavokz@gmail.com>,
2397 torvalds@linux-foundation.org,
2398 akpm@linux-foundation.org,
2399 alan@lxorguk.ukuu.org.uk,
2400 Sam Ravnborg <sam@ravnborg.org>,
2401 "Cc: Ingo Molnar" <mingo@elte.hu>,
2402 "H. Peter Anvin" <hpa@zytor.com>,
2403 "A.E.Lawrence" <lawrence_a_e@ntlworld.com>,
2404 Thomas Gleixner <tglx@linutronix.de>
2405 Subject: [patch 28/45] x86: restore correct module name for apm
2406 Content-Disposition: inline; filename=x86-restore-correct-module-name-for-apm.patch
2407 Content-Length: 1259
2408 Lines: 37
2409
2410 2.6.24-stable review patch. If anyone has any objections, please let us know.
2411
2412 ------------------
2413 From: Sam Ravnborg <sam@ravnborg.org>
2414
2415 patch 3a900d89db35c133bc0874e71d9156b22db362b4 in mainline
2416
2417 The apm module were renamed to apm_32 during the merge of 32 and 64 bit
2418 x86 which is unfortunate. As apm is 32 bit specific we like to keep the
2419 _32 in the filename but the module should be named apm.
2420
2421 Fix this in the Makefile.
2422
2423 Reported-by: "A.E.Lawrence" <lawrence_a_e@ntlworld.com>
2424 Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2425 Cc: Cc: Ingo Molnar <mingo@elte.hu>
2426 Cc: "H. Peter Anvin" <hpa@zytor.com>
2427 Cc: "A.E.Lawrence" <lawrence_a_e@ntlworld.com>
2428 Signed-off-by: Ingo Molnar <mingo@elte.hu>
2429 Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2430 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2431
2432 ---
2433 arch/x86/kernel/Makefile_32 | 3 ++-
2434 1 file changed, 2 insertions(+), 1 deletion(-)
2435
2436 --- a/arch/x86/kernel/Makefile_32
2437 +++ b/arch/x86/kernel/Makefile_32
2438 @@ -19,7 +19,8 @@ obj-$(CONFIG_X86_MSR) += msr.o
2439 obj-$(CONFIG_X86_CPUID) += cpuid.o
2440 obj-$(CONFIG_MICROCODE) += microcode.o
2441 obj-$(CONFIG_PCI) += early-quirks.o
2442 -obj-$(CONFIG_APM) += apm_32.o
2443 +apm-y := apm_32.o
2444 +obj-$(CONFIG_APM) += apm.o
2445 obj-$(CONFIG_X86_SMP) += smp_32.o smpboot_32.o tsc_sync.o
2446 obj-$(CONFIG_SMP) += smpcommon_32.o
2447 obj-$(CONFIG_X86_TRAMPOLINE) += trampoline_32.o
2448
2449 --
2450
2451 From gregkh@mini.kroah.org Thu Feb 7 12:43:17 2008
2452 Message-Id: <20080207204317.329787970@mini.kroah.org>
2453 References: <20080207204118.202098927@mini.kroah.org>
2454 User-Agent: quilt/0.46-1
2455 Date: Thu, 07 Feb 2008 12:41:47 -0800
2456 From: Greg KH <gregkh@suse.de>
2457 To: linux-kernel@vger.kernel.org,
2458 stable@kernel.org
2459 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2460 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2461 Theodore Ts'o <tytso@mit.edu>,
2462 Randy Dunlap <rdunlap@xenotime.net>,
2463 Dave Jones <davej@redhat.com>,
2464 Chuck Wolber <chuckw@quantumlinux.com>,
2465 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2466 Michael Krufky <mkrufky@linuxtv.org>,
2467 Chuck Ebbert <cebbert@redhat.com>,
2468 Domenico Andreoli <cavokz@gmail.com>,
2469 torvalds@linux-foundation.org,
2470 akpm@linux-foundation.org,
2471 alan@lxorguk.ukuu.org.uk,
2472 Stephen Hemminger <shemminger@linux-foundation.org>
2473 Subject: [patch 29/45] sky2: restore multicast addresses after recovery
2474 Content-Disposition: inline; filename=sky2-restore-multicast-addresses-after-recovery.patch
2475 Content-Length: 1081
2476 Lines: 45
2477
2478 2.6.24-stable review patch. If anyone has any objections, please let us know.
2479
2480 ------------------
2481 From: Stephen Hemminger <shemminger@linux-foundation.org>
2482
2483 patch a7bffe722c996679b4fb2103ecaf673ec2b9b4a7 in mainline.
2484
2485 If the sky2 deadman timer forces a recovery, the multicast hash
2486 list is lost. Move the call to sky2_set_multicast to the end
2487 of sky2_up() so all paths that bring device up will restore multicast.
2488
2489 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2490 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2491
2492 ---
2493 drivers/net/sky2.c | 5 +----
2494 1 file changed, 1 insertion(+), 4 deletions(-)
2495
2496 --- a/drivers/net/sky2.c
2497 +++ b/drivers/net/sky2.c
2498 @@ -1412,6 +1412,7 @@ static int sky2_up(struct net_device *de
2499 imask |= portirq_msk[port];
2500 sky2_write32(hw, B0_IMSK, imask);
2501
2502 + sky2_set_multicast(dev);
2503 return 0;
2504
2505 err_out:
2506 @@ -3533,8 +3534,6 @@ static int sky2_set_ringparam(struct net
2507 err = sky2_up(dev);
2508 if (err)
2509 dev_close(dev);
2510 - else
2511 - sky2_set_multicast(dev);
2512 }
2513
2514 return err;
2515 @@ -4368,8 +4367,6 @@ static int sky2_resume(struct pci_dev *p
2516 dev_close(dev);
2517 goto out;
2518 }
2519 -
2520 - sky2_set_multicast(dev);
2521 }
2522 }
2523
2524
2525 --
2526
2527 From gregkh@mini.kroah.org Thu Feb 7 12:43:17 2008
2528 Message-Id: <20080207204317.554980290@mini.kroah.org>
2529 References: <20080207204118.202098927@mini.kroah.org>
2530 User-Agent: quilt/0.46-1
2531 Date: Thu, 07 Feb 2008 12:41:48 -0800
2532 From: Greg KH <gregkh@suse.de>
2533 To: linux-kernel@vger.kernel.org,
2534 stable@kernel.org
2535 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2536 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2537 Theodore Ts'o <tytso@mit.edu>,
2538 Randy Dunlap <rdunlap@xenotime.net>,
2539 Dave Jones <davej@redhat.com>,
2540 Chuck Wolber <chuckw@quantumlinux.com>,
2541 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2542 Michael Krufky <mkrufky@linuxtv.org>,
2543 Chuck Ebbert <cebbert@redhat.com>,
2544 Domenico Andreoli <cavokz@gmail.com>,
2545 torvalds@linux-foundation.org,
2546 akpm@linux-foundation.org,
2547 alan@lxorguk.ukuu.org.uk,
2548 Stephen Hemminger <shemminger@linux-foundation.org>
2549 Subject: [patch 30/45] sky2: fix for WOL on some devices
2550 Content-Disposition: inline; filename=sky2-fix-for-wol-on-some-devices.patch
2551 Content-Length: 2459
2552 Lines: 75
2553
2554 2.6.24-stable review patch. If anyone has any objections, please let us know.
2555
2556 ------------------
2557 From: Stephen Hemminger <shemminger@linux-foundation.org>
2558
2559 patch 82637e808478087ce861129745fa60cc37e7929d in mainline
2560
2561 This patch disables config mode access after clearing PCI settings.
2562 Without this change WOL won't work on some BIOS's
2563
2564 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2565 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2566
2567 ---
2568 drivers/net/sky2.c | 9 ++++++++-
2569 1 file changed, 8 insertions(+), 1 deletion(-)
2570
2571 --- a/drivers/net/sky2.c
2572 +++ b/drivers/net/sky2.c
2573 @@ -621,6 +621,7 @@ static void sky2_phy_power(struct sky2_h
2574 static const u32 phy_power[] = { PCI_Y2_PHY1_POWD, PCI_Y2_PHY2_POWD };
2575 static const u32 coma_mode[] = { PCI_Y2_PHY1_COMA, PCI_Y2_PHY2_COMA };
2576
2577 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2578 reg1 = sky2_pci_read32(hw, PCI_DEV_REG1);
2579 /* Turn on/off phy power saving */
2580 if (onoff)
2581 @@ -632,7 +633,8 @@ static void sky2_phy_power(struct sky2_h
2582 reg1 |= coma_mode[port];
2583
2584 sky2_pci_write32(hw, PCI_DEV_REG1, reg1);
2585 - reg1 = sky2_pci_read32(hw, PCI_DEV_REG1);
2586 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2587 + sky2_pci_read32(hw, PCI_DEV_REG1);
2588
2589 udelay(100);
2590 }
2591 @@ -2427,6 +2429,7 @@ static void sky2_hw_intr(struct sky2_hw
2592 if (status & (Y2_IS_MST_ERR | Y2_IS_IRQ_STAT)) {
2593 u16 pci_err;
2594
2595 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2596 pci_err = sky2_pci_read16(hw, PCI_STATUS);
2597 if (net_ratelimit())
2598 dev_err(&pdev->dev, "PCI hardware error (0x%x)\n",
2599 @@ -2434,12 +2437,14 @@ static void sky2_hw_intr(struct sky2_hw
2600
2601 sky2_pci_write16(hw, PCI_STATUS,
2602 pci_err | PCI_STATUS_ERROR_BITS);
2603 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2604 }
2605
2606 if (status & Y2_IS_PCI_EXP) {
2607 /* PCI-Express uncorrectable Error occurred */
2608 u32 err;
2609
2610 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_ON);
2611 err = sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS);
2612 sky2_write32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS,
2613 0xfffffffful);
2614 @@ -2447,6 +2452,7 @@ static void sky2_hw_intr(struct sky2_hw
2615 dev_err(&pdev->dev, "PCI Express error (0x%x)\n", err);
2616
2617 sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS);
2618 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2619 }
2620
2621 if (status & Y2_HWE_L1_MASK)
2622 @@ -2812,6 +2818,7 @@ static void sky2_reset(struct sky2_hw *h
2623 }
2624
2625 sky2_power_on(hw);
2626 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2627
2628 for (i = 0; i < hw->ports; i++) {
2629 sky2_write8(hw, SK_REG(i, GMAC_LINK_CTRL), GMLC_RST_SET);
2630
2631 --
2632
2633 From gregkh@mini.kroah.org Thu Feb 7 12:43:17 2008
2634 Message-Id: <20080207204317.779802811@mini.kroah.org>
2635 References: <20080207204118.202098927@mini.kroah.org>
2636 User-Agent: quilt/0.46-1
2637 Date: Thu, 07 Feb 2008 12:41:49 -0800
2638 From: Greg KH <gregkh@suse.de>
2639 To: linux-kernel@vger.kernel.org,
2640 stable@kernel.org
2641 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2642 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2643 Theodore Ts'o <tytso@mit.edu>,
2644 Randy Dunlap <rdunlap@xenotime.net>,
2645 Dave Jones <davej@redhat.com>,
2646 Chuck Wolber <chuckw@quantumlinux.com>,
2647 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2648 Michael Krufky <mkrufky@linuxtv.org>,
2649 Chuck Ebbert <cebbert@redhat.com>,
2650 Domenico Andreoli <cavokz@gmail.com>,
2651 torvalds@linux-foundation.org,
2652 akpm@linux-foundation.org,
2653 alan@lxorguk.ukuu.org.uk,
2654 linux-wireless@vger.kernel.org,
2655 bcm43xx-dev@lists.berlios.de,
2656 Michael Buesch <mb@bu3sch.de>,
2657 "John W. Linville" <linville@tuxdriver.com>,
2658 "David S. Miller" <davem@davemloft.net>
2659 Subject: [patch 31/45] b43: Fix suspend/resume
2660 Content-Disposition: inline; filename=b43-fix-suspend-resume.patch
2661 Content-Length: 1775
2662 Lines: 50
2663
2664 2.6.24-stable review patch. If anyone has any objections, please let us know.
2665
2666 ------------------
2667 From: Michael Buesch <mb@bu3sch.de>
2668
2669 patch 7be1bb6b798d506693d2d8668e801951996b5a4a in mainline.
2670
2671 This patch makes suspend/resume work with the b43 driver.
2672 We must not overwrite the MAC addresses in the init function, as this
2673 would also overwrite the MAC on resume. With an all-zero MAC the device
2674 firmware is not able to ACK any received packets anymore.
2675 Fix this by moving the initializion stuff that must be done on init but
2676 not on resume to the start function.
2677 Also zero out filter_flags to make sure we don't have some flags
2678 from a previous instance for a tiny timeframe until mac80211 reconfigures
2679 them.
2680
2681 Signed-off-by: Michael Buesch <mb@bu3sch.de>
2682 Signed-off-by: John W. Linville <linville@tuxdriver.com>
2683 Signed-off-by: David S. Miller <davem@davemloft.net>
2684 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2685
2686 ---
2687 drivers/net/wireless/b43/main.c | 9 +++++++--
2688 1 file changed, 7 insertions(+), 2 deletions(-)
2689
2690 --- a/drivers/net/wireless/b43/main.c
2691 +++ b/drivers/net/wireless/b43/main.c
2692 @@ -3395,8 +3395,6 @@ static int b43_wireless_core_init(struct
2693 b43_bluetooth_coext_enable(dev);
2694
2695 ssb_bus_powerup(bus, 1); /* Enable dynamic PCTL */
2696 - memset(wl->bssid, 0, ETH_ALEN);
2697 - memset(wl->mac_addr, 0, ETH_ALEN);
2698 b43_upload_card_macaddress(dev);
2699 b43_security_init(dev);
2700 b43_rng_init(wl);
2701 @@ -3493,6 +3491,13 @@ static int b43_start(struct ieee80211_hw
2702 int did_init = 0;
2703 int err = 0;
2704
2705 + /* Kill all old instance specific information to make sure
2706 + * the card won't use it in the short timeframe between start
2707 + * and mac80211 reconfiguring it. */
2708 + memset(wl->bssid, 0, ETH_ALEN);
2709 + memset(wl->mac_addr, 0, ETH_ALEN);
2710 + wl->filter_flags = 0;
2711 +
2712 /* First register RFkill.
2713 * LEDs that are registered later depend on it. */
2714 b43_rfkill_init(dev);
2715
2716 --
2717
2718 From gregkh@mini.kroah.org Thu Feb 7 12:43:18 2008
2719 Message-Id: <20080207204318.004970820@mini.kroah.org>
2720 References: <20080207204118.202098927@mini.kroah.org>
2721 User-Agent: quilt/0.46-1
2722 Date: Thu, 07 Feb 2008 12:41:50 -0800
2723 From: Greg KH <gregkh@suse.de>
2724 To: linux-kernel@vger.kernel.org,
2725 stable@kernel.org
2726 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2727 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2728 Theodore Ts'o <tytso@mit.edu>,
2729 Randy Dunlap <rdunlap@xenotime.net>,
2730 Dave Jones <davej@redhat.com>,
2731 Chuck Wolber <chuckw@quantumlinux.com>,
2732 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2733 Michael Krufky <mkrufky@linuxtv.org>,
2734 Chuck Ebbert <cebbert@redhat.com>,
2735 Domenico Andreoli <cavokz@gmail.com>,
2736 torvalds@linux-foundation.org,
2737 akpm@linux-foundation.org,
2738 alan@lxorguk.ukuu.org.uk,
2739 linux-wireless@vger.kernel.org,
2740 bcm43xx-dev@lists.berlios.de,
2741 Michael Buesch <mb@bu3sch.de>,
2742 "John W. Linville" <linville@tuxdriver.com>,
2743 "David S. Miller" <davem@davemloft.net>
2744 Subject: [patch 32/45] b43: Drop packets we are not able to encrypt
2745 Content-Disposition: inline; filename=b43-drop-packets-we-are-not-able-to-encrypt.patch
2746 Content-Length: 4074
2747 Lines: 118
2748
2749 2.6.24-stable review patch. If anyone has any objections, please let us know.
2750
2751 ------------------
2752 From: Michael Buesch <mb@bu3sch.de>
2753
2754 patch 09552ccd8277e6382097e93a40f7311a09449367 in mainline
2755
2756 We must drop any packets we are not able to encrypt.
2757 We must not send them unencrypted or with an all-zero-key (which
2758 basically is the same as unencrypted, from a security point of view).
2759
2760 This might only trigger shortly after resume before mac80211 reassociated
2761 and reconfigured the keys.
2762
2763 It is safe to drop these packets, as the association they belong to
2764 is not guaranteed anymore anyway.
2765 This is a security fix in the sense that it prevents information leakage.
2766
2767 Signed-off-by: Michael Buesch <mb@bu3sch.de>
2768 Signed-off-by: John W. Linville <linville@tuxdriver.com>
2769 Signed-off-by: David S. Miller <davem@davemloft.net>
2770 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2771
2772 ---
2773 drivers/net/wireless/b43/dma.c | 11 ++++++++++-
2774 drivers/net/wireless/b43/xmit.c | 20 +++++++++++++++-----
2775 drivers/net/wireless/b43/xmit.h | 2 +-
2776 3 files changed, 26 insertions(+), 7 deletions(-)
2777
2778 --- a/drivers/net/wireless/b43/dma.c
2779 +++ b/drivers/net/wireless/b43/dma.c
2780 @@ -1122,9 +1122,11 @@ static int dma_tx_fragment(struct b43_dm
2781 memset(meta_hdr, 0, sizeof(*meta_hdr));
2782
2783 header = &(ring->txhdr_cache[slot * sizeof(struct b43_txhdr_fw4)]);
2784 - b43_generate_txhdr(ring->dev, header,
2785 + err = b43_generate_txhdr(ring->dev, header,
2786 skb->data, skb->len, ctl,
2787 generate_cookie(ring, slot));
2788 + if (unlikely(err))
2789 + return err;
2790
2791 meta_hdr->dmaaddr = map_descbuffer(ring, (unsigned char *)header,
2792 sizeof(struct b43_txhdr_fw4), 1);
2793 @@ -1219,6 +1221,13 @@ int b43_dma_tx(struct b43_wldev *dev,
2794 B43_WARN_ON(ring->stopped);
2795
2796 err = dma_tx_fragment(ring, skb, ctl);
2797 + if (unlikely(err == -ENOKEY)) {
2798 + /* Drop this packet, as we don't have the encryption key
2799 + * anymore and must not transmit it unencrypted. */
2800 + dev_kfree_skb_any(skb);
2801 + err = 0;
2802 + goto out_unlock;
2803 + }
2804 if (unlikely(err)) {
2805 b43err(dev->wl, "DMA tx mapping failure\n");
2806 goto out_unlock;
2807 --- a/drivers/net/wireless/b43/xmit.c
2808 +++ b/drivers/net/wireless/b43/xmit.c
2809 @@ -177,7 +177,7 @@ static u8 b43_calc_fallback_rate(u8 bitr
2810 return 0;
2811 }
2812
2813 -static void generate_txhdr_fw4(struct b43_wldev *dev,
2814 +static int generate_txhdr_fw4(struct b43_wldev *dev,
2815 struct b43_txhdr_fw4 *txhdr,
2816 const unsigned char *fragment_data,
2817 unsigned int fragment_len,
2818 @@ -235,7 +235,15 @@ static void generate_txhdr_fw4(struct b4
2819
2820 B43_WARN_ON(key_idx >= dev->max_nr_keys);
2821 key = &(dev->key[key_idx]);
2822 - B43_WARN_ON(!key->keyconf);
2823 +
2824 + if (unlikely(!key->keyconf)) {
2825 + /* This key is invalid. This might only happen
2826 + * in a short timeframe after machine resume before
2827 + * we were able to reconfigure keys.
2828 + * Drop this packet completely. Do not transmit it
2829 + * unencrypted to avoid leaking information. */
2830 + return -ENOKEY;
2831 + }
2832
2833 /* Hardware appends ICV. */
2834 plcp_fragment_len += txctl->icv_len;
2835 @@ -352,16 +360,18 @@ static void generate_txhdr_fw4(struct b4
2836 txhdr->mac_ctl = cpu_to_le32(mac_ctl);
2837 txhdr->phy_ctl = cpu_to_le16(phy_ctl);
2838 txhdr->extra_ft = extra_ft;
2839 +
2840 + return 0;
2841 }
2842
2843 -void b43_generate_txhdr(struct b43_wldev *dev,
2844 +int b43_generate_txhdr(struct b43_wldev *dev,
2845 u8 * txhdr,
2846 const unsigned char *fragment_data,
2847 unsigned int fragment_len,
2848 const struct ieee80211_tx_control *txctl, u16 cookie)
2849 {
2850 - generate_txhdr_fw4(dev, (struct b43_txhdr_fw4 *)txhdr,
2851 - fragment_data, fragment_len, txctl, cookie);
2852 + return generate_txhdr_fw4(dev, (struct b43_txhdr_fw4 *)txhdr,
2853 + fragment_data, fragment_len, txctl, cookie);
2854 }
2855
2856 static s8 b43_rssi_postprocess(struct b43_wldev *dev,
2857 --- a/drivers/net/wireless/b43/xmit.h
2858 +++ b/drivers/net/wireless/b43/xmit.h
2859 @@ -82,7 +82,7 @@ struct b43_txhdr_fw4 {
2860 #define B43_TX4_PHY_ANT1 0x0100 /* Use antenna 1 */
2861 #define B43_TX4_PHY_ANTLAST 0x0300 /* Use last used antenna */
2862
2863 -void b43_generate_txhdr(struct b43_wldev *dev,
2864 +int b43_generate_txhdr(struct b43_wldev *dev,
2865 u8 * txhdr,
2866 const unsigned char *fragment_data,
2867 unsigned int fragment_len,
2868
2869 --
2870
2871 From gregkh@mini.kroah.org Thu Feb 7 12:43:18 2008
2872 Message-Id: <20080207204318.233747962@mini.kroah.org>
2873 References: <20080207204118.202098927@mini.kroah.org>
2874 User-Agent: quilt/0.46-1
2875 Date: Thu, 07 Feb 2008 12:41:51 -0800
2876 From: Greg KH <gregkh@suse.de>
2877 To: linux-kernel@vger.kernel.org,
2878 stable@kernel.org
2879 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2880 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2881 Theodore Ts'o <tytso@mit.edu>,
2882 Randy Dunlap <rdunlap@xenotime.net>,
2883 Dave Jones <davej@redhat.com>,
2884 Chuck Wolber <chuckw@quantumlinux.com>,
2885 Chris Wedgwood <reviews@ml.cw.f00f.org>,
2886 Michael Krufky <mkrufky@linuxtv.org>,
2887 Chuck Ebbert <cebbert@redhat.com>,
2888 Domenico Andreoli <cavokz@gmail.com>,
2889 torvalds@linux-foundation.org,
2890 akpm@linux-foundation.org,
2891 alan@lxorguk.ukuu.org.uk,
2892 linux-wireless@vger.kernel.org,
2893 bcm43xx-dev@lists.berlios.de,
2894 Michael Buesch <mb@bu3sch.de>,
2895 Stefano Brivio <stefano.brivio@polimi.it>,
2896 "John W. Linville" <linville@tuxdriver.com>
2897 Subject: [patch 33/45] b43: Fix dma-slot resource leakage
2898 Content-Disposition: inline; filename=b43-fix-dma-slot-resource-leakage.patch
2899 Content-Length: 2705
2900 Lines: 82
2901
2902 2.6.24-stable review patch. If anyone has any objections, please let us know.
2903
2904 ------------------
2905 From: Michael Buesch <mb@bu3sch.de>
2906
2907 patch 8dd0100ce9511e52614ecd0a6587c13ce5769c8b in mainline.
2908
2909 This fixes four resource leakages.
2910 In any error path we must deallocate the DMA frame slots we
2911 previously allocated by request_slot().
2912 This is done by storing the ring pointers before doing any ring
2913 allocation and restoring the old pointers in case of an error.
2914
2915 Signed-off-by: Michael Buesch <mb@bu3sch.de>
2916 Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
2917 Signed-off-by: John W. Linville <linville@tuxdriver.com>
2918 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2919
2920 ---
2921 drivers/net/wireless/b43/dma.c | 19 ++++++++++++++++---
2922 1 file changed, 16 insertions(+), 3 deletions(-)
2923
2924 --- a/drivers/net/wireless/b43/dma.c
2925 +++ b/drivers/net/wireless/b43/dma.c
2926 @@ -1106,7 +1106,7 @@ static int dma_tx_fragment(struct b43_dm
2927 {
2928 const struct b43_dma_ops *ops = ring->ops;
2929 u8 *header;
2930 - int slot;
2931 + int slot, old_top_slot, old_used_slots;
2932 int err;
2933 struct b43_dmadesc_generic *desc;
2934 struct b43_dmadesc_meta *meta;
2935 @@ -1116,6 +1116,9 @@ static int dma_tx_fragment(struct b43_dm
2936 #define SLOTS_PER_PACKET 2
2937 B43_WARN_ON(skb_shinfo(skb)->nr_frags);
2938
2939 + old_top_slot = ring->current_slot;
2940 + old_used_slots = ring->used_slots;
2941 +
2942 /* Get a slot for the header. */
2943 slot = request_slot(ring);
2944 desc = ops->idx2desc(ring, slot, &meta_hdr);
2945 @@ -1125,13 +1128,19 @@ static int dma_tx_fragment(struct b43_dm
2946 err = b43_generate_txhdr(ring->dev, header,
2947 skb->data, skb->len, ctl,
2948 generate_cookie(ring, slot));
2949 - if (unlikely(err))
2950 + if (unlikely(err)) {
2951 + ring->current_slot = old_top_slot;
2952 + ring->used_slots = old_used_slots;
2953 return err;
2954 + }
2955
2956 meta_hdr->dmaaddr = map_descbuffer(ring, (unsigned char *)header,
2957 sizeof(struct b43_txhdr_fw4), 1);
2958 - if (dma_mapping_error(meta_hdr->dmaaddr))
2959 + if (dma_mapping_error(meta_hdr->dmaaddr)) {
2960 + ring->current_slot = old_top_slot;
2961 + ring->used_slots = old_used_slots;
2962 return -EIO;
2963 + }
2964 ops->fill_descriptor(ring, desc, meta_hdr->dmaaddr,
2965 sizeof(struct b43_txhdr_fw4), 1, 0, 0);
2966
2967 @@ -1149,6 +1158,8 @@ static int dma_tx_fragment(struct b43_dm
2968 if (dma_mapping_error(meta->dmaaddr)) {
2969 bounce_skb = __dev_alloc_skb(skb->len, GFP_ATOMIC | GFP_DMA);
2970 if (!bounce_skb) {
2971 + ring->current_slot = old_top_slot;
2972 + ring->used_slots = old_used_slots;
2973 err = -ENOMEM;
2974 goto out_unmap_hdr;
2975 }
2976 @@ -1159,6 +1170,8 @@ static int dma_tx_fragment(struct b43_dm
2977 meta->skb = skb;
2978 meta->dmaaddr = map_descbuffer(ring, skb->data, skb->len, 1);
2979 if (dma_mapping_error(meta->dmaaddr)) {
2980 + ring->current_slot = old_top_slot;
2981 + ring->used_slots = old_used_slots;
2982 err = -EIO;
2983 goto out_free_bounce;
2984 }
2985
2986 --
2987
2988 From gregkh@mini.kroah.org Thu Feb 7 12:43:18 2008
2989 Message-Id: <20080207204318.460625052@mini.kroah.org>
2990 References: <20080207204118.202098927@mini.kroah.org>
2991 User-Agent: quilt/0.46-1
2992 Date: Thu, 07 Feb 2008 12:41:52 -0800
2993 From: Greg KH <gregkh@suse.de>
2994 To: linux-kernel@vger.kernel.org,
2995 stable@kernel.org
2996 Cc: Justin Forbes <jmforbes@linuxtx.org>,
2997 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
2998 Theodore Ts'o <tytso@mit.edu>,
2999 Randy Dunlap <rdunlap@xenotime.net>,
3000 Dave Jones <davej@redhat.com>,
3001 Chuck Wolber <chuckw@quantumlinux.com>,
3002 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3003 Michael Krufky <mkrufky@linuxtv.org>,
3004 Chuck Ebbert <cebbert@redhat.com>,
3005 Domenico Andreoli <cavokz@gmail.com>,
3006 torvalds@linux-foundation.org,
3007 akpm@linux-foundation.org,
3008 alan@lxorguk.ukuu.org.uk,
3009 linux-wireless@vger.kernel.org,
3010 bcm43xx-dev@lists.berlios.de,
3011 Stefano Brivio <stefano.brivio@polimi.it>,
3012 "John W. Linville" <linville@tuxdriver.com>
3013 Subject: [patch 34/45] b43legacy: fix PIO crash
3014 Content-Disposition: inline; filename=b43legacy-fix-pio-crash.patch
3015 Content-Length: 2901
3016 Lines: 66
3017
3018 2.6.24-stable review patch. If anyone has any objections, please let us know.
3019
3020 ------------------
3021 From: Stefano Brivio <stefano.brivio@polimi.it>
3022
3023 patch 0cd67d48b519c3d8d89d238fab1cf68a5289638a in mainline.
3024
3025 Fix the crash reported below, which seems to happen on bcm4306 rev. 2 devices
3026 only while using PIO:
3027
3028 Oops: 0000 [#1] PREEMPT
3029 Modules linked in: b43(F) rfkill(F) led_class(F) input_polldev(F) arc4 b43legacy mac80211 cfg80211 i915 drm snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device ohci1394 ieee1394 ssb pcmcia snd_intel8x0m ehci_hcd uhci_hcd evdev
3030
3031 Pid: 0, comm: swapper Tainted: GF (2.6.24st3 #2)
3032 EIP: 0060:[<f90f667b>] EFLAGS: 00010002 CPU: 0
3033 EIP is at b43legacy_pio_handle_txstatus+0xbb/0x210 [b43legacy]
3034 EAX: 0000049b EBX: f11f8044 ECX: 00000001 EDX: 00000000
3035 ESI: f1ff8000 EDI: 00000000 EBP: f11f8040 ESP: c04f4ef4
3036 DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
3037 Process swapper (pid: 0, ti=c04f4000 task=c0488300 task.ti=c04b8000)
3038 Stack: f90f2788 c05009f0 c0500900 000010f7 f1053823 c04f4f24 dfb8e800 00000003
3039 f1368000 00000007 00000296 f90f1975 00001000 010c0800 01000000 00000007
3040 f90f6391 f11f8000 00000082 c04f4f4a 00000000 00004fd0 10f70000 8c061000
3041 Call Trace:
3042 [<f90f2788>] b43legacy_debugfs_log_txstat+0x48/0xb0 [b43legacy]
3043 [<f90f1975>] b43legacy_handle_hwtxstatus+0x75/0x80 [b43legacy]
3044 [<f90f6391>] b43legacy_pio_rx+0x201/0x280 [b43legacy]
3045 [<f90e4fa3>] b43legacy_interrupt_tasklet+0x2e3/0x870 [b43legacy]
3046 [<c0123567>] tasklet_action+0x27/0x60
3047 [<c01237b4>] __do_softirq+0x54/0xb0
3048 [<c010686b>] do_softirq+0x7b/0xe0
3049 [<c01457c0>] handle_level_irq+0x0/0x110
3050 [<c01457c0>] handle_level_irq+0x0/0x110
3051 [<c0123758>] irq_exit+0x38/0x40
3052 [<c0106953>] do_IRQ+0x83/0xd0
3053 [<c011812f>] __update_rq_clock+0x4f/0x180
3054 [<c0104b4f>] common_interrupt+0x23/0x28
3055 [<c011007b>] wakeup_code+0x7b/0xde
3056 [<c02b1039>] acpi_processor_idle+0x24a/0x3c9
3057 [<c01025c7>] cpu_idle+0x47/0x80
3058 [<c04b9ad5>] start_kernel+0x205/0x290
3059 [<c04b9360>] unknown_bootoption+0x0/0x1f0
3060 =======================
3061 Code: 0f 00 00 81 fb ff 00 00 00 0f 87 36 01 00 00 8d 04 db 85 ff 8d 6c c6 40 8d 5d 04 0f 85 ef 00 00 00 fe 4e 0e 0f b7 46 0c 8b 53 04 <8b> 4a 50 29 c8 83 e8 52 66 89 46 0c 8b 54 24 14 80 7a 0b 00 74
3062 EIP: [<f90f667b>] b43legacy_pio_handle_txstatus+0xbb/0x210 [b43legacy] SS:ESP 0068:c04f4ef4
3063 Kernel panic - not syncing: Fatal exception in interrupt
3064
3065 Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
3066 Signed-off-by: John W. Linville <linville@tuxdriver.com>
3067 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3068
3069 ---
3070 drivers/net/wireless/b43legacy/pio.c | 3 +++
3071 1 file changed, 3 insertions(+)
3072
3073 --- a/drivers/net/wireless/b43legacy/pio.c
3074 +++ b/drivers/net/wireless/b43legacy/pio.c
3075 @@ -486,6 +486,9 @@ void b43legacy_pio_handle_txstatus(struc
3076 queue = parse_cookie(dev, status->cookie, &packet);
3077 B43legacy_WARN_ON(!queue);
3078
3079 + if (!packet->skb)
3080 + return;
3081 +
3082 queue->tx_devq_packets--;
3083 queue->tx_devq_used -= (packet->skb->len +
3084 sizeof(struct b43legacy_txhdr_fw3));
3085
3086 --
3087
3088 From gregkh@mini.kroah.org Thu Feb 7 12:43:18 2008
3089 Message-Id: <20080207204318.686055558@mini.kroah.org>
3090 References: <20080207204118.202098927@mini.kroah.org>
3091 User-Agent: quilt/0.46-1
3092 Date: Thu, 07 Feb 2008 12:41:53 -0800
3093 From: Greg KH <gregkh@suse.de>
3094 To: linux-kernel@vger.kernel.org,
3095 stable@kernel.org
3096 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3097 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3098 Theodore Ts'o <tytso@mit.edu>,
3099 Randy Dunlap <rdunlap@xenotime.net>,
3100 Dave Jones <davej@redhat.com>,
3101 Chuck Wolber <chuckw@quantumlinux.com>,
3102 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3103 Michael Krufky <mkrufky@linuxtv.org>,
3104 Chuck Ebbert <cebbert@redhat.com>,
3105 Domenico Andreoli <cavokz@gmail.com>,
3106 torvalds@linux-foundation.org,
3107 akpm@linux-foundation.org,
3108 alan@lxorguk.ukuu.org.uk,
3109 Michael@hera.kernel.org,
3110 linux-wireless@vger.kernel.org,
3111 bcm43xx-dev@lists.berlios.de,
3112 Buesch <mb@bu3sch.de>,
3113 Stefano Brivio <stefano.brivio@polimi.it>,
3114 "John W. Linville" <linville@tuxdriver.com>
3115 Subject: [patch 35/45] b43legacy: fix suspend/resume
3116 Content-Disposition: inline; filename=b43legacy-fix-suspend-resume.patch
3117 Content-Length: 1898
3118 Lines: 52
3119
3120 2.6.24-stable review patch. If anyone has any objections, please let us know.
3121
3122 ------------------
3123 From: Stefano Brivio <stefano.brivio@polimi.it>
3124
3125 patch ada50731c0346bf900dc387edd3a6961297bf2d3 in mainline.
3126
3127 This patch makes suspend/resume work with the b43legacy driver.
3128 We must not overwrite the MAC addresses in the init function, as this
3129 would also overwrite the MAC on resume. With an all-zero MAC the device
3130 firmware is not able to ACK any received packets anymore.
3131 Fix this by moving the initializion stuff that must be done on init but
3132 not on resume to the start function.
3133 Also zero out filter_flags to make sure we don't have some flags
3134 from a previous instance for a tiny timeframe until mac80211 reconfigures
3135 them.
3136
3137 This patch by Michael Buesch has been ported to b43legacy.
3138
3139 Cc: Michael Buesch <mb@bu3sch.de>
3140 Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
3141 Signed-off-by: John W. Linville <linville@tuxdriver.com>
3142 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3143
3144 ---
3145 drivers/net/wireless/b43legacy/main.c | 9 +++++++--
3146 1 file changed, 7 insertions(+), 2 deletions(-)
3147
3148 --- a/drivers/net/wireless/b43legacy/main.c
3149 +++ b/drivers/net/wireless/b43legacy/main.c
3150 @@ -3215,8 +3215,6 @@ static int b43legacy_wireless_core_init(
3151 b43legacy_shm_write16(dev, B43legacy_SHM_SHARED, 0x0414, 0x01F4);
3152
3153 ssb_bus_powerup(bus, 1); /* Enable dynamic PCTL */
3154 - memset(wl->bssid, 0, ETH_ALEN);
3155 - memset(wl->mac_addr, 0, ETH_ALEN);
3156 b43legacy_upload_card_macaddress(dev);
3157 b43legacy_security_init(dev);
3158 b43legacy_rng_init(wl);
3159 @@ -3311,6 +3309,13 @@ static int b43legacy_start(struct ieee80
3160 int did_init = 0;
3161 int err = 0;
3162
3163 + /* Kill all old instance specific information to make sure
3164 + * the card won't use it in the short timeframe between start
3165 + * and mac80211 reconfiguring it. */
3166 + memset(wl->bssid, 0, ETH_ALEN);
3167 + memset(wl->mac_addr, 0, ETH_ALEN);
3168 + wl->filter_flags = 0;
3169 +
3170 mutex_lock(&wl->mutex);
3171
3172 if (b43legacy_status(dev) < B43legacy_STAT_INITIALIZED) {
3173
3174 --
3175
3176 From gregkh@mini.kroah.org Thu Feb 7 12:43:19 2008
3177 Message-Id: <20080207204318.911484426@mini.kroah.org>
3178 References: <20080207204118.202098927@mini.kroah.org>
3179 User-Agent: quilt/0.46-1
3180 Date: Thu, 07 Feb 2008 12:41:54 -0800
3181 From: Greg KH <gregkh@suse.de>
3182 To: linux-kernel@vger.kernel.org,
3183 stable@kernel.org
3184 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3185 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3186 Theodore Ts'o <tytso@mit.edu>,
3187 Randy Dunlap <rdunlap@xenotime.net>,
3188 Dave Jones <davej@redhat.com>,
3189 Chuck Wolber <chuckw@quantumlinux.com>,
3190 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3191 Michael Krufky <mkrufky@linuxtv.org>,
3192 Chuck Ebbert <cebbert@redhat.com>,
3193 Domenico Andreoli <cavokz@gmail.com>,
3194 torvalds@linux-foundation.org,
3195 akpm@linux-foundation.org,
3196 alan@lxorguk.ukuu.org.uk,
3197 Michael@hera.kernel.org,
3198 linux-wireless@vger.kernel.org,
3199 bcm43xx-dev@lists.berlios.de,
3200 Buesch <mb@bu3sch.de>,
3201 Stefano Brivio <stefano.brivio@polimi.it>,
3202 "John W. Linville" <linville@tuxdriver.com>
3203 Subject: [patch 36/45] b43legacy: drop packets we are not able to encrypt
3204 Content-Disposition: inline; filename=b43legacy-drop-packets-we-are-not-able-to-encrypt.patch
3205 Content-Length: 6194
3206 Lines: 180
3207
3208 2.6.24-stable review patch. If anyone has any objections, please let us know.
3209
3210 ------------------
3211 From: Stefano Brivio <stefano.brivio@polimi.it>
3212
3213 patch 9eca9a8e81928685b4de00ecef83a7c13c340fc9 in mainline.
3214
3215 We must drop any packets we are not able to encrypt.
3216 We must not send them unencrypted or with an all-zero-key (which
3217 basically is the same as unencrypted, from a security point of view).
3218
3219 This might only trigger shortly after resume before mac80211 reassociated
3220 and reconfigured the keys.
3221
3222 It is safe to drop these packets, as the association they belong to
3223 is not guaranteed anymore anyway.
3224 This is a security fix in the sense that it prevents information leakage.
3225
3226 This patch by Michael Buesch has been ported to b43legacy.
3227
3228 Cc: Michael Buesch <mb@bu3sch.de>
3229 Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
3230 Signed-off-by: John W. Linville <linville@tuxdriver.com>
3231 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3232
3233 ---
3234 drivers/net/wireless/b43legacy/dma.c | 11 ++++++++++-
3235 drivers/net/wireless/b43legacy/pio.c | 18 +++++++++++++++---
3236 drivers/net/wireless/b43legacy/xmit.c | 15 ++++++++++++---
3237 drivers/net/wireless/b43legacy/xmit.h | 2 +-
3238 4 files changed, 38 insertions(+), 8 deletions(-)
3239
3240 --- a/drivers/net/wireless/b43legacy/dma.c
3241 +++ b/drivers/net/wireless/b43legacy/dma.c
3242 @@ -1181,9 +1181,11 @@ static int dma_tx_fragment(struct b43leg
3243
3244 header = &(ring->txhdr_cache[slot * sizeof(
3245 struct b43legacy_txhdr_fw3)]);
3246 - b43legacy_generate_txhdr(ring->dev, header,
3247 + err = b43legacy_generate_txhdr(ring->dev, header,
3248 skb->data, skb->len, ctl,
3249 generate_cookie(ring, slot));
3250 + if (unlikely(err))
3251 + return err;
3252
3253 meta_hdr->dmaaddr = map_descbuffer(ring, (unsigned char *)header,
3254 sizeof(struct b43legacy_txhdr_fw3), 1);
3255 @@ -1282,6 +1284,13 @@ int b43legacy_dma_tx(struct b43legacy_wl
3256 B43legacy_BUG_ON(ring->stopped);
3257
3258 err = dma_tx_fragment(ring, skb, ctl);
3259 + if (unlikely(err == -ENOKEY)) {
3260 + /* Drop this packet, as we don't have the encryption key
3261 + * anymore and must not transmit it unencrypted. */
3262 + dev_kfree_skb_any(skb);
3263 + err = 0;
3264 + goto out_unlock;
3265 + }
3266 if (unlikely(err)) {
3267 b43legacyerr(dev->wl, "DMA tx mapping failure\n");
3268 goto out_unlock;
3269 --- a/drivers/net/wireless/b43legacy/pio.c
3270 +++ b/drivers/net/wireless/b43legacy/pio.c
3271 @@ -181,7 +181,7 @@ union txhdr_union {
3272 struct b43legacy_txhdr_fw3 txhdr_fw3;
3273 };
3274
3275 -static void pio_tx_write_fragment(struct b43legacy_pioqueue *queue,
3276 +static int pio_tx_write_fragment(struct b43legacy_pioqueue *queue,
3277 struct sk_buff *skb,
3278 struct b43legacy_pio_txpacket *packet,
3279 size_t txhdr_size)
3280 @@ -189,14 +189,17 @@ static void pio_tx_write_fragment(struct
3281 union txhdr_union txhdr_data;
3282 u8 *txhdr = NULL;
3283 unsigned int octets;
3284 + int err;
3285
3286 txhdr = (u8 *)(&txhdr_data.txhdr_fw3);
3287
3288 B43legacy_WARN_ON(skb_shinfo(skb)->nr_frags != 0);
3289 - b43legacy_generate_txhdr(queue->dev,
3290 + err = b43legacy_generate_txhdr(queue->dev,
3291 txhdr, skb->data, skb->len,
3292 &packet->txstat.control,
3293 generate_cookie(queue, packet));
3294 + if (err)
3295 + return err;
3296
3297 tx_start(queue);
3298 octets = skb->len + txhdr_size;
3299 @@ -204,6 +207,8 @@ static void pio_tx_write_fragment(struct
3300 octets--;
3301 tx_data(queue, txhdr, (u8 *)skb->data, octets);
3302 tx_complete(queue, skb);
3303 +
3304 + return 0;
3305 }
3306
3307 static void free_txpacket(struct b43legacy_pio_txpacket *packet,
3308 @@ -226,6 +231,7 @@ static int pio_tx_packet(struct b43legac
3309 struct b43legacy_pioqueue *queue = packet->queue;
3310 struct sk_buff *skb = packet->skb;
3311 u16 octets;
3312 + int err;
3313
3314 octets = (u16)skb->len + sizeof(struct b43legacy_txhdr_fw3);
3315 if (queue->tx_devq_size < octets) {
3316 @@ -247,8 +253,14 @@ static int pio_tx_packet(struct b43legac
3317 if (queue->tx_devq_used + octets > queue->tx_devq_size)
3318 return -EBUSY;
3319 /* Now poke the device. */
3320 - pio_tx_write_fragment(queue, skb, packet,
3321 + err = pio_tx_write_fragment(queue, skb, packet,
3322 sizeof(struct b43legacy_txhdr_fw3));
3323 + if (unlikely(err == -ENOKEY)) {
3324 + /* Drop this packet, as we don't have the encryption key
3325 + * anymore and must not transmit it unencrypted. */
3326 + free_txpacket(packet, 1);
3327 + return 0;
3328 + }
3329
3330 /* Account for the packet size.
3331 * (We must not overflow the device TX queue)
3332 --- a/drivers/net/wireless/b43legacy/xmit.c
3333 +++ b/drivers/net/wireless/b43legacy/xmit.c
3334 @@ -181,7 +181,7 @@ static u8 b43legacy_calc_fallback_rate(u
3335 return 0;
3336 }
3337
3338 -static void generate_txhdr_fw3(struct b43legacy_wldev *dev,
3339 +static int generate_txhdr_fw3(struct b43legacy_wldev *dev,
3340 struct b43legacy_txhdr_fw3 *txhdr,
3341 const unsigned char *fragment_data,
3342 unsigned int fragment_len,
3343 @@ -252,6 +252,13 @@ static void generate_txhdr_fw3(struct b4
3344 iv_len = min((size_t)txctl->iv_len,
3345 ARRAY_SIZE(txhdr->iv));
3346 memcpy(txhdr->iv, ((u8 *)wlhdr) + wlhdr_len, iv_len);
3347 + } else {
3348 + /* This key is invalid. This might only happen
3349 + * in a short timeframe after machine resume before
3350 + * we were able to reconfigure keys.
3351 + * Drop this packet completely. Do not transmit it
3352 + * unencrypted to avoid leaking information. */
3353 + return -ENOKEY;
3354 }
3355 }
3356 b43legacy_generate_plcp_hdr((struct b43legacy_plcp_hdr4 *)
3357 @@ -344,16 +351,18 @@ static void generate_txhdr_fw3(struct b4
3358 /* Apply the bitfields */
3359 txhdr->mac_ctl = cpu_to_le32(mac_ctl);
3360 txhdr->phy_ctl = cpu_to_le16(phy_ctl);
3361 +
3362 + return 0;
3363 }
3364
3365 -void b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3366 +int b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3367 u8 *txhdr,
3368 const unsigned char *fragment_data,
3369 unsigned int fragment_len,
3370 const struct ieee80211_tx_control *txctl,
3371 u16 cookie)
3372 {
3373 - generate_txhdr_fw3(dev, (struct b43legacy_txhdr_fw3 *)txhdr,
3374 + return generate_txhdr_fw3(dev, (struct b43legacy_txhdr_fw3 *)txhdr,
3375 fragment_data, fragment_len,
3376 txctl, cookie);
3377 }
3378 --- a/drivers/net/wireless/b43legacy/xmit.h
3379 +++ b/drivers/net/wireless/b43legacy/xmit.h
3380 @@ -76,7 +76,7 @@ struct b43legacy_txhdr_fw3 {
3381
3382
3383
3384 -void b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3385 +int b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3386 u8 *txhdr,
3387 const unsigned char *fragment_data,
3388 unsigned int fragment_len,
3389
3390 --
3391
3392 From gregkh@mini.kroah.org Thu Feb 7 12:43:19 2008
3393 Message-Id: <20080207204319.140256630@mini.kroah.org>
3394 References: <20080207204118.202098927@mini.kroah.org>
3395 User-Agent: quilt/0.46-1
3396 Date: Thu, 07 Feb 2008 12:41:55 -0800
3397 From: Greg KH <gregkh@suse.de>
3398 To: linux-kernel@vger.kernel.org,
3399 stable@kernel.org
3400 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3401 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3402 Theodore Ts'o <tytso@mit.edu>,
3403 Randy Dunlap <rdunlap@xenotime.net>,
3404 Dave Jones <davej@redhat.com>,
3405 Chuck Wolber <chuckw@quantumlinux.com>,
3406 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3407 Michael Krufky <mkrufky@linuxtv.org>,
3408 Chuck Ebbert <cebbert@redhat.com>,
3409 Domenico Andreoli <cavokz@gmail.com>,
3410 torvalds@linux-foundation.org,
3411 akpm@linux-foundation.org,
3412 alan@lxorguk.ukuu.org.uk,
3413 Michael@hera.kernel.org,
3414 linux-wireless@vger.kernel.org,
3415 bcm43xx-dev@lists.berlios.de,
3416 Buesch <mb@bu3sch.de>,
3417 Stefano Brivio <stefano.brivio@polimi.it>,
3418 "John W. Linville" <linville@tuxdriver.com>
3419 Subject: [patch 37/45] b43legacy: fix DMA slot resource leakage
3420 Content-Disposition: inline; filename=b43legacy-fix-dma-slot-resource-leakage.patch
3421 Content-Length: 2529
3422 Lines: 75
3423
3424 2.6.24-stable review patch. If anyone has any objections, please let us know.
3425
3426 ------------------
3427 From: Stefano Brivio <stefano.brivio@polimi.it>
3428
3429 patch 8dd0100ce9511e52614ecd0a6587c13ce5769c8b in mainline.
3430
3431 This fixes four resource leakages.
3432 In any error path we must deallocate the DMA frame slots we
3433 previously allocated by request_slot().
3434 This is done by storing the ring pointers before doing any ring
3435 allocation and restoring the old pointers in case of an error.
3436
3437 This patch by Michael Buesch has been ported to b43legacy.
3438
3439 Cc: Michael Buesch <mb@bu3sch.de>
3440 Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
3441 Signed-off-by: John W. Linville <linville@tuxdriver.com>
3442 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3443
3444 ---
3445 drivers/net/wireless/b43legacy/dma.c | 14 ++++++++++++--
3446 1 file changed, 12 insertions(+), 2 deletions(-)
3447
3448 --- a/drivers/net/wireless/b43legacy/dma.c
3449 +++ b/drivers/net/wireless/b43legacy/dma.c
3450 @@ -1164,7 +1164,7 @@ static int dma_tx_fragment(struct b43leg
3451 {
3452 const struct b43legacy_dma_ops *ops = ring->ops;
3453 u8 *header;
3454 - int slot;
3455 + int slot, old_top_slot, old_used_slots;
3456 int err;
3457 struct b43legacy_dmadesc_generic *desc;
3458 struct b43legacy_dmadesc_meta *meta;
3459 @@ -1174,6 +1174,9 @@ static int dma_tx_fragment(struct b43leg
3460 #define SLOTS_PER_PACKET 2
3461 B43legacy_WARN_ON(skb_shinfo(skb)->nr_frags != 0);
3462
3463 + old_top_slot = ring->current_slot;
3464 + old_used_slots = ring->used_slots;
3465 +
3466 /* Get a slot for the header. */
3467 slot = request_slot(ring);
3468 desc = ops->idx2desc(ring, slot, &meta_hdr);
3469 @@ -1184,8 +1187,11 @@ static int dma_tx_fragment(struct b43leg
3470 err = b43legacy_generate_txhdr(ring->dev, header,
3471 skb->data, skb->len, ctl,
3472 generate_cookie(ring, slot));
3473 - if (unlikely(err))
3474 + if (unlikely(err)) {
3475 + ring->current_slot = old_top_slot;
3476 + ring->used_slots = old_used_slots;
3477 return err;
3478 + }
3479
3480 meta_hdr->dmaaddr = map_descbuffer(ring, (unsigned char *)header,
3481 sizeof(struct b43legacy_txhdr_fw3), 1);
3482 @@ -1208,6 +1214,8 @@ static int dma_tx_fragment(struct b43leg
3483 if (dma_mapping_error(meta->dmaaddr)) {
3484 bounce_skb = __dev_alloc_skb(skb->len, GFP_ATOMIC | GFP_DMA);
3485 if (!bounce_skb) {
3486 + ring->current_slot = old_top_slot;
3487 + ring->used_slots = old_used_slots;
3488 err = -ENOMEM;
3489 goto out_unmap_hdr;
3490 }
3491 @@ -1218,6 +1226,8 @@ static int dma_tx_fragment(struct b43leg
3492 meta->skb = skb;
3493 meta->dmaaddr = map_descbuffer(ring, skb->data, skb->len, 1);
3494 if (dma_mapping_error(meta->dmaaddr)) {
3495 + ring->current_slot = old_top_slot;
3496 + ring->used_slots = old_used_slots;
3497 err = -EIO;
3498 goto out_free_bounce;
3499 }
3500
3501 --
3502
3503 From gregkh@mini.kroah.org Thu Feb 7 12:43:19 2008
3504 Message-Id: <20080207204319.365579108@mini.kroah.org>
3505 References: <20080207204118.202098927@mini.kroah.org>
3506 User-Agent: quilt/0.46-1
3507 Date: Thu, 07 Feb 2008 12:41:56 -0800
3508 From: Greg KH <gregkh@suse.de>
3509 To: linux-kernel@vger.kernel.org,
3510 stable@kernel.org
3511 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3512 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3513 Theodore Ts'o <tytso@mit.edu>,
3514 Randy Dunlap <rdunlap@xenotime.net>,
3515 Dave Jones <davej@redhat.com>,
3516 Chuck Wolber <chuckw@quantumlinux.com>,
3517 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3518 Michael Krufky <mkrufky@linuxtv.org>,
3519 Chuck Ebbert <cebbert@redhat.com>,
3520 Domenico Andreoli <cavokz@gmail.com>,
3521 torvalds@linux-foundation.org,
3522 akpm@linux-foundation.org,
3523 alan@lxorguk.ukuu.org.uk,
3524 Stephen Smalley <sds@tycho.nsa.gov>,
3525 James Morris <jmorris@namei.org>
3526 Subject: [patch 38/45] selinux: fix labeling of /proc/net inodes
3527 Content-Disposition: inline; filename=selinux-fix-labeling-of-proc-net-inodes.patch
3528 Content-Length: 955
3529 Lines: 31
3530
3531 2.6.24-stable review patch. If anyone has any objections, please let us know.
3532
3533 ------------------
3534 From: Stephen Smalley <sds@tycho.nsa.gov>
3535
3536 patch b1aa5301b9f88a4891061650c591fb8fe1c1d1da in mainline.
3537
3538 The proc net rewrite had a side effect on selinux, leading it to mislabel
3539 the /proc/net inodes, thereby leading to incorrect denials. Fix
3540 security_genfs_sid to ignore extra leading / characters in the path supplied
3541 by selinux_proc_get_sid since we now get "//net/..." rather than "/net/...".
3542
3543 Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
3544 Signed-off-by: James Morris <jmorris@namei.org>
3545 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3546
3547 ---
3548 security/selinux/ss/services.c | 3 +++
3549 1 file changed, 3 insertions(+)
3550
3551 --- a/security/selinux/ss/services.c
3552 +++ b/security/selinux/ss/services.c
3553 @@ -1744,6 +1744,9 @@ int security_genfs_sid(const char *fstyp
3554 struct ocontext *c;
3555 int rc = 0, cmp = 0;
3556
3557 + while (path[0] == '/' && path[1] == '/')
3558 + path++;
3559 +
3560 POLICY_RDLOCK;
3561
3562 for (genfs = policydb.genfs; genfs; genfs = genfs->next) {
3563
3564 --
3565
3566 From gregkh@mini.kroah.org Thu Feb 7 12:43:19 2008
3567 Message-Id: <20080207204319.591982809@mini.kroah.org>
3568 References: <20080207204118.202098927@mini.kroah.org>
3569 User-Agent: quilt/0.46-1
3570 Date: Thu, 07 Feb 2008 12:41:57 -0800
3571 From: Greg KH <gregkh@suse.de>
3572 To: linux-kernel@vger.kernel.org,
3573 stable@kernel.org
3574 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3575 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3576 Theodore Ts'o <tytso@mit.edu>,
3577 Randy Dunlap <rdunlap@xenotime.net>,
3578 Dave Jones <davej@redhat.com>,
3579 Chuck Wolber <chuckw@quantumlinux.com>,
3580 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3581 Michael Krufky <mkrufky@linuxtv.org>,
3582 Chuck Ebbert <cebbert@redhat.com>,
3583 Domenico Andreoli <cavokz@gmail.com>,
3584 torvalds@linux-foundation.org,
3585 akpm@linux-foundation.org,
3586 alan@lxorguk.ukuu.org.uk,
3587 linux-wireless@vger.kernel.org,
3588 Bcm43xx-dev@lists.berlios.de,
3589 Michael Buesch <mb@bu3sch.de>
3590 Subject: [patch 39/45] b43: Reject new firmware early
3591 Content-Disposition: inline; filename=b43-reject-new-firmware-early.patch
3592 Content-Length: 1394
3593 Lines: 41
3594
3595 2.6.24-stable review patch. If anyone has any objections, please let us know.
3596
3597 ------------------
3598 From: Michael Buesch <mb@bu3sch.de>
3599
3600 (not in mainline, as it is not applicable.)
3601
3602 We must reject new incompatible firmware early to avoid
3603 running into strange transmission failures.
3604
3605 The current development tree supports newer firmware revisions.
3606 These revisions cause strange failures on the stable 2.6.24 kernel.
3607 Add a check to avoid confusing users a lot.
3608
3609 Signed-off-by: Michael Buesch <mb@bu3sch.de>
3610 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3611
3612 ---
3613 drivers/net/wireless/b43/main.c | 12 ++++++++++++
3614 1 file changed, 12 insertions(+)
3615
3616 --- a/drivers/net/wireless/b43/main.c
3617 +++ b/drivers/net/wireless/b43/main.c
3618 @@ -1800,6 +1800,18 @@ static int b43_upload_microcode(struct b
3619 err = -EOPNOTSUPP;
3620 goto out;
3621 }
3622 + if (fwrev > 351) {
3623 + b43err(dev->wl, "YOUR FIRMWARE IS TOO NEW. Please downgrade your "
3624 + "firmware.\n");
3625 + b43err(dev->wl, "Use this firmware tarball: "
3626 + "http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2\n");
3627 + b43err(dev->wl, "Use this b43-fwcutter tarball: "
3628 + "http://bu3sch.de/b43/fwcutter/b43-fwcutter-009.tar.bz2\n");
3629 + b43err(dev->wl, "Read, understand and _do_ what this message says, please.\n");
3630 + b43_write32(dev, B43_MMIO_MACCTL, 0);
3631 + err = -EOPNOTSUPP;
3632 + goto out;
3633 + }
3634 b43dbg(dev->wl, "Loading firmware version %u.%u "
3635 "(20%.2i-%.2i-%.2i %.2i:%.2i:%.2i)\n",
3636 fwrev, fwpatch,
3637
3638 --
3639
3640 From gregkh@mini.kroah.org Thu Feb 7 12:43:20 2008
3641 Message-Id: <20080207204319.818725716@mini.kroah.org>
3642 References: <20080207204118.202098927@mini.kroah.org>
3643 User-Agent: quilt/0.46-1
3644 Date: Thu, 07 Feb 2008 12:41:58 -0800
3645 From: Greg KH <gregkh@suse.de>
3646 To: linux-kernel@vger.kernel.org,
3647 stable@kernel.org
3648 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3649 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3650 Theodore Ts'o <tytso@mit.edu>,
3651 Randy Dunlap <rdunlap@xenotime.net>,
3652 Dave Jones <davej@redhat.com>,
3653 Chuck Wolber <chuckw@quantumlinux.com>,
3654 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3655 Michael Krufky <mkrufky@linuxtv.org>,
3656 Chuck Ebbert <cebbert@redhat.com>,
3657 Domenico Andreoli <cavokz@gmail.com>,
3658 torvalds@linux-foundation.org,
3659 akpm@linux-foundation.org,
3660 alan@lxorguk.ukuu.org.uk,
3661 Peter Zijlstra <a.p.zijlstra@chello.nl>,
3662 Ingo Molnar <mingo@elte.hu>
3663 Subject: [patch 40/45] sched: let +nice tasks have smaller impact
3664 Content-Disposition: inline; filename=sched-let-nice-tasks-have-smaller-impact.patch
3665 Content-Length: 1330
3666 Lines: 45
3667
3668 2.6.24-stable review patch. If anyone has any objections, please let us know.
3669
3670 ------------------
3671 From: Peter Zijlstra <a.p.zijlstra@chello.nl>
3672
3673 patch ef9884e6f29bbe1075204f962a00f7533bf7e8f3 in mainline.
3674
3675 Michel Dänzr has bisected an interactivity problem with
3676 plus-reniced tasks back to this commit:
3677
3678 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8 is first bad commit
3679 commit 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8
3680 Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
3681 Date: Mon Oct 15 17:00:14 2007 +0200
3682
3683 sched: another wakeup_granularity fix
3684
3685 unit mis-match: wakeup_gran was used against a vruntime
3686
3687 fix this by assymetrically scaling the vtime of positive reniced
3688 tasks.
3689
3690 Bisected-by: Michel Dänzer <michel@tungstengraphics.com>
3691 Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
3692 Signed-off-by: Ingo Molnar <mingo@elte.hu>
3693 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3694
3695 ---
3696 kernel/sched_fair.c | 6 +++++-
3697 1 file changed, 5 insertions(+), 1 deletion(-)
3698
3699 --- a/kernel/sched_fair.c
3700 +++ b/kernel/sched_fair.c
3701 @@ -867,7 +867,11 @@ static void check_preempt_wakeup(struct
3702 }
3703
3704 gran = sysctl_sched_wakeup_granularity;
3705 - if (unlikely(se->load.weight != NICE_0_LOAD))
3706 + /*
3707 + * More easily preempt - nice tasks, while not making
3708 + * it harder for + nice tasks.
3709 + */
3710 + if (unlikely(se->load.weight > NICE_0_LOAD))
3711 gran = calc_delta_fair(gran, &se->load);
3712
3713 if (pse->vruntime + gran < se->vruntime)
3714
3715 --
3716
3717 From gregkh@mini.kroah.org Thu Feb 7 12:43:20 2008
3718 Message-Id: <20080207204320.045356670@mini.kroah.org>
3719 References: <20080207204118.202098927@mini.kroah.org>
3720 User-Agent: quilt/0.46-1
3721 Date: Thu, 07 Feb 2008 12:41:59 -0800
3722 From: Greg KH <gregkh@suse.de>
3723 To: linux-kernel@vger.kernel.org,
3724 stable@kernel.org
3725 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3726 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3727 Theodore Ts'o <tytso@mit.edu>,
3728 Randy Dunlap <rdunlap@xenotime.net>,
3729 Dave Jones <davej@redhat.com>,
3730 Chuck Wolber <chuckw@quantumlinux.com>,
3731 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3732 Michael Krufky <mkrufky@linuxtv.org>,
3733 Chuck Ebbert <cebbert@redhat.com>,
3734 Domenico Andreoli <cavokz@gmail.com>,
3735 torvalds@linux-foundation.org,
3736 akpm@linux-foundation.org,
3737 alan@lxorguk.ukuu.org.uk,
3738 Ingo Molnar <mingo@elte.hu>
3739 Subject: [patch 41/45] sched: fix high wake up latencies with FAIR_USER_SCHED
3740 Content-Disposition: inline; filename=sched-fix-high-wake-up-latencies-with-fair_user_sched.patch
3741 Content-Length: 1350
3742 Lines: 42
3743
3744 2.6.24-stable review patch. If anyone has any objections, please let us know.
3745
3746 ------------------
3747 From: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
3748
3749 patch 296825cbe14d4c95ee9c41ca5824f7487bfb4d9d in mainline.
3750
3751 The reason why we are getting better wakeup latencies for
3752 !FAIR_USER_SCHED is because of this snippet of code in place_entity():
3753
3754 if (!initial) {
3755 /* sleeps upto a single latency don't count. */
3756 if (sched_feat(NEW_FAIR_SLEEPERS) && entity_is_task(se))
3757 ^^^^^^^^^^^^^^^^^^
3758 vruntime -= sysctl_sched_latency;
3759
3760 /* ensure we never gain time by being placed backwards. */
3761 vruntime = max_vruntime(se->vruntime, vruntime);
3762 }
3763
3764 NEW_FAIR_SLEEPERS feature gives credit for sleeping only to tasks and
3765 not group-level entities. With the patch attached, I could see that
3766 wakeup latencies with FAIR_USER_SCHED are restored to the same level as
3767 !FAIR_USER_SCHED.
3768
3769 Signed-off-by: Ingo Molnar <mingo@elte.hu>
3770 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3771
3772 ---
3773 kernel/sched_fair.c | 2 +-
3774 1 file changed, 1 insertion(+), 1 deletion(-)
3775
3776 --- a/kernel/sched_fair.c
3777 +++ b/kernel/sched_fair.c
3778 @@ -511,7 +511,7 @@ place_entity(struct cfs_rq *cfs_rq, stru
3779
3780 if (!initial) {
3781 /* sleeps upto a single latency don't count. */
3782 - if (sched_feat(NEW_FAIR_SLEEPERS) && entity_is_task(se))
3783 + if (sched_feat(NEW_FAIR_SLEEPERS))
3784 vruntime -= sysctl_sched_latency;
3785
3786 /* ensure we never gain time by being placed backwards. */
3787
3788 --
3789
3790 From gregkh@mini.kroah.org Thu Feb 7 12:43:20 2008
3791 Message-Id: <20080207204320.271966048@mini.kroah.org>
3792 References: <20080207204118.202098927@mini.kroah.org>
3793 User-Agent: quilt/0.46-1
3794 Date: Thu, 07 Feb 2008 12:42:00 -0800
3795 From: Greg KH <gregkh@suse.de>
3796 To: linux-kernel@vger.kernel.org,
3797 stable@kernel.org,
3798 Linus Torvalds <torvalds@linux-foundation.org>
3799 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3800 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3801 Theodore Ts'o <tytso@mit.edu>,
3802 Randy Dunlap <rdunlap@xenotime.net>,
3803 Dave Jones <davej@redhat.com>,
3804 Chuck Wolber <chuckw@quantumlinux.com>,
3805 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3806 Michael Krufky <mkrufky@linuxtv.org>,
3807 Chuck Ebbert <cebbert@redhat.com>,
3808 Domenico Andreoli <cavokz@gmail.com>,
3809 akpm@linux-foundation.org,
3810 alan@lxorguk.ukuu.org.uk,
3811 Nick Piggin <npiggin@suse.de>,
3812 Ingo Molnar <mingo@elte.hu>
3813 Subject: [patch 42/45] fix writev regression: pan hanging unkillable and un-straceable
3814 Content-Disposition: inline; filename=fix-writev-regression-pan-hanging-unkillable-and-un-straceable.patch
3815 Content-Length: 1989
3816 Lines: 63
3817
3818 2.6.24-stable review patch. If anyone has any objections, please let us know.
3819
3820 ------------------
3821 From: Nick Piggin <nickpiggin@yahoo.com.au>
3822
3823 patch 124d3b7041f9a0ca7c43a6293e1cae4576c32fd5 in mainline.
3824
3825 Frederik Himpe reported an unkillable and un-straceable pan process.
3826
3827 Zero length iovecs can go into an infinite loop in writev, because the
3828 iovec iterator does not always advance over them.
3829
3830 The sequence required to trigger this is not trivial. I think it
3831 requires that a zero-length iovec be followed by a non-zero-length iovec
3832 which causes a pagefault in the atomic usercopy. This causes the writev
3833 code to drop back into single-segment copy mode, which then tries to
3834 copy the 0 bytes of the zero-length iovec; a zero length copy looks like
3835 a failure though, so it loops.
3836
3837 Put a test into iov_iter_advance to catch zero-length iovecs. We could
3838 just put the test in the fallback path, but I feel it is more robust to
3839 skip over zero-length iovecs throughout the code (iovec iterator may be
3840 used in filesystems too, so it should be robust).
3841
3842 Signed-off-by: Nick Piggin <npiggin@suse.de>
3843 Signed-off-by: Ingo Molnar <mingo@elte.hu>
3844 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
3845 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3846
3847 ---
3848 mm/filemap.c | 8 ++++++--
3849 1 file changed, 6 insertions(+), 2 deletions(-)
3850
3851 --- a/mm/filemap.c
3852 +++ b/mm/filemap.c
3853 @@ -1733,7 +1733,11 @@ static void __iov_iter_advance_iov(struc
3854 const struct iovec *iov = i->iov;
3855 size_t base = i->iov_offset;
3856
3857 - while (bytes) {
3858 + /*
3859 + * The !iov->iov_len check ensures we skip over unlikely
3860 + * zero-length segments.
3861 + */
3862 + while (bytes || !iov->iov_len) {
3863 int copy = min(bytes, iov->iov_len - base);
3864
3865 bytes -= copy;
3866 @@ -2251,6 +2255,7 @@ again:
3867
3868 cond_resched();
3869
3870 + iov_iter_advance(i, copied);
3871 if (unlikely(copied == 0)) {
3872 /*
3873 * If we were unable to copy any data at all, we must
3874 @@ -2264,7 +2269,6 @@ again:
3875 iov_iter_single_seg_count(i));
3876 goto again;
3877 }
3878 - iov_iter_advance(i, copied);
3879 pos += copied;
3880 written += copied;
3881
3882
3883 --
3884
3885 From gregkh@mini.kroah.org Thu Feb 7 12:43:20 2008
3886 Message-Id: <20080207204320.498189265@mini.kroah.org>
3887 References: <20080207204118.202098927@mini.kroah.org>
3888 User-Agent: quilt/0.46-1
3889 Date: Thu, 07 Feb 2008 12:42:01 -0800
3890 From: Greg KH <gregkh@suse.de>
3891 To: linux-kernel@vger.kernel.org,
3892 stable@kernel.org
3893 Cc: Justin Forbes <jmforbes@linuxtx.org>,
3894 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
3895 Theodore Ts'o <tytso@mit.edu>,
3896 Randy Dunlap <rdunlap@xenotime.net>,
3897 Dave Jones <davej@redhat.com>,
3898 Chuck Wolber <chuckw@quantumlinux.com>,
3899 Chris Wedgwood <reviews@ml.cw.f00f.org>,
3900 Michael Krufky <mkrufky@linuxtv.org>,
3901 Chuck Ebbert <cebbert@redhat.com>,
3902 Domenico Andreoli <cavokz@gmail.com>,
3903 torvalds@linux-foundation.org,
3904 akpm@linux-foundation.org,
3905 alan@lxorguk.ukuu.org.uk,
3906 Thomas Gleixner <tglx@linutronix.de>
3907 Subject: [patch 43/45] x86: replace LOCK_PREFIX in futex.h
3908 Content-Disposition: inline; filename=x86-replace-lock_prefix-in-futex.h.patch
3909 Content-Length: 2517
3910 Lines: 84
3911
3912 2.6.24-stable review patch. If anyone has any objections, please let us know.
3913
3914 ------------------
3915 From: Thomas Gleixner <tglx@linutronix.de>
3916
3917 The exception fixup for the futex macros __futex_atomic_op1/2 and
3918 futex_atomic_cmpxchg_inatomic() is missing an entry when the lock
3919 prefix is replaced by a NOP via SMP alternatives.
3920
3921 Chuck Ebert tracked this down from the information provided in:
3922 https://bugzilla.redhat.com/show_bug.cgi?id=429412
3923
3924 A possible solution would be to add another fixup after the
3925 LOCK_PREFIX, so both the LOCK and NOP case have their own entry in the
3926 exception table, but it's not really worth the trouble.
3927
3928 Simply replace LOCK_PREFIX with lock and keep those untouched by SMP
3929 alternatives.
3930
3931 Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
3932 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3933
3934 ---
3935 include/asm-x86/futex_32.h | 6 +++---
3936 include/asm-x86/futex_64.h | 6 +++---
3937 2 files changed, 6 insertions(+), 6 deletions(-)
3938
3939 --- a/include/asm-x86/futex_32.h
3940 +++ b/include/asm-x86/futex_32.h
3941 @@ -28,7 +28,7 @@
3942 "1: movl %2, %0\n\
3943 movl %0, %3\n" \
3944 insn "\n" \
3945 -"2: " LOCK_PREFIX "cmpxchgl %3, %2\n\
3946 +"2: lock cmpxchgl %3, %2\n\
3947 jnz 1b\n\
3948 3: .section .fixup,\"ax\"\n\
3949 4: mov %5, %1\n\
3950 @@ -68,7 +68,7 @@ futex_atomic_op_inuser (int encoded_op,
3951 #endif
3952 switch (op) {
3953 case FUTEX_OP_ADD:
3954 - __futex_atomic_op1(LOCK_PREFIX "xaddl %0, %2", ret,
3955 + __futex_atomic_op1("lock xaddl %0, %2", ret,
3956 oldval, uaddr, oparg);
3957 break;
3958 case FUTEX_OP_OR:
3959 @@ -111,7 +111,7 @@ futex_atomic_cmpxchg_inatomic(int __user
3960 return -EFAULT;
3961
3962 __asm__ __volatile__(
3963 - "1: " LOCK_PREFIX "cmpxchgl %3, %1 \n"
3964 + "1: lock cmpxchgl %3, %1 \n"
3965
3966 "2: .section .fixup, \"ax\" \n"
3967 "3: mov %2, %0 \n"
3968 --- a/include/asm-x86/futex_64.h
3969 +++ b/include/asm-x86/futex_64.h
3970 @@ -27,7 +27,7 @@
3971 "1: movl %2, %0\n\
3972 movl %0, %3\n" \
3973 insn "\n" \
3974 -"2: " LOCK_PREFIX "cmpxchgl %3, %2\n\
3975 +"2: "lock cmpxchgl %3, %2\n\
3976 jnz 1b\n\
3977 3: .section .fixup,\"ax\"\n\
3978 4: mov %5, %1\n\
3979 @@ -62,7 +62,7 @@ futex_atomic_op_inuser (int encoded_op,
3980 __futex_atomic_op1("xchgl %0, %2", ret, oldval, uaddr, oparg);
3981 break;
3982 case FUTEX_OP_ADD:
3983 - __futex_atomic_op1(LOCK_PREFIX "xaddl %0, %2", ret, oldval,
3984 + __futex_atomic_op1("lock xaddl %0, %2", ret, oldval,
3985 uaddr, oparg);
3986 break;
3987 case FUTEX_OP_OR:
3988 @@ -101,7 +101,7 @@ futex_atomic_cmpxchg_inatomic(int __user
3989 return -EFAULT;
3990
3991 __asm__ __volatile__(
3992 - "1: " LOCK_PREFIX "cmpxchgl %3, %1 \n"
3993 + "1: lock cmpxchgl %3, %1 \n"
3994
3995 "2: .section .fixup, \"ax\" \n"
3996 "3: mov %2, %0 \n"
3997
3998 --
3999
4000 From gregkh@mini.kroah.org Thu Feb 7 12:43:20 2008
4001 Message-Id: <20080207204320.723170191@mini.kroah.org>
4002 References: <20080207204118.202098927@mini.kroah.org>
4003 User-Agent: quilt/0.46-1
4004 Date: Thu, 07 Feb 2008 12:42:02 -0800
4005 From: Greg KH <gregkh@suse.de>
4006 To: linux-kernel@vger.kernel.org,
4007 stable@kernel.org
4008 Cc: Justin Forbes <jmforbes@linuxtx.org>,
4009 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
4010 Theodore Ts'o <tytso@mit.edu>,
4011 Randy Dunlap <rdunlap@xenotime.net>,
4012 Dave Jones <davej@redhat.com>,
4013 Chuck Wolber <chuckw@quantumlinux.com>,
4014 Chris Wedgwood <reviews@ml.cw.f00f.org>,
4015 Michael Krufky <mkrufky@linuxtv.org>,
4016 Chuck Ebbert <cebbert@redhat.com>,
4017 Domenico Andreoli <cavokz@gmail.com>,
4018 torvalds@linux-foundation.org,
4019 akpm@linux-foundation.org,
4020 alan@lxorguk.ukuu.org.uk,
4021 Michael E Brown <michael_e_brown@dell.com>
4022 Subject: [patch 44/45] Driver core: Revert "Fix Firmware class name collision"
4023 Content-Disposition: inline; filename=driver-core-revert-fix-firmware-class-name-collision.patch
4024 Content-Length: 1153
4025 Lines: 35
4026
4027 2.6.24-stable review patch. If anyone has any objections, please let us know.
4028
4029 ------------------
4030 From: Michael E Brown <Michael_E_Brown@dell.com>
4031
4032 patch 7d640c4a5b36c4733460065db1554da924044511 in mainline.
4033
4034 This reverts commit 109f0e93b6b728f03c1eb4af02bc25d71b646c59.
4035
4036 The original patch breaks BIOS updates on all Dell machines. The path to
4037 the firmware file for the dell_rbu driver changes, which breaks all of
4038 the userspace tools which rely on it.
4039
4040 Note that this patch re-introduces a problem with i2c name collision
4041 that was previously fixed by this patch.
4042
4043 Signed-off-by: Michael E Brown <michael_e_brown@dell.com>
4044 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
4045
4046
4047 ---
4048 drivers/base/firmware_class.c | 3 ++-
4049 1 file changed, 2 insertions(+), 1 deletion(-)
4050
4051 --- a/drivers/base/firmware_class.c
4052 +++ b/drivers/base/firmware_class.c
4053 @@ -292,7 +292,8 @@ firmware_class_timeout(u_long data)
4054
4055 static inline void fw_setup_device_id(struct device *f_dev, struct device *dev)
4056 {
4057 - snprintf(f_dev->bus_id, BUS_ID_SIZE, "firmware-%s", dev->bus_id);
4058 + /* XXX warning we should watch out for name collisions */
4059 + strlcpy(f_dev->bus_id, dev->bus_id, BUS_ID_SIZE);
4060 }
4061
4062 static int fw_register_device(struct device **dev_p, const char *fw_name,
4063
4064 --
4065
4066 From gregkh@mini.kroah.org Thu Feb 7 12:43:21 2008
4067 Message-Id: <20080207204320.947564964@mini.kroah.org>
4068 References: <20080207204118.202098927@mini.kroah.org>
4069 User-Agent: quilt/0.46-1
4070 Date: Thu, 07 Feb 2008 12:42:03 -0800
4071 From: Greg KH <gregkh@suse.de>
4072 To: linux-kernel@vger.kernel.org,
4073 stable@kernel.org
4074 Cc: Justin Forbes <jmforbes@linuxtx.org>,
4075 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
4076 Theodore Ts'o <tytso@mit.edu>,
4077 Randy Dunlap <rdunlap@xenotime.net>,
4078 Dave Jones <davej@redhat.com>,
4079 Chuck Wolber <chuckw@quantumlinux.com>,
4080 Chris Wedgwood <reviews@ml.cw.f00f.org>,
4081 Michael Krufky <mkrufky@linuxtv.org>,
4082 Chuck Ebbert <cebbert@redhat.com>,
4083 Domenico Andreoli <cavokz@gmail.com>,
4084 torvalds@linux-foundation.org,
4085 akpm@linux-foundation.org,
4086 alan@lxorguk.ukuu.org.uk,
4087 Dave Airlie <airlied@linux.ie>
4088 Subject: [patch 45/45] drm: the drm really should call pci_set_master..
4089 Content-Disposition: inline; filename=drm-the-drm-really-should-call-pci_set_master.patch
4090 Content-Length: 695
4091 Lines: 27
4092
4093 2.6.24-stable review patch. If anyone has any objections, please let us know.
4094
4095 ------------------
4096 From: Dave Airlie <airlied@linux.ie>
4097
4098
4099 (submitted upstream as 19a8f59ab8ceee751ea720085098355d53f727d6)
4100
4101 perhaps bonghits could turn on my bus-mastering because the drm
4102 certainly never bothered doing it before.
4103
4104 Signed-off-by: Dave Airlie <airlied@linux.ie>
4105 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
4106
4107 ---
4108 drivers/char/drm/drm_stub.c | 1 +
4109 1 file changed, 1 insertion(+)
4110
4111 --- a/drivers/char/drm/drm_stub.c
4112 +++ b/drivers/char/drm/drm_stub.c
4113 @@ -218,6 +218,7 @@ int drm_get_dev(struct pci_dev *pdev, co
4114 if (ret)
4115 goto err_g1;
4116
4117 + pci_set_master(pdev);
4118 if ((ret = drm_fill_in_dev(dev, pdev, ent, driver))) {
4119 printk(KERN_ERR "DRM: Fill_in_dev failed.\n");
4120 goto err_g2;
4121
4122 --
4123
4124 From gregkh@mini.kroah.org Thu Feb 7 12:43:09 2008
4125 Message-Id: <20080207204118.202098927@mini.kroah.org>
4126 User-Agent: quilt/0.46-1
4127 Date: Thu, 07 Feb 2008 12:41:18 -0800
4128 From: Greg KH <gregkh@suse.de>
4129 To: linux-kernel@vger.kernel.org,
4130 stable@kernel.org
4131 Cc: Justin Forbes <jmforbes@linuxtx.org>,
4132 Zwane Mwaikambo <zwane@arm.linux.org.uk>,
4133 Theodore Ts'o <tytso@mit.edu>,
4134 Randy Dunlap <rdunlap@xenotime.net>,
4135 Dave Jones <davej@redhat.com>,
4136 Chuck Wolber <chuckw@quantumlinux.com>,
4137 Chris Wedgwood <reviews@ml.cw.f00f.org>,
4138 Michael Krufky <mkrufky@linuxtv.org>,
4139 Chuck Ebbert <cebbert@redhat.com>,
4140 Domenico Andreoli <cavokz@gmail.com>,
4141 torvalds@linux-foundation.org,
4142 akpm@linux-foundation.org,
4143 alan@lxorguk.ukuu.org.uk
4144 Subject: [patch 00/45] 2.6.24-stable review
4145 Content-Length: 735
4146 Lines: 17
4147
4148 This is the start of the stable review cycle for the 2.6.24.1 release.
4149 There are 45 patches in this series, all will be posted as a response to
4150 this one. If anyone has any issues with these being applied, please let
4151 us know. If anyone is a maintainer of the proper subsystem, and wants
4152 to add a Signed-off-by: line to the patch, please respond with it.
4153
4154 These patches are sent out with a number of different people on the Cc:
4155 line. If you wish to be a reviewer, please email stable@kernel.org to
4156 add your name to the list. If you want to be off the reviewer list,
4157 also email us.
4158
4159 Responses should be made by Friday, Feb 8 2008, 21:00:00 UTC@.
4160 Anything received after that time might be too late.
4161
4162 thanks,
4163
4164 the -stable release team
4165