[Fwd: Linux 2.3.18ac6]

Jeff Garzik (jgarzik@pobox.com)
Mon, 20 Sep 1999 11:37:53 -0400


This is a multi-part message in MIME format.
--------------946F941DE0EA189A6C26BF3D
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

This went overseas a little while ago...

Jeff

-- 
Custom driver development	|    Never worry about theory as long
Open source programming		|    as the machinery does what it's
				|    supposed to do.  -- R. A. Heinlein
--------------946F941DE0EA189A6C26BF3D
Content-Type: message/rfc822
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

X-Mozilla-Status2: 00000000 Message-ID: <37E64742.D663F1F8@pobox.com> Date: Mon, 20 Sep 1999 10:40:02 -0400 From: Jeff Garzik <jgarzik@pobox.com> Organization: none X-Mailer: Mozilla 4.6 [en] (X11; I; Linux 2.3.18 i586) X-Accept-Language: en MIME-Version: 1.0 To: Alan Cox <alan@lxorguk.ukuu.org.uk> Subject: Re: Linux 2.3.18ac6 References: <E11T3pI-0007Hz-00@the-village.bc.nu> Content-Type: multipart/mixed; boundary="------------9E8A9BCE46B04C594FA3363C"

This is a multi-part message in MIME format. --------------9E8A9BCE46B04C594FA3363C Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit

A customer delayed getting back to me, so I have a free morning to play with Linux after all. Little patches against 2.3.18ac6:

Documentation/Configure.help: o document new K6 processor option (feature, see below) o document CONFIG_X86_USE_3DNOW (feature, see below) o remove duplicate VIA entry (cleanup) may already be applied.

MAINTAINERS: - remove duplicate entry (cleanup)

Makefile: - do not link pcmcia when its modular (fix) - add "-type f" to find commands (correctness)

arch/i386/config.in: - separate out new 'k6' option (feature) - mark 3dnow support experimental, support k6 (feature) - correct indentation of PCI access config.in entry (cleanup)

drivers/char/buz.c: - update to use latest module techniques (feature/cleanup)

drivers/char/pms.c: - likewise

drivers/char/radio-trust.c: - likewise

drivers/char/videodev.c: - remove static initialization for buz, pms, radio-trust (feature/cleanup)

drivers/pci/scan.c: - spelling fix (cleanup) - do not read ids cached in pci_dev (cleanup) - check_mem_region not fix (fix, may already be applied) - do not set min latency if pci_set_master called (cleanup)

