summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'drm-patches' of ↵Linus Torvalds2007-11-043-2/+5
|\ | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/sis: missing mutex unlock in error path. radeon: set the address to access the GART table on the CPU side correctly
| * drm/sis: missing mutex unlock in error path.Roel Kluin2007-11-051-0/+1
| | | | | | | | | | | | | | airlied: separated this out from a patch on lkml. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * radeon: set the address to access the GART table on the CPU side correctlyDave Airlie2007-11-052-2/+4
| | | | | | | | | | | | | | | | This code relied on the CPU and GPU address for the aperture being the same, On some r5xx hardware I was playing with I noticed that this isn't always true. This fixes issues seen on some r400 cards. (bugs.freedesktop.org 9957) Signed-off-by: Dave Airlie <airlied@redhat.com>
* | Merge branch 'an' of ↵Linus Torvalds2007-11-044-3/+191
|\ \ | |/ |/| | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'an' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] Utilize new SCSI event infrastructure SCSI: add asynchronous event notification API
| * [libata] Utilize new SCSI event infrastructureJeff Garzik2007-11-031-3/+5
| | | | | | | | | | | | | | An end to CD-ROM polling (if you have a device that supports AN)... hooray! Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
| * SCSI: add asynchronous event notification APIJeff Garzik2007-11-033-0/+186
| | | | | | | | | | | | | | Originally based on a patch by Kristen Carlson Accardi @ Intel. Copious input from James Bottomley. Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* | Merge branch 'for-linus' of ↵Linus Torvalds2007-11-041-2/+1
|\ \ | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: ieee1394: iso and async streams: s/g list fix
| * | ieee1394: iso and async streams: s/g list fixJens Axboe2007-11-041-2/+1
| |/ | | | | | | | | | | | | | | | | | | Torsten Kaiser wrote: > Looking that calltrace upwards, it seems replacing the > memset(dma->sglist,...) with sg_init_table(...) would fix the BUG_ON() > as that inits the SG_MAGIC. Tested-by: Torsten Kaiser <just.for.lkml@googlemail.com> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
* | rtc: ignore msb when reading back mday from alarmMark Lord2007-11-041-1/+2
|/ | | | | | | | | | | | | | | | | | | | I have a system here that actively relies upon RTC wake alarms, and it has been failing (again) for a few days when attempting to use the /sys/class/rtc/rtc?/wakealarm interface. The old (fixed by Linus) /proc/ interface still works, but I'd like to get it using the new one. This patch fixes rtc-cmos to ignore the two upper bits when reading the BCD mday (day of month) register from CMOS. Some systems (eg. mine) seem to have the top bit set to "1" for some reason. The older /proc/ interface ignores the upper bits, and so we should too. Signed-off-by: Mark Lord <mlord@pobox.com> Acked-by: David Brownell <david-b@pacbell.net> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-blockLinus Torvalds2007-11-031-0/+7
|\ | | | | | | | | | | | | | | | | * 'for-linus' of git://git.kernel.dk/linux-2.6-block: [BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them dm: bounce_pfn limit added Deadline iosched: Fix batching fairness Deadline iosched: Reset batch for ordered requests Deadline iosched: Factor out finding latter reques
| * dm: bounce_pfn limit addedVasily Averin2007-11-021-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Device mapper uses its own bounce_pfn that may differ from one on underlying device. In that way dm can build incorrect requests that contain sg elements greater than underlying device is able to handle. This is the cause of slab corruption in i2o layer, occurred on i386 arch when very long direct IO requests are addressed to dm-over-i2o device. Signed-off-by: Vasily Averin <vvs@sw.ru> Cc: <stable@kernel.org> Cc: Alasdair G Kergon <agk@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* | Merge branch 'sg' of git://git.kernel.dk/linux-2.6-blockLinus Torvalds2007-11-0312-12/+4
|\ \ | | | | | | | | | | | | | | | | | | * 'sg' of git://git.kernel.dk/linux-2.6-block: [SG] Get rid of __sg_mark_end() cleanup asm/scatterlist.h includes SG: Make sg_init_one() use general table init functions
| * | [SG] Get rid of __sg_mark_end()Jens Axboe2007-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sg_mark_end() overwrites the page_link information, but all users want __sg_mark_end() behaviour where we just set the end bit. That is the most natural way to use the sg list, since you'll fill it in and then mark the end point. So change sg_mark_end() to only set the termination bit. Add a sg_magic debug check as well, and clear a chain pointer if it is set. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * | cleanup asm/scatterlist.h includesAdrian Bunk2007-11-0211-11/+3
| |/ | | | | | | | | | | | | | | | | | | | | Not architecture specific code should not #include <asm/scatterlist.h>. This patch therefore either replaces them with #include <linux/scatterlist.h> or simply removes them if they were unused. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* | Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6Linus Torvalds2007-11-031-2/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (24 commits) sh: Update r7785rp defconfig. sh: mach-type updates. sh: Fix up r7780rp highlander CF access size. sh: Terminate .eh_frame in VDSO with a 4-byte 0. sh: Correct SUBARCH matching. sh: Decouple 4k and soft/hardirq stacks. sh: Fix optimized __copy_user() movca.l usage. sh: Clean up SR.RB Kconfig mess. sh: Kill off dead ipr_irq_demux(). sh: Make SH7750 oprofile compile again. sh: Provide a __read_mostly section wrapper. sh: linker script tidying. sh: Move zero page param defs somewhere sensible. sh: Use generic SMP_CACHE_BYTES/L1_CACHE_ALIGN. sh: Kill off legacy embedded ramdisk section. sh: Fix up early mem cmdline parsing. sh: Enable USBF on MS7722SE. sh: Add resource of USBF for SH7722. maple: Fix maple bus compiler warning sh: fix zImage build with >=binutils-2.18 ...
| * | maple: Fix maple bus compiler warningAdrian McMenamin2007-10-301-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | The uevent API has changed from 2.6.22 and this patch eliminates annoying compiler errors Signed off by: Adrian McMenamin <adrian@mcmen.demon.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | libata: don't configure downstream links faster than the upstream linkTejun Heo2007-11-031-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | There's nothing to be gained by configuring downstream links faster than the upstream link and such configurations cause problems on certain PMPs. Limit downstream link speed by the upstream link speed. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: request PHY speed configuration on SControl access failureTejun Heo2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In sata_set_spd_needed(), if SControl read failed, it returned 0 and skipped PHY speed configuration. However, if SControl access fails, it's far more logical to request PHY speed configuration. Reverse the logic. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: consider errors not associated with commands for speed downTejun Heo2007-11-031-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libata EH used to ignore errors not associated with commands when determining whether speed down is necessary or not. This leads to the following problems. * Errors not associated with commands can occur indefinitely without libata EH taking corrective actions. * Upstream link errors don't trigger speed down when PMP is attached to it and commands issued to downstream device trigger errors on the upstream link. This patch makes ata_eh_link_autopsy() consider errors not associated with command for speed down. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: more robust reset failure handlingTejun Heo2007-11-031-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset failure is a critical error. It results in disabling the link requiring user intervention to re-enable it. Make reset failure handling more robust such that libata EH doesn't give up too early. * Temporary glitches during hardreset may lead to classification failure when there's no softreset available. Retry instead of giving up. * Initial softreset or follow up softreset may fail classification. Move classification error handling block out of followup softreset block such that both cases are handled and retry instead of giving up. Also, on the last try, give ATA class a blind shot. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: cosmetic clean up / reorganization of ata_eh_reset()Tejun Heo2007-11-031-56/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up and reorganize ata_eh_reset() to ease further changes. * Cache ARRAY_SIZE(ata_eh_reset_timeouts) in @max_tries. * Cache link->flags in @lflags. * Move failure handling block to the end of the function and unnest both success and failure handling blocks. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: fix timing computation in ata_eh_reset()Tejun Heo2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | As jiffies changes asynchronously, it needs to be cached if unchanging timestamp is needed. The code in ata_eh_reset() intended to do that with @now but never actually did it. Fix it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: increase 128 KB / cmd limit for ATAPI tape drivesTony Battersby2007-11-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commands sent to ATAPI tape drives via the SCSI generic (sg) driver are limited in the amount of data that they can transfer by the max_sectors value. The max_sectors value is currently calculated according to the command set for disk drives, which doesn't apply to tape drives. The default max_sectors value of 256 limits ATAPI tape drive commands to 128 KB. This patch against 2.6.24-rc1 increases the max_sectors value for tape drives to 65535, which permits tape drive commands to transfer just under 32 MB. Tested with a SuperMicro PDSME motherboard, AHCI, and a Sony SDX-570V SATA tape drive. Note that some of the chipset drivers also set their own max_sectors value, which may override the value set in libata-core. I don't have any of these chipsets to test, so I didn't go messing with them. Also, ATAPI devices other than tape drives may benefit from similar changes, but I have only tape drives and disk drives to test. Signed-off-by: Tony Battersby <tonyb@cybernetics.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | sata_promise: fix endianess bug in ASIC PRD bug workaroundMikael Pettersson2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original workaround for the Promise ASIC PRD bug contained an endianess bug which I failed to detect: the adjustment of the last PRD entry's length field applied host arithmetic to little-endian data, which is incorrect on big-endian machines. We have the length available in host-endian format, so do the adjustment on host-endian data and then convert and store it in the PRD entry's little-endian data field. Thanks to an anonymous reviewer for detecting this bug. Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: fix docbookStephen Hemminger2007-11-031-3/+3
| | | | | | | | | | | | | | | | | | | | | Fix docbook format in the comments. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | make ata_scsi_lpm_get() staticAdrian Bunk2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | ata_scsi_lpm_get() can become static. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | libata: suppress two warningsStephen Rothwell2007-11-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | drivers/ata/libata-core.c:768: warning: 'ata_lpm_enable' defined but not used drivers/ata/libata-core.c:784: warning: 'ata_lpm_disable' defined but not used Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Remove ata_scsi_suspend/resume callbacksashish kalra2007-11-031-4/+0
| | | | | | | | | | | | | | | | | | Signed-off-by: ashish kalra <ashish.kalra@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()ashish kalra2007-11-031-70/+0
| | | | | | | | | | | | | | | | | | Signed-off-by: ashish kalra <ashish.kalra@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdefashish kalra2007-11-031-0/+2
| | | | | | | | | | | | | | | | | | Signed-off-by: ashish kalra <ashish.kalra@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: cleanup style problemLi Yang2007-11-031-6/+6
| | | | | | | | | | | | | | | Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: remove unneeded sata_fsl_hardreset()Jeff Garzik2007-11-031-13/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: remove unneeded on-stack copy of FISJeff Garzik2007-11-031-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove unneeded on-stack copy of FIS in sata_fsl_cache_taskfile_from_d2h_fis(). Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: cleanup needless casts to/from void __iomem *Jeff Garzik2007-11-031-2/+2
| | | | | | | | | | | | | | | | | | Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Remove unnecessary SCR casesJeff Garzik2007-11-031-14/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SCRs in the driver map to the standard values found in include/linux/ata.h, so no need for individual scr_read/scr_write case statements duplicating the natural value. Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Kill ata_sg_is_last()Li Yang2007-11-031-1/+1
| | | | | | | | | | | | | | | Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: save irq in private data for irq unmappingLi Yang2007-11-031-1/+3
| | | | | | | | | | | | | | | | | | | | | Powerpc uses virtual irq which has to be unmapped. Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Remove deprecated hooksLi Yang2007-11-031-4/+0
| | | | | | | | | | | | | | | Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | ata/sata_fsl: Update for ata_link introductionLi Yang2007-11-031-13/+18
| | | | | | | | | | | | | | | | | | | | | Update the driver to use the newly added ata_link structure. Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | Use i8253.c lock for PC speaker on MIPS, too.Ralf Baechle2007-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Jazz machines have to use the PIT timer for dyntick and highresolution kernels. This may break because currently just like i386 used to do MIPS uses two separate spinlocks in the actual PIT code and the PC speaker code. So switch to do it the same that x86 currently does PIT locking. Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | Merge branch 'for-linus' of ↵Linus Torvalds2007-11-025-54/+81
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: linux-input mailing list moved to vger.kernel.org Input: inport, logibm - use KERN_INFO when reporting missing mouse Input: appletouch - idle reset logic broke older Fountains Input: hp_sdc.c - fix section mismatch Input: appletouch - add Johannes Berg as maintainer Input: Add Euro and Dollar key codes Input: xpad - add more USB IDs
| * | | Input: inport, logibm - use KERN_INFO when reporting missing mouseHelge Deller2007-11-012-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many mouse drivers are often compiled (e.g. in Linux distributions) into the kernel at the same time just to make sure that at least one driver will suceed in find it's mouse device. Nevertheless, only the inport and logitech busmouse mouse drivers report with KERN_ERR log level if the mouse wasn't found. They should use KERN_INFO instead, because it's not an error if the mouse isn't attached at all. Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | | Input: appletouch - idle reset logic broke older FountainsDmitry Torokhov2007-11-011-48/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fountains do not support change mode request and therefore should be excluded from idle reset attempts. Also: - do not re-submit URB when we decide that touchpad needs to be reinicialized - do not repeat size detection when reinitializing the touchpad - Add missing KERN_* prefixes to messages Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Johannes Berg <johannes@sipsolutions.net>
| * | | Input: hp_sdc.c - fix section mismatchAdrian Bunk2007-10-271-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hp_sdc_exit() mustn't be __exit since it's called from the __init hp_sdc_register(). Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | | Input: xpad - add more USB IDsJoshua J Bowman2007-10-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add USB IDs of Mad Catz Wired Xbox 360 Controller and Pelican 'TSZ' Wired Xbox 360 Controller. Signed-off-by: Joshua J Bowman <bowmanj@augsburg.edu> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdogLinus Torvalds2007-11-0221-109/+92
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's [WATCHDOG] iTCO_wdt.c init & exit fixes [WATCHDOG] iTCO_wdt.c pci_device_id table clean-up [WATCHDOG] spin_lock_init() fixes [WATCHDOG] Unlock in iTCO_wdt_start when reboot is disabled [WATCHDOG] Add necessary braces to if (...) \n #if... cases [WATCHDOG] trivial fix two returns in void functions
| * | | | [WATCHDOG] iTCO_wdt.c ICH8 pci-device-id'sWim Van Sebroeck2007-11-021-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the pci-device-id's for the ICH8M and the ICH8M-E chipsets. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * | | | [WATCHDOG] iTCO_wdt.c init & exit fixesWim Van Sebroeck2007-11-021-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mark init and exit procedures as __devinit & _-devexit. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * | | | [WATCHDOG] iTCO_wdt.c pci_device_id table clean-upWim Van Sebroeck2007-11-021-39/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the pci_device_id table more readable. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * | | | [WATCHDOG] spin_lock_init() fixesAlexey Dobriyan2007-11-0219-57/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some watchdog drivers initialize global spinlocks in module's init function which is tolerable, but some do it in PCI probe function. So, switch to static initialization to fix theoretical bugs and, more importantly, stop giving people bad examples. Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
OpenPOWER on IntegriCloud