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,
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
30 2.6.24-stable review patch. If anyone has any objections, please let us know.
33 From: Michael Krufky <mkrufky@linuxtv.org>
35 [PATCH] DVB: cx23885: add missing subsystem ID for Hauppauge HVR1800 Retail
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>
43 Documentation/video4linux/CARDLIST.cx23885 | 2 +-
44 drivers/media/video/cx23885/cx23885-cards.c | 4 ++++
45 2 files changed, 5 insertions(+), 1 deletion(-)
47 --- linux-2.6.24.1.orig/Documentation/video4linux/CARDLIST.cx23885
48 +++ linux-2.6.24.1/Documentation/video4linux/CARDLIST.cx23885
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,
62 + .subdevice = 0x7809,
63 + .card = CX23885_BOARD_HAUPPAUGE_HVR1800,
65 + .subvendor = 0x0070,
67 .card = CX23885_BOARD_HAUPPAUGE_HVR1250,
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,
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,
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
103 2.6.24-stable review patch. If anyone has any objections, please let us know.
106 From: Pekka J Enberg <penberg@cs.helsinki.fi>
108 [ Upstream commit: 556a169dab38b5100df6f4a45b655dddd3db94c1 ]
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
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.
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>
129 mm/slab.c | 46 +++++++++++++++++++++++-----------------------
130 1 file changed, 23 insertions(+), 23 deletions(-)
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 {
136 * Need this for bootstrapping a per node allocator.
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
143 -#define SIZE_L3 (1 + MAX_NUMNODES)
144 +#define SIZE_AC MAX_NUMNODES
145 +#define SIZE_L3 (2 * MAX_NUMNODES)
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
153 + * For setting up all the kmem_list3s for cache whose buffer_size is same as
154 + * size of kmem_list3.
156 +static void __init set_up_list3s(struct kmem_cache *cachep, int index)
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;
169 * Initialisation. Called after the page allocator have been initialised and
172 @@ -1432,6 +1448,7 @@ void __init kmem_cache_init(void)
173 if (i < MAX_NUMNODES)
174 cache_cache.nodelists[i] = NULL;
176 + set_up_list3s(&cache_cache, CACHE_CACHE);
179 * Fragmentation resistance on low memory - only use bigger
180 @@ -1587,10 +1604,9 @@ void __init kmem_cache_init(void)
184 - /* Replace the static kmem_list3 structures for the boot cpu */
185 - init_list(&cache_cache, &initkmem_list3[CACHE_CACHE], node);
187 for_each_online_node(nid) {
188 + init_list(&cache_cache, &initkmem_list3[CACHE_CACHE], nid);
190 init_list(malloc_sizes[INDEX_AC].cs_cachep,
191 &initkmem_list3[SIZE_AC + nid], nid);
193 @@ -1960,22 +1976,6 @@ static void slab_destroy(struct kmem_cac
198 - * For setting up all the kmem_list3s for cache whose buffer_size is same as
199 - * size of kmem_list3.
201 -static void __init set_up_list3s(struct kmem_cache *cachep, int index)
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;
213 static void __kmem_cache_destroy(struct kmem_cache *cachep)
216 @@ -2099,7 +2099,7 @@ static int __init_refok setup_cpu_cache(
217 g_cpucache_up = PARTIAL_L3;
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),
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,
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
255 2.6.24-stable review patch. If anyone has any objections, please let us know.
258 From: Nick Piggin <npiggin@suse.de>
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.
264 I've audited the tree and attempted to fix these problems (usually by
265 adding VM_DONTEXPAND where it is not obvious).
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>
272 drivers/char/drm/drm_vm.c | 2 ++
273 drivers/char/mspec.c | 2 +-
274 fs/ncpfs/mmap.c | 4 ----
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(-)
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;
287 vma->vm_flags |= VM_RESERVED; /* Don't swap */
288 + vma->vm_flags |= VM_DONTEXPAND;
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. */
295 vma->vm_flags |= VM_RESERVED; /* Don't swap */
296 + vma->vm_flags |= VM_DONTEXPAND;
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;
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;
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;
321 /* what we can read in one go */
322 bufsize = NCP_SERVER(inode)->buffer_size;
326 @@ -92,6 +92,7 @@ static int relay_mmap_buf(struct rchan_b
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);
336 @@ -2215,7 +2215,7 @@ int install_special_mapping(struct mm_st
337 vma->vm_start = addr;
338 vma->vm_end = addr + len;
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);
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
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;
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;
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);
367 + max_bufs = chan->frag_number;
370 + if (pgoff >= max_bufs)
371 + return NOPAGE_SIGBUS;
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;
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;
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
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;
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,
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
429 2.6.24-stable review patch. If anyone has any objections, please let us know.
432 From: Alan Cox <alan@lxorguk.ukuu.org.uk>
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.
438 Signed-off-by: Alan Cox <alan@redhat.com>
439 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
442 drivers/usb/serial/keyspan.c | 2 +-
443 1 file changed, 1 insertion(+), 1 deletion(-)
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
449 port = (struct usb_serial_port *) urb->context;
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 */
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,
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
488 2.6.24-stable review patch. If anyone has any objections, please let us know.
491 From: Li Yang <leoli@freescale.com>
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.
496 http://bugzilla.kernel.org/show_bug.cgi?id=9595
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>
503 drivers/usb/gadget/fsl_usb2_udc.c | 2 +-
504 1 file changed, 1 insertion(+), 1 deletion(-)
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__);
512 - if (!_ep || (!ep->desc && ep_index(ep))) {
513 + if (unlikely(!_ep || !ep->desc)) {
514 VDBG("%s, bad ep\n", __FUNCTION__);
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,
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
549 2.6.24-stable review patch. If anyone has any objections, please let us know.
552 From: Craig Shelley <craig@microtron.org.uk>
554 Six new device IDs for CP2101 driver.
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>
561 drivers/usb/serial/cp2101.c | 6 ++++++
562 1 file changed, 6 insertions(+)
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 */
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,
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
620 2.6.24-stable review patch. If anyone has any objections, please let us know.
623 From: Piotr Roszatycki <dexter@debian.org>
627 4348:5523 WinChipHead USB->RS 232 adapter with Prolifec PL 2303 chipset
629 [ mingo@elte.hu: merged it and nursed it upstream ]
631 Signed-off-by: Ingo Molnar <mingo@elte.hu>
632 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
635 drivers/usb/serial/pl2303.c | 1 +
636 drivers/usb/serial/pl2303.h | 5 +++++
637 2 files changed, 6 insertions(+)
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 */
649 --- a/drivers/usb/serial/pl2303.h
650 +++ b/drivers/usb/serial/pl2303.h
652 /* Corega CG-USBRS232R Serial Adapter */
653 #define COREGA_VENDOR_ID 0x07aa
654 #define COREGA_PRODUCT_ID 0x002a
656 +/* HL HL-340 (ID: 4348:5523) */
657 +#define HL340_VENDOR_ID 0x4348
658 +#define HL340_PRODUCT_ID 0x5523
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,
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
692 2.6.24-stable review patch. If anyone has any objections, please let us know.
695 From: Jessica L. Blank <j@twu.net>
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).
700 Signed-off-by: Jessica L Blank <j@twu.net>
701 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
704 drivers/usb/serial/sierra.c | 2 ++
705 1 file changed, 2 insertions(+)
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 */
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 */
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,
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
756 2.6.24-stable review patch. If anyone has any objections, please let us know.
759 From: Damien Stuart <dstuart@dstuart.org>
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
766 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
769 drivers/usb/serial/pl2303.c | 1 +
770 drivers/usb/serial/pl2303.h | 3 +++
771 2 files changed, 4 insertions(+)
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 */
783 --- a/drivers/usb/serial/pl2303.h
784 +++ b/drivers/usb/serial/pl2303.h
786 #define HL340_VENDOR_ID 0x4348
787 #define HL340_PRODUCT_ID 0x5523
789 +/* Y.C. Cable U.S.A., Inc - USB to RS-232 */
790 +#define YCCABLE_VENDOR_ID 0x05ad
791 +#define YCCABLE_PRODUCT_ID 0x0fba
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,
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
824 2.6.24-stable review patch. If anyone has any objections, please let us know.
827 From: Kevin Lloyd <linux@sierrawireless.com>
829 The following improvements were made:
830 - Added new product support: MC5725, AC 880 U, MP 3G (UMTS & CDMA)
832 Signed-off-by: Kevin Lloyd <linux@sierrawireless.com>
833 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
836 drivers/usb/serial/sierra.c | 9 +++++++++
837 1 file changed, 9 insertions(+)
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 */
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 */
856 + { USB_DEVICE(0x1199, 0x6468) }, /* Sierra Wireless MP3G - EVDO */
857 + { USB_DEVICE(0x1199, 0x6469) }, /* Sierra Wireless MP3G - UMTS/HSPA */
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 */
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 */
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 */
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,
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
913 2.6.24-stable review patch. If anyone has any objections, please let us know.
916 From: Peter Stark <Peter.Stark@t-online.de>
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.
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
931 Signed-off-by: Peter Stark <peter.stark@t-online.de>
932 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
935 drivers/usb/serial/ftdi_sio.c | 44 ++++++++++++++++++++----------------------
936 drivers/usb/serial/ftdi_sio.h | 1
937 2 files changed, 22 insertions(+), 23 deletions(-)
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) },
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
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
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 */
1002 * Definitions for ID TECH (www.idt-net.com) devices
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,
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
1034 2.6.24-stable review patch. If anyone has any objections, please let us know.
1037 From: Franco Lanza <nextime@nexlab.it>
1039 little patches only to add vendor/device id of ATK_16IC CCD cam for
1042 From: Franco Lanza <nextime@nexlab.it>
1043 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1046 drivers/usb/serial/ftdi_sio.c | 1 +
1047 drivers/usb/serial/ftdi_sio.h | 1 +
1048 2 files changed, 2 insertions(+)
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
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 */
1069 * Protego product ids
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,
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
1102 2.6.24-stable review patch. If anyone has any objections, please let us know.
1105 From: Bruno Redondi <bruno.redondi@altarisoluzione.com>
1107 Added support for Onda H600/Zte MF330 GPRS/UMTS/HSDPA datacard
1109 Signed-off-by: Bruno Redondi <bruno.redondi@altarisoluzione.com>
1110 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1113 drivers/usb/serial/sierra.c | 2 ++
1114 1 file changed, 2 insertions(+)
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 []
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 */
1124 { USB_DEVICE(0x1199, 0x0FFF), .driver_info = DEVICE_INSTALLER},
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 */
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,
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
1166 2.6.24-stable review patch. If anyone has any objections, please let us know.
1169 From: Daniel Kozák <kozzi11@gmail.com>
1171 Remove entry for Huawei E620 UMTS/HSDPA card (ID: 12d1:1001) in pl2303 driver
1172 Option driver is use instead
1174 Signed-off-by: Daniel Kozák <kozzi11@gmail.com>
1175 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1178 drivers/usb/serial/pl2303.c | 1 -
1179 drivers/usb/serial/pl2303.h | 4 ----
1180 2 files changed, 5 deletions(-)
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
1195 #define ALCOR_VENDOR_ID 0x058F
1196 #define ALCOR_PRODUCT_ID 0x9720
1198 -/* Huawei E620 UMTS/HSDPA card (ID: 12d1:1001) */
1199 -#define HUAWEI_VENDOR_ID 0x12d1
1200 -#define HUAWEI_PRODUCT_ID 0x1001
1202 /* Willcom WS002IN Data Driver (by NetIndex Inc.) */
1203 #define WS002IN_VENDOR_ID 0x11f6
1204 #define WS002IN_PRODUCT_ID 0x2001
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,
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
1237 2.6.24-stable review patch. If anyone has any objections, please let us know.
1240 From: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
1242 pl2303: add support for RATOC REX-USB60F
1244 This patch adds support for RATOC REX-USB60F Serial Adapters,
1245 which is widely used in Japan recently.
1247 Signed-off-by: Akira Tsukamoto <akirat@rd.scei.sony.co.jp>
1248 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1251 drivers/usb/serial/pl2303.c | 1 +
1252 drivers/usb/serial/pl2303.h | 1 +
1253 2 files changed, 2 insertions(+)
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
1269 #define RATOC_VENDOR_ID 0x0584
1270 #define RATOC_PRODUCT_ID 0xb000
1271 +#define RATOC_PRODUCT_ID_USB60F 0xb020
1273 #define TRIPP_VENDOR_ID 0x2478
1274 #define TRIPP_PRODUCT_ID 0x2008
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,
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
1307 2.6.24-stable review patch. If anyone has any objections, please let us know.
1310 From: Ed Beroset <beroset@mindspring.com>
1312 Added support for the Elster Unicom III Optical Probe.
1313 The device ID has already been added to the usb.ids file.
1315 Signed-off-by: Ed Beroset <beroset@mindspring.com>
1316 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1319 drivers/usb/serial/ftdi_sio.c | 1 +
1320 drivers/usb/serial/ftdi_sio.h | 2 ++
1321 2 files changed, 3 insertions(+)
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
1336 #define OLIMEX_VID 0x15BA
1337 #define OLIMEX_ARM_USB_OCD_PID 0x0003
1339 +/* www.elsterelectricity.com Elster Unicom III Optical Probe */
1340 +#define FTDI_ELSTER_UNICOM_PID 0xE700 /* Product Id */
1343 * The Mobility Lab (TML)
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,
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
1376 2.6.24-stable review patch. If anyone has any objections, please let us know.
1379 From: Oliver Neukum <oliver@neukum.org>
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
1385 Signed-off-by: Oliver Neukum <oneukum@suse.de>
1386 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1389 drivers/usb/core/hub.c | 2 +-
1390 1 file changed, 1 insertion(+), 1 deletion(-)
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);
1398 - buf = kmalloc (len, GFP_KERNEL);
1399 + buf = kmalloc(len, GFP_NOIO);
1401 dev_err(&udev->dev, "no mem to re-read configs after reset\n");
1402 /* assume the worst */
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,
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
1434 2.6.24-stable review patch. If anyone has any objections, please let us know.
1437 From: Nate Carlson <natecars@natecarlson.com>
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
1443 If we could get this in, that'd be sweet. ;) Thanks!
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
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
1456 From: Nate Carlson <natecars@natecarlson.com>
1457 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1460 drivers/usb/serial/option.c | 1 +
1461 1 file changed, 1 insertion(+)
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) },
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,
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
1506 2.6.24-stable review patch. If anyone has any objections, please let us know.
1509 From: Grant Grundler <grundler@parisc-linux.org>
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"
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>
1522 drivers/usb/storage/unusual_devs.h | 8 ++++++++
1523 1 file changed, 8 insertions(+)
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),
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.
1534 +UNUSUAL_DEV( 0x03f0, 0x4002, 0x0001, 0x0001,
1536 + "PhotoSmart R707",
1537 + US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_CAPACITY),
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.
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,
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
1575 2.6.24-stable review patch. If anyone has any objections, please let us know.
1578 From: Jan Andersson <jan@gaisler.com>
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
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>
1589 drivers/usb/misc/usbtest.c | 1 +
1590 1 file changed, 1 insertion(+)
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);
1598 + le16_to_cpus(&status);
1600 dbg ("ep %02x bogus status: %04x != 1", ep, status);
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,
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
1634 2.6.24-stable review patch. If anyone has any objections, please let us know.
1637 From: Greg Kroah-Hartman <gregkh@suse.de>
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.
1644 Note, the module-init-tools package also needs to be changed to properly
1645 generate the depmod tables.
1647 Cc: Janusz <janumix@poczta.fm>
1648 Cc: Jon Masters <jcm@redhat.com>
1649 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1652 drivers/usb/core/driver.c | 4 ++--
1653 scripts/mod/file2alias.c | 2 +-
1654 2 files changed, 3 insertions(+), 3 deletions(-)
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))
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
1675 - if (!(id->idVendor | id->bDeviceClass | id->bInterfaceClass))
1676 + if (!(id->idVendor | id->idProduct | id->bDeviceClass | id->bInterfaceClass))
1679 /* Convert numeric bcdDevice range into fnmatch-able pattern(s) */
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,
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
1713 2.6.24-stable review patch. If anyone has any objections, please let us know.
1716 From: Stefan Bader <stefan.bader@canonical.com>
1718 The device setup did miss to initialize the num_interrupt_out field, thus
1719 failing to successfully complete the probe function.
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>
1726 drivers/usb/serial/kobil_sct.c | 1 +
1727 1 file changed, 1 insertion(+)
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,
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,
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
1774 2.6.24-stable review patch. If anyone has any objections, please let us know.
1777 From: Ayaz Abdulla <aabdulla@nvidia.com>
1779 patch 2b91213064bd882c3adf35f028c6d12fab3269ec in mainline.
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).
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>
1791 drivers/net/forcedeth.c | 16 ++++++++--------
1792 1 file changed, 8 insertions(+), 8 deletions(-)
1794 --- a/drivers/net/forcedeth.c
1795 +++ b/drivers/net/forcedeth.c
1796 @@ -5593,35 +5593,35 @@ static struct pci_device_id pci_tbl[] =
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,
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,
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,
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,
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,
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,
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,
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,
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,
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
1873 2.6.24-stable review patch. If anyone has any objections, please let us know.
1876 From: Peter Zijlstra <a.p.zijlstra@chello.nl>
1878 patch 0ccf831cbee94df9c5006dd46248c0f07847dd7c in mainline.
1880 On Sat, 2008-01-05 at 13:35 -0800, Davide Libenzi wrote:
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.
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, ...);
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:
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, ...);
1909 > The code "if (tncur->wq == wq || ..." prevents re-entering the same
1912 Since the epoll code is very careful to not nest same instance locks
1913 allow the recursion.
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>
1922 fs/eventpoll.c | 2 +-
1923 include/linux/wait.h | 16 ++++++++++++++++
1924 2 files changed, 17 insertions(+), 1 deletion(-)
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);
1931 /* Do really wake up now */
1933 + wake_up_nested(wq, 1 + wake_nests);
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)
1943 +#ifdef CONFIG_DEBUG_LOCK_ALLOC
1945 + * macro to avoid include hell
1947 +#define wake_up_nested(x, s) \
1949 + unsigned long flags; \
1951 + spin_lock_irqsave_nested(&(x)->lock, flags, (s)); \
1952 + wake_up_locked(x); \
1953 + spin_unlock_irqrestore(&(x)->lock, flags); \
1956 +#define wake_up_nested(x, s) wake_up(x)
1959 #define __wait_event(wq, condition) \
1961 DEFINE_WAIT(__wait); \
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,
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,
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
1994 2.6.24-stable review patch. If anyone has any objections, please let us know.
1997 From: Oleg Nesterov <oleg@tv-sign.ru>
1999 patch 8a459e44ad837018ea5c34a9efe8eb4ad27ded26 in mainline.
2001 Fix ->vm_file accounting, mmap_region() may do do_munmap().
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>
2010 mm/fremap.c | 5 ++++-
2011 1 file changed, 4 insertions(+), 1 deletion(-)
2015 @@ -190,10 +190,13 @@ asmlinkage long sys_remap_file_pages(uns
2017 if (mapping_cap_account_dirty(mapping)) {
2019 + struct file *file = vma->vm_file;
2021 flags &= MAP_NONBLOCK;
2022 - addr = mmap_region(vma->vm_file, start, size,
2024 + addr = mmap_region(file, start, size,
2025 flags, vma->vm_flags, pgoff, 1);
2027 if (IS_ERR_VALUE(addr)) {
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,
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
2062 2.6.24-stable review patch. If anyone has any objections, please let us know.
2065 From: Ian Abbott <abbotti@mev.co.uk>
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.
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
2074 Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
2075 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2078 drivers/pci/hotplug/fakephp.c | 39 +++++++++++++++++++++++++++++++++++----
2079 1 file changed, 35 insertions(+), 4 deletions(-)
2081 --- a/drivers/pci/hotplug/fakephp.c
2082 +++ b/drivers/pci/hotplug/fakephp.c
2084 #include <linux/init.h>
2085 #include <linux/string.h>
2086 #include <linux/slab.h>
2087 +#include <linux/workqueue.h>
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;
2100 static LIST_HEAD(slot_list);
2101 +static struct workqueue_struct *dummyphp_wq;
2103 +static void pci_rescan_worker(struct work_struct *work);
2104 +static DECLARE_WORK(pci_rescan_work, pci_rescan_worker);
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);
2112 - dslot = kmalloc(sizeof(struct dummy_slot), GFP_KERNEL);
2113 + dslot = kzalloc(sizeof(struct dummy_slot), GFP_KERNEL);
2117 @@ -164,6 +171,14 @@ static void remove_slot(struct dummy_slo
2118 err("Problem unregistering a slot %s\n", dslot->slot->name);
2121 +/* called from the single-threaded workqueue handler to remove a slot */
2122 +static void remove_slot_worker(struct work_struct *work)
2124 + struct dummy_slot *dslot =
2125 + container_of(work, struct dummy_slot, remove_work);
2126 + remove_slot(dslot);
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);
2136 +/* called from the single-threaded workqueue handler to rescan all pci buses */
2137 +static void pci_rescan_worker(struct work_struct *work)
2142 static int enable_slot(struct hotplug_slot *hotplug_slot)
2144 /* mis-use enable_slot for rescanning of the pci bus */
2146 + cancel_work_sync(&pci_rescan_work);
2147 + queue_work(dummyphp_wq, &pci_rescan_work);
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");
2155 + if (test_and_set_bit(0, &dslot->removed)) {
2156 + dbg("Slot already scheduled for removal\n");
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);
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);
2174 @@ -340,6 +366,7 @@ static void cleanup_slots (void)
2175 struct list_head *next;
2176 struct dummy_slot *dslot;
2178 + destroy_workqueue(dummyphp_wq);
2179 list_for_each_safe (tmp, next, &slot_list) {
2180 dslot = list_entry (tmp, struct dummy_slot, node);
2182 @@ -351,6 +378,10 @@ static int __init dummyphp_init(void)
2184 info(DRIVER_DESC "\n");
2186 + dummyphp_wq = create_singlethread_workqueue(MY_NAME);
2190 return pci_scan_buses();
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,
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
2224 2.6.24-stable review patch. If anyone has any objections, please let us know.
2227 From: Len Brown <len.brown@intel.com>
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.
2234 Signed-off-by: Len Brown <len.brown@intel.com>
2235 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
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(-)
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."
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"),
2259 - .callback = dmi_disable_osi_linux,
2260 - .ident = "Acer, inc.",
2262 - DMI_MATCH(DMI_SYS_VENDOR, "Acer, inc."),
2266 + * note that dmi_check_system() uses strstr()
2267 + * to match sub-strings rather than !strcmp(),
2268 + * so "Acer" below matches "Acer, inc." above.
2271 * Disable OSI(Linux) warnings on all "Acer"
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"),
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",
2288 @@ -474,6 +474,11 @@ static struct dmi_system_id acpi_osi_dmi
2290 * _OSI(Linux) confirmed to be a NOP:
2291 * DMI_MATCH(DMI_PRODUCT_NAME, "P1-J150B"),
2292 + * with DMI_MATCH(DMI_BOARD_NAME, "ROCKY"),
2295 + * DMI_MATCH(DMI_PRODUCT_NAME, "S1-MDGDG"),
2296 + * with DMI_MATCH(DMI_BOARD_NAME, "ROCKY"),
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
2304 #define OSI_LINUX_ENABLE 0
2307 +static struct osi_linux {
2308 unsigned int enable:1;
2310 unsigned int cmdline:1;
2311 @@ -1213,24 +1213,24 @@ acpi_status acpi_os_release_object(acpi_
2313 * Returns 0 on success
2315 -int acpi_dmi_dump(void)
2316 +static int acpi_dmi_dump(void)
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));
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)
2351 - * dmi_get_slot - return dmi_ident[slot]
2352 - * @slot: index into dmi_ident[]
2354 -char *dmi_get_slot(int slot)
2356 - return(dmi_ident[slot]);
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);
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; }
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,
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
2410 2.6.24-stable review patch. If anyone has any objections, please let us know.
2413 From: Sam Ravnborg <sam@ravnborg.org>
2415 patch 3a900d89db35c133bc0874e71d9156b22db362b4 in mainline
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.
2421 Fix this in the Makefile.
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>
2433 arch/x86/kernel/Makefile_32 | 3 ++-
2434 1 file changed, 2 insertions(+), 1 deletion(-)
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
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
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,
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
2478 2.6.24-stable review patch. If anyone has any objections, please let us know.
2481 From: Stephen Hemminger <shemminger@linux-foundation.org>
2483 patch a7bffe722c996679b4fb2103ecaf673ec2b9b4a7 in mainline.
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.
2489 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2490 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2493 drivers/net/sky2.c | 5 +----
2494 1 file changed, 1 insertion(+), 4 deletions(-)
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);
2502 + sky2_set_multicast(dev);
2506 @@ -3533,8 +3534,6 @@ static int sky2_set_ringparam(struct net
2511 - sky2_set_multicast(dev);
2515 @@ -4368,8 +4367,6 @@ static int sky2_resume(struct pci_dev *p
2520 - sky2_set_multicast(dev);
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,
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
2554 2.6.24-stable review patch. If anyone has any objections, please let us know.
2557 From: Stephen Hemminger <shemminger@linux-foundation.org>
2559 patch 82637e808478087ce861129745fa60cc37e7929d in mainline
2561 This patch disables config mode access after clearing PCI settings.
2562 Without this change WOL won't work on some BIOS's
2564 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
2565 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2568 drivers/net/sky2.c | 9 ++++++++-
2569 1 file changed, 8 insertions(+), 1 deletion(-)
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 };
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 */
2581 @@ -632,7 +633,8 @@ static void sky2_phy_power(struct sky2_h
2582 reg1 |= coma_mode[port];
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);
2591 @@ -2427,6 +2429,7 @@ static void sky2_hw_intr(struct sky2_hw
2592 if (status & (Y2_IS_MST_ERR | Y2_IS_IRQ_STAT)) {
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
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);
2606 if (status & Y2_IS_PCI_EXP) {
2607 /* PCI-Express uncorrectable Error occurred */
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,
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);
2617 sky2_read32(hw, Y2_CFG_AER + PCI_ERR_UNCOR_STATUS);
2618 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2621 if (status & Y2_HWE_L1_MASK)
2622 @@ -2812,6 +2818,7 @@ static void sky2_reset(struct sky2_hw *h
2626 + sky2_write8(hw, B2_TST_CTRL1, TST_CFG_WRITE_OFF);
2628 for (i = 0; i < hw->ports; i++) {
2629 sky2_write8(hw, SK_REG(i, GMAC_LINK_CTRL), GMLC_RST_SET);
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,
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
2664 2.6.24-stable review patch. If anyone has any objections, please let us know.
2667 From: Michael Buesch <mb@bu3sch.de>
2669 patch 7be1bb6b798d506693d2d8668e801951996b5a4a in mainline.
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
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>
2687 drivers/net/wireless/b43/main.c | 9 +++++++--
2688 1 file changed, 7 insertions(+), 2 deletions(-)
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);
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);
2701 @@ -3493,6 +3491,13 @@ static int b43_start(struct ieee80211_hw
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;
2712 /* First register RFkill.
2713 * LEDs that are registered later depend on it. */
2714 b43_rfkill_init(dev);
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,
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
2749 2.6.24-stable review patch. If anyone has any objections, please let us know.
2752 From: Michael Buesch <mb@bu3sch.de>
2754 patch 09552ccd8277e6382097e93a40f7311a09449367 in mainline
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).
2760 This might only trigger shortly after resume before mac80211 reassociated
2761 and reconfigured the keys.
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.
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>
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(-)
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));
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))
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);
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);
2804 if (unlikely(err)) {
2805 b43err(dev->wl, "DMA tx mapping failure\n");
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
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
2820 B43_WARN_ON(key_idx >= dev->max_nr_keys);
2821 key = &(dev->key[key_idx]);
2822 - B43_WARN_ON(!key->keyconf);
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. */
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;
2843 -void b43_generate_txhdr(struct b43_wldev *dev,
2844 +int b43_generate_txhdr(struct b43_wldev *dev,
2846 const unsigned char *fragment_data,
2847 unsigned int fragment_len,
2848 const struct ieee80211_tx_control *txctl, u16 cookie)
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);
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 */
2863 -void b43_generate_txhdr(struct b43_wldev *dev,
2864 +int b43_generate_txhdr(struct b43_wldev *dev,
2866 const unsigned char *fragment_data,
2867 unsigned int fragment_len,
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,
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
2902 2.6.24-stable review patch. If anyone has any objections, please let us know.
2905 From: Michael Buesch <mb@bu3sch.de>
2907 patch 8dd0100ce9511e52614ecd0a6587c13ce5769c8b in mainline.
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.
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>
2921 drivers/net/wireless/b43/dma.c | 19 ++++++++++++++++---
2922 1 file changed, 16 insertions(+), 3 deletions(-)
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
2928 const struct b43_dma_ops *ops = ring->ops;
2931 + int slot, old_top_slot, old_used_slots;
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);
2939 + old_top_slot = ring->current_slot;
2940 + old_used_slots = ring->used_slots;
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;
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;
2964 ops->fill_descriptor(ring, desc, meta_hdr->dmaaddr,
2965 sizeof(struct b43_txhdr_fw4), 1, 0, 0);
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);
2971 + ring->current_slot = old_top_slot;
2972 + ring->used_slots = old_used_slots;
2976 @@ -1159,6 +1170,8 @@ static int dma_tx_fragment(struct b43_dm
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;
2983 goto out_free_bounce;
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,
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
3018 2.6.24-stable review patch. If anyone has any objections, please let us know.
3021 From: Stefano Brivio <stefano.brivio@polimi.it>
3023 patch 0cd67d48b519c3d8d89d238fab1cf68a5289638a in mainline.
3025 Fix the crash reported below, which seems to happen on bcm4306 rev. 2 devices
3026 only while using PIO:
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
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
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
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>
3070 drivers/net/wireless/b43legacy/pio.c | 3 +++
3071 1 file changed, 3 insertions(+)
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);
3082 queue->tx_devq_packets--;
3083 queue->tx_devq_used -= (packet->skb->len +
3084 sizeof(struct b43legacy_txhdr_fw3));
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,
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
3120 2.6.24-stable review patch. If anyone has any objections, please let us know.
3123 From: Stefano Brivio <stefano.brivio@polimi.it>
3125 patch ada50731c0346bf900dc387edd3a6961297bf2d3 in mainline.
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
3137 This patch by Michael Buesch has been ported to b43legacy.
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>
3145 drivers/net/wireless/b43legacy/main.c | 9 +++++++--
3146 1 file changed, 7 insertions(+), 2 deletions(-)
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);
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
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;
3170 mutex_lock(&wl->mutex);
3172 if (b43legacy_status(dev) < B43legacy_STAT_INITIALIZED) {
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,
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
3208 2.6.24-stable review patch. If anyone has any objections, please let us know.
3211 From: Stefano Brivio <stefano.brivio@polimi.it>
3213 patch 9eca9a8e81928685b4de00ecef83a7c13c340fc9 in mainline.
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).
3219 This might only trigger shortly after resume before mac80211 reassociated
3220 and reconfigured the keys.
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.
3226 This patch by Michael Buesch has been ported to b43legacy.
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>
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(-)
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
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))
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);
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);
3266 if (unlikely(err)) {
3267 b43legacyerr(dev->wl, "DMA tx mapping failure\n");
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;
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,
3280 @@ -189,14 +189,17 @@ static void pio_tx_write_fragment(struct
3281 union txhdr_union txhdr_data;
3283 unsigned int octets;
3286 txhdr = (u8 *)(&txhdr_data.txhdr_fw3);
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));
3298 octets = skb->len + txhdr_size;
3299 @@ -204,6 +207,8 @@ static void pio_tx_write_fragment(struct
3301 tx_data(queue, txhdr, (u8 *)skb->data, octets);
3302 tx_complete(queue, skb);
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;
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)
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);
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
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);
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. */
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);
3365 -void b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3366 +int b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3368 const unsigned char *fragment_data,
3369 unsigned int fragment_len,
3370 const struct ieee80211_tx_control *txctl,
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,
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 {
3384 -void b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3385 +int b43legacy_generate_txhdr(struct b43legacy_wldev *dev,
3387 const unsigned char *fragment_data,
3388 unsigned int fragment_len,
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,
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
3424 2.6.24-stable review patch. If anyone has any objections, please let us know.
3427 From: Stefano Brivio <stefano.brivio@polimi.it>
3429 patch 8dd0100ce9511e52614ecd0a6587c13ce5769c8b in mainline.
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.
3437 This patch by Michael Buesch has been ported to b43legacy.
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>
3445 drivers/net/wireless/b43legacy/dma.c | 14 ++++++++++++--
3446 1 file changed, 12 insertions(+), 2 deletions(-)
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
3452 const struct b43legacy_dma_ops *ops = ring->ops;
3455 + int slot, old_top_slot, old_used_slots;
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);
3463 + old_top_slot = ring->current_slot;
3464 + old_used_slots = ring->used_slots;
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;
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);
3486 + ring->current_slot = old_top_slot;
3487 + ring->used_slots = old_used_slots;
3491 @@ -1218,6 +1226,8 @@ static int dma_tx_fragment(struct b43leg
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;
3498 goto out_free_bounce;
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,
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
3531 2.6.24-stable review patch. If anyone has any objections, please let us know.
3534 From: Stephen Smalley <sds@tycho.nsa.gov>
3536 patch b1aa5301b9f88a4891061650c591fb8fe1c1d1da in mainline.
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/...".
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>
3548 security/selinux/ss/services.c | 3 +++
3549 1 file changed, 3 insertions(+)
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
3555 int rc = 0, cmp = 0;
3557 + while (path[0] == '/' && path[1] == '/')
3562 for (genfs = policydb.genfs; genfs; genfs = genfs->next) {
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,
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
3595 2.6.24-stable review patch. If anyone has any objections, please let us know.
3598 From: Michael Buesch <mb@bu3sch.de>
3600 (not in mainline, as it is not applicable.)
3602 We must reject new incompatible firmware early to avoid
3603 running into strange transmission failures.
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.
3609 Signed-off-by: Michael Buesch <mb@bu3sch.de>
3610 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3613 drivers/net/wireless/b43/main.c | 12 ++++++++++++
3614 1 file changed, 12 insertions(+)
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
3622 + if (fwrev > 351) {
3623 + b43err(dev->wl, "YOUR FIRMWARE IS TOO NEW. Please downgrade your "
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;
3634 b43dbg(dev->wl, "Loading firmware version %u.%u "
3635 "(20%.2i-%.2i-%.2i %.2i:%.2i:%.2i)\n",
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,
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
3668 2.6.24-stable review patch. If anyone has any objections, please let us know.
3671 From: Peter Zijlstra <a.p.zijlstra@chello.nl>
3673 patch ef9884e6f29bbe1075204f962a00f7533bf7e8f3 in mainline.
3675 Michel Dänzr has bisected an interactivity problem with
3676 plus-reniced tasks back to this commit:
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
3683 sched: another wakeup_granularity fix
3685 unit mis-match: wakeup_gran was used against a vruntime
3687 fix this by assymetrically scaling the vtime of positive reniced
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>
3696 kernel/sched_fair.c | 6 +++++-
3697 1 file changed, 5 insertions(+), 1 deletion(-)
3699 --- a/kernel/sched_fair.c
3700 +++ b/kernel/sched_fair.c
3701 @@ -867,7 +867,11 @@ static void check_preempt_wakeup(struct
3704 gran = sysctl_sched_wakeup_granularity;
3705 - if (unlikely(se->load.weight != NICE_0_LOAD))
3707 + * More easily preempt - nice tasks, while not making
3708 + * it harder for + nice tasks.
3710 + if (unlikely(se->load.weight > NICE_0_LOAD))
3711 gran = calc_delta_fair(gran, &se->load);
3713 if (pse->vruntime + gran < se->vruntime)
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,
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
3744 2.6.24-stable review patch. If anyone has any objections, please let us know.
3747 From: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
3749 patch 296825cbe14d4c95ee9c41ca5824f7487bfb4d9d in mainline.
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():
3755 /* sleeps upto a single latency don't count. */
3756 if (sched_feat(NEW_FAIR_SLEEPERS) && entity_is_task(se))
3758 vruntime -= sysctl_sched_latency;
3760 /* ensure we never gain time by being placed backwards. */
3761 vruntime = max_vruntime(se->vruntime, vruntime);
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
3769 Signed-off-by: Ingo Molnar <mingo@elte.hu>
3770 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3773 kernel/sched_fair.c | 2 +-
3774 1 file changed, 1 insertion(+), 1 deletion(-)
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
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;
3786 /* ensure we never gain time by being placed backwards. */
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,
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
3818 2.6.24-stable review patch. If anyone has any objections, please let us know.
3821 From: Nick Piggin <nickpiggin@yahoo.com.au>
3823 patch 124d3b7041f9a0ca7c43a6293e1cae4576c32fd5 in mainline.
3825 Frederik Himpe reported an unkillable and un-straceable pan process.
3827 Zero length iovecs can go into an infinite loop in writev, because the
3828 iovec iterator does not always advance over them.
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.
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).
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>
3848 mm/filemap.c | 8 ++++++--
3849 1 file changed, 6 insertions(+), 2 deletions(-)
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;
3859 + * The !iov->iov_len check ensures we skip over unlikely
3860 + * zero-length segments.
3862 + while (bytes || !iov->iov_len) {
3863 int copy = min(bytes, iov->iov_len - base);
3866 @@ -2251,6 +2255,7 @@ again:
3870 + iov_iter_advance(i, copied);
3871 if (unlikely(copied == 0)) {
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));
3878 - iov_iter_advance(i, copied);
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,
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
3912 2.6.24-stable review patch. If anyone has any objections, please let us know.
3915 From: Thomas Gleixner <tglx@linutronix.de>
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.
3921 Chuck Ebert tracked this down from the information provided in:
3922 https://bugzilla.redhat.com/show_bug.cgi?id=429412
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.
3928 Simply replace LOCK_PREFIX with lock and keep those untouched by SMP
3931 Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
3932 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
3935 include/asm-x86/futex_32.h | 6 +++---
3936 include/asm-x86/futex_64.h | 6 +++---
3937 2 files changed, 6 insertions(+), 6 deletions(-)
3939 --- a/include/asm-x86/futex_32.h
3940 +++ b/include/asm-x86/futex_32.h
3945 -"2: " LOCK_PREFIX "cmpxchgl %3, %2\n\
3946 +"2: lock cmpxchgl %3, %2\n\
3948 3: .section .fixup,\"ax\"\n\
3950 @@ -68,7 +68,7 @@ futex_atomic_op_inuser (int encoded_op,
3954 - __futex_atomic_op1(LOCK_PREFIX "xaddl %0, %2", ret,
3955 + __futex_atomic_op1("lock xaddl %0, %2", ret,
3956 oldval, uaddr, oparg);
3959 @@ -111,7 +111,7 @@ futex_atomic_cmpxchg_inatomic(int __user
3962 __asm__ __volatile__(
3963 - "1: " LOCK_PREFIX "cmpxchgl %3, %1 \n"
3964 + "1: lock cmpxchgl %3, %1 \n"
3966 "2: .section .fixup, \"ax\" \n"
3968 --- a/include/asm-x86/futex_64.h
3969 +++ b/include/asm-x86/futex_64.h
3974 -"2: " LOCK_PREFIX "cmpxchgl %3, %2\n\
3975 +"2: "lock cmpxchgl %3, %2\n\
3977 3: .section .fixup,\"ax\"\n\
3979 @@ -62,7 +62,7 @@ futex_atomic_op_inuser (int encoded_op,
3980 __futex_atomic_op1("xchgl %0, %2", ret, oldval, uaddr, oparg);
3983 - __futex_atomic_op1(LOCK_PREFIX "xaddl %0, %2", ret, oldval,
3984 + __futex_atomic_op1("lock xaddl %0, %2", ret, oldval,
3988 @@ -101,7 +101,7 @@ futex_atomic_cmpxchg_inatomic(int __user
3991 __asm__ __volatile__(
3992 - "1: " LOCK_PREFIX "cmpxchgl %3, %1 \n"
3993 + "1: lock cmpxchgl %3, %1 \n"
3995 "2: .section .fixup, \"ax\" \n"
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,
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
4027 2.6.24-stable review patch. If anyone has any objections, please let us know.
4030 From: Michael E Brown <Michael_E_Brown@dell.com>
4032 patch 7d640c4a5b36c4733460065db1554da924044511 in mainline.
4034 This reverts commit 109f0e93b6b728f03c1eb4af02bc25d71b646c59.
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.
4040 Note that this patch re-introduces a problem with i2c name collision
4041 that was previously fixed by this patch.
4043 Signed-off-by: Michael E Brown <michael_e_brown@dell.com>
4044 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
4048 drivers/base/firmware_class.c | 3 ++-
4049 1 file changed, 2 insertions(+), 1 deletion(-)
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)
4055 static inline void fw_setup_device_id(struct device *f_dev, struct device *dev)
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);
4062 static int fw_register_device(struct device **dev_p, const char *fw_name,
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,
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
4093 2.6.24-stable review patch. If anyone has any objections, please let us know.
4096 From: Dave Airlie <airlied@linux.ie>
4099 (submitted upstream as 19a8f59ab8ceee751ea720085098355d53f727d6)
4101 perhaps bonghits could turn on my bus-mastering because the drm
4102 certainly never bothered doing it before.
4104 Signed-off-by: Dave Airlie <airlied@linux.ie>
4105 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
4108 drivers/char/drm/drm_stub.c | 1 +
4109 1 file changed, 1 insertion(+)
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
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");
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,
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
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.
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,
4159 Responses should be made by Friday, Feb 8 2008, 21:00:00 UTC@.
4160 Anything received after that time might be too late.
4164 the -stable release team