drivers/usb/*.c: - include version.h where needed (fix)

include/linux/pci_scan.h: - s/_PCI_NETIF_H/__PCI_SCAN_H__/ (cleanup) - make enum pci_id_flags_bits more readable (cleanup) - move comment inside 80 columns, aligned with below comment (cleanup)

-- 
Custom driver development	|    Never worry about theory as long
Open source programming		|    as the machinery does what it's
				|    supposed to do.  -- R. A. Heinlein
--------------9E8A9BCE46B04C594FA3363C
Content-Type: text/plain; charset=us-ascii;
 name="patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="patch"

diff -urN linux.ac/Documentation/Configure.help linux/Documentation/Configure.help --- linux.ac/Documentation/Configure.help Mon Sep 20 08:32:47 1999 +++ linux/Documentation/Configure.help Mon Sep 20 09:34:48 1999 @@ -1862,8 +1862,8 @@ AMD/Cyrix 5x86, NexGen Nx586 and UMC U5D or U5S. - "586" for generic Pentium CPUs, possibly lacking the TSC (time stamp counter) register. - - "Pentium" for the Intel Pentium/Pentium MMX, AMD K5, K6 and - K6-3D. + - "Pentium" for the Intel Pentium, Pentium MMX, and AMD K5. + - "K6" for the AMD K6 and K6-3D. - "PPro" for the Cyrix/IBM/National Semiconductor 6x86MX, MII and Intel Pentium II/Pentium Pro. @@ -9198,6 +9198,13 @@ See Documentation/mtrr.txt for more information. +AMD 3Dnow! support (EXPERIMENTAL) +CONFIG_X86_USE_3DNOW + Use MMX to speed up certain operations such as memcpy, clear_page, and + others. + NOTE: This features requires a recent version of binutils in order to + support MMX and 3DNOW instructions. + Main CPU frequency, only for DEC alpha machine CONFIG_FT_ALPHA_CLOCK On some DEC Alpha machines the CPU clock frequency cannot be @@ -9927,11 +9934,6 @@ See also Documentation/sound/Opti and Documentation/sound/MAD16 for more information on setting these cards up as modules. - -VIA 82Cxxx audio support -CONFIG_SOUND_VIA82CXXX - Answer Y if you have a VIA82C686 chip, typically found built - onto a motherboard. Full support for Turtle Beach WaveFront synth/sound cards CONFIG_SOUND_WAVEFRONT diff -urN linux.ac/MAINTAINERS linux/MAINTAINERS --- linux.ac/MAINTAINERS Mon Sep 20 08:32:47 1999 +++ linux/MAINTAINERS Mon Sep 20 08:52:14 1999 @@ -896,11 +896,6 @@ M: jgarzik@pobox.com S: Maintained -VIA 82Cxxx AUDIO DRIVER -P: Jeff Garzik -M: jgarzik@pobox.com -S: Maintained - VIDEO FOR LINUX P: Alan Cox M: Alan.Cox@linux.org diff -urN linux.ac/Makefile linux/Makefile --- linux.ac/Makefile Mon Sep 20 08:32:47 1999 +++ linux/Makefile Mon Sep 20 10:26:48 1999 @@ -158,11 +158,11 @@ DRIVERS := $(DRIVERS) drivers/pci/pci.a endif -ifdef CONFIG_PCMCIA +ifeq ($(CONFIG_PCMCIA),y) DRIVERS := $(DRIVERS) drivers/pcmcia/pcmcia.o endif -ifdef CONFIG_PCMCIA_NETCARD +ifeq ($(CONFIG_PCMCIA_NETCARD),y) DRIVERS := $(DRIVERS) drivers/net/pcmcia/pcmcia_net.o endif @@ -382,9 +382,9 @@ clean: archclean rm -f kernel/ksyms.lst include/linux/compile.h - find . -name '*.[oas]' -print | grep -v lxdialog/ | xargs rm -f + find . -name '*.[oas]' -type f -print | grep -v lxdialog/ | xargs rm -f rm -f core `find . -type f -name 'core' -print` - rm -f core `find . -name '.*.flags' -print` + rm -f core `find . -type f -name '.*.flags' -print` rm -f vmlinux System.map rm -f .tmp* rm -f drivers/char/consolemap_deftbl.c drivers/video/promcon_tbl.c @@ -411,8 +411,8 @@ rm -f .menuconfig.log rm -f include/asm rm -rf include/config - rm -f .depend `find . -name .depend -print` - rm -f core `find . -size 0 -print` + rm -f .depend `find . -type f -name .depend -print` + rm -f core `find . -type f -size 0 -print` rm -f .hdepend scripts/mkdep scripts/split-include rm -f $(TOPDIR)/include/linux/modversions.h rm -rf $(TOPDIR)/include/linux/modules diff -urN linux.ac/arch/i386/config.in linux/arch/i386/config.in --- linux.ac/arch/i386/config.in Mon Sep 20 08:32:47 1999 +++ linux/arch/i386/config.in Mon Sep 20 09:23:03 1999 @@ -18,7 +18,8 @@ "386 CONFIG_M386 \ 486/Cx486 CONFIG_M486 \ 586/K5/5x86/6x86 CONFIG_M586 \ - Pentium/K6/TSC CONFIG_M586TSC \ + Pentium/TSC CONFIG_M586TSC \ + K6 CONFIG_MK6 \ PPro/6x86MX CONFIG_M686 \ Athlon CONFIG_MK7" PPro # @@ -30,6 +31,9 @@ define_bool CONFIG_X86_BSWAP y define_bool CONFIG_X86_POPAD_OK y fi +if [ "$CONFIG_MK6" = "y" ]; then + define_bool CONFIG_M586TSC y +fi if [ "$CONFIG_M686" = "y" -o "$CONFIG_M586TSC" = "y" ]; then define_bool CONFIG_X86_TSC y fi @@ -39,7 +43,12 @@ if [ "$CONFIG_MK7" = "y" ]; then define_bool CONFIG_X86_TSC y define_bool CONFIG_X86_GOOD_APIC y - define_bool CONFIG_X86_USE_3DNOW y +fi + +if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then + if [ "$CONFIG_MK6" = "y" -o "$CONFIG_MK7" = "y" ]; then + bool 'AMD 3Dnow! support (Athlon-only recommended)' CONFIG_X86_USE_3DNOW + fi fi choice 'Maximum Physical Memory' \ @@ -67,7 +76,7 @@ bool 'Networking support' CONFIG_NET bool 'PCI support' CONFIG_PCI if [ "$CONFIG_PCI" = "y" ]; then - choice 'PCI access mode' \ + choice ' PCI access mode' \ "BIOS CONFIG_PCI_GOBIOS \ Direct CONFIG_PCI_GODIRECT \ Any CONFIG_PCI_GOANY" Any diff -urN linux.ac/drivers/char/buz.c linux/drivers/char/buz.c --- linux.ac/drivers/char/buz.c Wed Sep 8 14:51:22 1999 +++ linux/drivers/char/buz.c Mon Sep 20 09:09:34 1999 @@ -3392,11 +3392,7 @@ } } -#ifdef MODULE -int init_module(void) -#else -int init_zoran_cards(struct video_init *unused) -#endif +static int __init init_zoran_cards(void) { int i; @@ -3467,13 +3463,11 @@ return 0; } - - -#ifdef MODULE - -void cleanup_module(void) +static void __exit cleanup_zoran_module(void) { release_zoran(); } -#endif +module_init(init_zoran_cards); +module_exit(cleanup_zoran_module); + diff -urN linux.ac/drivers/char/pms.c linux/drivers/char/pms.c --- linux.ac/drivers/char/pms.c Mon Sep 20 08:32:48 1999 +++ linux/drivers/char/pms.c Mon Sep 20 09:13:37 1999 @@ -1025,14 +1025,10 @@ } /* - * Module stuff + * Initialization and module stuff */ -#ifdef MODULE -int init_module(void) -#else -int init_pms_cards(struct video_init *v) -#endif +static int __init init_pms_cards(void) { printk(KERN_INFO "Mediavision Pro Movie Studio driver 0.02\n"); @@ -1051,21 +1047,21 @@ return video_register_device((struct video_device *)&pms_device, VFL_TYPE_GRABBER); } -#ifdef MODULE - MODULE_PARM(io_port,"i"); MODULE_PARM(mem_base,"i"); -static void shutdown_mediavision(void) +static void __exit shutdown_mediavision(void) { release_region(io_port,3); release_region(0x9A01, 1); } -void cleanup_module(void) +static void __exit cleanup_pms_module(void) { shutdown_mediavision(); video_unregister_device((struct video_device *)&pms_device); } -#endif +module_init(init_pms_cards); +module_exit(cleanup_pms_module); + diff -urN linux.ac/drivers/char/radio-trust.c linux/drivers/char/radio-trust.c --- linux.ac/drivers/char/radio-trust.c Mon Sep 20 08:32:48 1999 +++ linux/drivers/char/radio-trust.c Mon Sep 20 09:09:17 1999 @@ -299,8 +299,12 @@ NULL }; -int __init trust_init(struct video_init *v) +static int __init trust_init(void) { + if(io == -1) { + printk(KERN_ERR "You must set an I/O address with io=0x???\n"); + return -EINVAL; + } if(check_region(io, 2)) { printk(KERN_ERR "trust: port 0x%x already in use\n", io); return -EBUSY; @@ -338,19 +342,13 @@ EXPORT_NO_SYMBOLS; -int init_module(void) -{ - if(io == -1) { - printk(KERN_ERR "You must set an I/O address with io=0x???\n"); - return -EINVAL; - } - return trust_init(NULL); -} +#endif /* MODULE */ -void cleanup_module(void) +static void __exit cleanup_trust_module(void) { video_unregister_device(&trust_radio); release_region(io, 2); } -#endif +module_init(trust_init); +module_exit(cleanup_trust_module); diff -urN linux.ac/drivers/char/videodev.c linux/drivers/char/videodev.c --- linux.ac/drivers/char/videodev.c Mon Sep 20 08:32:48 1999 +++ linux/drivers/char/videodev.c Mon Sep 20 09:13:49 1999 @@ -84,15 +84,6 @@ #ifdef CONFIG_RADIO_TERRATEC extern int terratec_init(struct video_init *); #endif -#ifdef CONFIG_RADIO_TRUST -extern int trust_init(struct video_init *); -#endif -#ifdef CONFIG_VIDEO_PMS -extern int init_pms_cards(struct video_init *); -#endif -#ifdef CONFIG_VIDEO_ZORAN -extern int init_zoran_cards(struct video_init *); -#endif static struct video_init video_init_list[]={ #ifdef CONFIG_VIDEO_BT848 @@ -108,9 +99,6 @@ #ifdef CONFIG_VIDEO_BWQCAM {"bw-qcam", init_bw_qcams}, #endif -#ifdef CONFIG_VIDEO_PMS - {"PMS", init_pms_cards}, -#endif #ifdef CONFIG_VIDEO_PLANB {"planb", init_planbs}, #endif @@ -141,12 +129,6 @@ #ifdef CONFIG_RADIO_TERRATEC {"radio-terratec", terratec_init}, #endif -#ifdef CONFIG_VIDEO_ZORAN - {"zoran", init_zoran_cards}, -#endif -#ifdef CONFIG_RADIO_TRUST - {"Trust", trust_init}, -#endif {"end", NULL} }; diff -urN linux.ac/drivers/pci/scan.c linux/drivers/pci/scan.c --- linux.ac/drivers/pci/scan.c Mon Sep 20 08:32:57 1999 +++ linux/drivers/pci/scan.c Mon Sep 20 09:38:31 1999 @@ -17,7 +17,7 @@ 312 Severn Ave. #W302 Annapolis MD 21403 - Other contributers: + Other contributors: Alan Cox: Stripped out all of the non 2.3.x support at Linus request. @@ -96,8 +96,9 @@ unsigned long ioaddr; int free = 0; - pci_read_config_dword(pdev, PCI_VENDOR_ID, &pci_id); - pci_read_config_dword(pdev, PCI_SUBSYSTEM_ID, &pci_subsys_id); + pci_id = (pdev->vendor << 16) | pdev->device; + pci_subsys_id = (pdev->subsystem_vendor << 16) | + pdev->subsystem_device; pci_read_config_byte (pdev, PCI_REVISION_ID, &pci_rev); for (chip_idx = 0; pci_tbl[chip_idx].name; chip_idx++) { @@ -128,7 +129,7 @@ } else { - if (!check_mem_region(pciaddr, pci_tbl[chip_idx].io_size)) + if (check_mem_region(pciaddr, pci_tbl[chip_idx].io_size)) continue; if ((ioaddr = (unsigned long)ioremap(pciaddr, pci_tbl[chip_idx].io_size)) == 0) { @@ -165,7 +166,10 @@ if (newdev && (pci_flags & PCI_COMMAND_MASTER)) pci_set_master(pdev); - if (newdev && (pci_flags & PCI_COMMAND_MASTER) && + + /* min latency set by pci_set_master() above, + * so don't do it again */ + if (newdev && ! (pci_flags & PCI_COMMAND_MASTER) && ! (pci_flags & PCI_NO_MIN_LATENCY)) { u8 pci_latency; pci_read_config_byte(pdev, PCI_LATENCY_TIMER, &pci_latency); diff -urN linux.ac/drivers/usb/acm.c linux/drivers/usb/acm.c --- linux.ac/drivers/usb/acm.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/acm.c Mon Sep 20 09:39:15 1999 @@ -56,6 +56,7 @@ #include <linux/tty_flip.h> #include <linux/tty.h> #include <linux/module.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/cpia.c linux/drivers/usb/cpia.c --- linux.ac/drivers/usb/cpia.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/cpia.c Mon Sep 20 09:39:21 1999 @@ -19,6 +19,7 @@ #include <linux/vmalloc.h> #include <linux/wrapper.h> #include <linux/module.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/ezusb.c linux/drivers/usb/ezusb.c --- linux.ac/drivers/usb/ezusb.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/ezusb.c Mon Sep 20 09:39:24 1999 @@ -40,6 +40,7 @@ #include <linux/list.h> #include <linux/vmalloc.h> #include <linux/slab.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/hp_scanner.c linux/drivers/usb/hp_scanner.c --- linux.ac/drivers/usb/hp_scanner.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/hp_scanner.c Mon Sep 20 09:39:27 1999 @@ -42,6 +42,7 @@ #include <linux/poll.h> #include <linux/init.h> #include <linux/malloc.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/hub.c linux/drivers/usb/hub.c --- linux.ac/drivers/usb/hub.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/hub.c Mon Sep 20 09:39:29 1999 @@ -12,6 +12,7 @@ #include <linux/malloc.h> #include <linux/smp_lock.h> #include <linux/module.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/mouse.c linux/drivers/usb/mouse.c --- linux.ac/drivers/usb/mouse.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/mouse.c Mon Sep 20 09:39:37 1999 @@ -40,6 +40,7 @@ #include <linux/init.h> #include <linux/malloc.h> #include <linux/module.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/ohci-hcd.c linux/drivers/usb/ohci-hcd.c --- linux.ac/drivers/usb/ohci-hcd.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/ohci-hcd.c Mon Sep 20 09:39:47 1999 @@ -47,6 +47,7 @@ #include <linux/smp_lock.h> #include <linux/errno.h> #include <linux/timer.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/ohci.c linux/drivers/usb/ohci.c --- linux.ac/drivers/usb/ohci.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/ohci.c Mon Sep 20 09:39:51 1999 @@ -37,6 +37,7 @@ #include <linux/malloc.h> #include <linux/smp_lock.h> #include <linux/errno.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/printer.c linux/drivers/usb/printer.c --- linux.ac/drivers/usb/printer.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/printer.c Mon Sep 20 09:39:54 1999 @@ -16,6 +16,7 @@ #include <linux/init.h> #include <linux/malloc.h> #include <linux/lp.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/uhci.c linux/drivers/usb/uhci.c --- linux.ac/drivers/usb/uhci.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/uhci.c Mon Sep 20 09:37:54 1999 @@ -41,10 +41,11 @@ #include <linux/smp_lock.h> #include <linux/errno.h> #include <linux/unistd.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) -#include <linux/spinlock.h> +# include <linux/spinlock.h> #else -#include <asm/spinlock.h> +# include <asm/spinlock.h> #endif #include <asm/uaccess.h> diff -urN linux.ac/drivers/usb/usb_scsi.c linux/drivers/usb/usb_scsi.c --- linux.ac/drivers/usb/usb_scsi.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/usb_scsi.c Mon Sep 20 09:40:08 1999 @@ -36,6 +36,7 @@ #include <linux/poll.h> #include <linux/init.h> #include <linux/malloc.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/drivers/usb/usb_scsi_debug.c linux/drivers/usb/usb_scsi_debug.c --- linux.ac/drivers/usb/usb_scsi_debug.c Mon Sep 20 08:32:59 1999 +++ linux/drivers/usb/usb_scsi_debug.c Mon Sep 20 09:41:16 1999 @@ -15,6 +15,7 @@ #include <linux/poll.h> #include <linux/init.h> #include <linux/malloc.h> +#include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,18) #include <linux/spinlock.h> #else diff -urN linux.ac/include/linux/pci_scan.h linux/include/linux/pci_scan.h --- linux.ac/include/linux/pci_scan.h Mon Sep 20 08:33:09 1999 +++ linux/include/linux/pci_scan.h Mon Sep 20 09:35:57 1999 @@ -1,5 +1,10 @@ -#ifndef _PCI_NETIF_H -#define _PCI_NETIF_H +#ifndef __PCI_SCAN_H__ +#define __PCI_SCAN_H__ + +#include <linux/pci.h> + + + /* version 0.04 $Date: 1999/08/31 16:05:30 $ Copyright 1999 Donald Becker / Scyld Computing Corporation @@ -17,17 +22,25 @@ */ enum pci_id_flags_bits { /* Set PCI command register bits before calling probe1(). */ - PCI_USES_IO=1, PCI_USES_MEM=2, PCI_USES_MASTER=4, + PCI_USES_IO = PCI_COMMAND_IO, + PCI_USES_MEM = PCI_COMMAND_MEMORY, + PCI_USES_MASTER = PCI_COMMAND_MASTER, + /* Read and map the single following PCI BAR. */ - PCI_ADDR0=0<<4, PCI_ADDR1=1<<4, PCI_ADDR2=2<<4, PCI_ADDR3=3<<4, - PCI_ADDR_64BITS=0x100, PCI_NO_ACPI_WAKE=0x200, PCI_NO_MIN_LATENCY=0x400, + PCI_ADDR0 = 0<<4, + PCI_ADDR1 = 1<<4, + PCI_ADDR2 = 2<<4, + PCI_ADDR3 = 3<<4, + PCI_ADDR_64BITS = 0x100, + PCI_NO_ACPI_WAKE = 0x200, + PCI_NO_MIN_LATENCY = 0x400, }; struct pci_id_info { const char *name; struct match_info { int pci, pci_mask, subsystem, subsystem_mask; - int revision, revision_mask; /* Only 8 bits. */ + int revision, revision_mask; /* Only 8 bits. */ } id; enum pci_id_flags_bits pci_flags; int io_size; /* Needed for I/O region check or ioremap(). */ @@ -83,4 +96,5 @@ * tab-width: 4 * End: */ -#endif +#endif /* __PCI_SCAN_H__ */ +

--------------9E8A9BCE46B04C594FA3363C--

--------------946F941DE0EA189A6C26BF3D--

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/