aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
Commit message (Collapse)AuthorAge
* [efficeon-agp] Add missing memory maskH. Peter Anvin2006-04-14
| | | | | | | | | Original patch by Benjamin Herrenschmidt after debugging by Brian Hinz. Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Brian Hinz <bphinz@hotmail.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] do_SAK: Don't recursively take the tasklist_lockEric W. Biederman2006-04-13
| | | | | | | | | | | | | By calling send_sig do_SAK is recursively taking the tasklist_lock, which is silly. In addition I just audited the kernel and this was the only place where tasklist_lock is taken inside of task_lock. So this one line change is a general worthwhile cleanup and it increases our options on how to fix the ptrace_attach races. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] RTC subsystem: VR41XX driverYoichi Yuasa2006-04-11
| | | | | | | | | | | This patch updates VR4100 series RTC driver. * This driver supports new RTC subsystem. * Simple set time/read time test worked fine. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Wrong out of range check in drivers/char/applicom.cEric Sesterhenn2006-04-11
| | | | | | | | | | This fixes coverity bug id #469. The out of range check didnt work as intended, as seen by the printk(), which states that boardno has to be 1 <= boardno <= MAX_BOARD. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ipmi: fix event queue limitCorey Minyard2006-04-11
| | | | | | | | | | | | The event handler mechanism in the IPMI driver had a limit on the number of received events, but the counts were not being updated. Update the counts to impose a limit. This is not a critical fix, as this function (the sending of the events) has to be turned on by the user, anyway. This avoids problems if they forget to turn it back off. Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] MPBL0010 driver sysfs permissions wide openMark Bellon2006-04-11
| | | | | | | | | | | | | | | The MPBL0010 Telco clock driver (drivers/char/tlclk.c) uses 0222 (anyone can write) permissions on its writable sysfs entries. Alter the permissions to 0220 (owner and group can write). The use case for this driver is to configure the fail over behavior of the clock hardware. That should be done by the more privileged users. Signed-off-by: Mark Bellon <mbellon@mvista.com> Acked-by: "Gross, Mark" <mark.gross@intel.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] tty release_dev(): remove dead codePaul Fulghum2006-04-11
| | | | | | | Remove dead code from tty_io.c release_dev() Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ptmx: fix duplicate idr_removePaul Fulghum2006-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove duplicate call to idr_remove() in ptmx_open. Error during open can result in call to release_dev() followed by call to idr_remove(). release_dev already calls idr_remove so the second call can cause a stack dump in idr_remove()->sub_remove() flagging an attempt to release an already released entry. I reproduces this on a machine with a misconfigured X server (attempting to restart multiple times rapidly) getting the same error as the 1st link below. This also seems to be related to: http://marc.theaimsgroup.com/?l=selinux&m=110536513426735&w=2 http://marc.theaimsgroup.com/?l=selinux&m=110596994916785&w=2 The stack dump can occur on close (as well as open) as shown in the 1st instance above, possible from something like: process A - open (index=0), open fail to out1, release_dev calls idr_remove (index 0), down(sem) sleeps process B - open (index=0), open OK (idr allocated) process A - wake and call idr_remove on index 0 ... process B - close, release_dev, stack dump on idr_remove (index=0) because entry already removed Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Remove extraneous \n in doubletalk init printk.Dave Jones2006-04-11
| | | | | | | | Doubletalk printk's an extraneous \n Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] make tty_insert_flip_string_flags() a non gpl exportAndrew Morton2006-04-11
| | | | | | | | | | | | We changed the wrong symbol. It's tty_insert_flip_string_flags() which is called from the previously-non-GPL'ed now-inlined tty_insert_flip_char(). Fix that up, and uninline tty_schedule_flip() while we're there. Cc: Tobias Powalowski <t.powa@gmx.de> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [IPV6]: Unexport secure_ipv6_port_ephemeralAdrian Bunk2006-04-10
| | | | | | | This patch removes the unused EXPORT_SYMBOL(secure_ipv6_port_ephemeral). Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdogLinus Torvalds2006-04-02
|\ | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver [WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference [WATCHDOG] pcwd.c sprintf/strcpy fix [WATCHDOG] pcwd.c general clean-up after patches [WATCHDOG] pcwd.c add debug info [WATCHDOG] pcwd.c pcwd_cleanup_module patch [WATCHDOG] pcwd.c firmware-info patch [WATCHDOG] pcwd.c control status patch
| * [WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driverAndrew Victor2006-04-02
| | | | | | | | | | | | | | | | Watchdog driver for the Atmel AT91RM9200 processor. Signed-off-by: Andrew Victor <andrew@sanpeople.com> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
| * [WATCHDOG] pcwd_usb.c: fix a NULL pointer dereferenceAdrian Bunk2006-04-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The Coverity checker noted that this resulted in a NULL pointer reference if we were coming from if (usb_pcwd == NULL) { printk(KERN_ERR PFX "Out of memory\n"); goto error; } Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
| * [WATCHDOG] pcwd.c sprintf/strcpy fixWim Van Sebroeck2006-04-02
| | | | | | | | | | | | | | | | change sprintf(pcwd_private.fw_ver_str, "ERROR"); to strcpy... as pointed out by Andrew Morton. Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@osdl.org>
| * [WATCHDOG] pcwd.c general clean-up after patchesWim Van Sebroeck2006-04-02
| | | | | | | | | | | | | | | | | | | | removal of includes (since we don't use kmalloc and TASK_INTERRUPTABLE anymore). Addition of missing commands. Printk that lets the user know when the module was unloaded. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * [WATCHDOG] pcwd.c add debug infoWim Van Sebroeck2006-04-02
| | | | | | | | | | | | Add debugging info for the pcwd.c module. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * [WATCHDOG] pcwd.c pcwd_cleanup_module patchWim Van Sebroeck2006-04-02
| | | | | | | | | | | | static void pcwd_cleanup_module doesn't need a return; Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * [WATCHDOG] pcwd.c firmware-info patchWim Van Sebroeck2006-04-02
| | | | | | | | | | | | | | Get the firmware version into the private data struct of the ISA-PC watchdog card. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
| * [WATCHDOG] pcwd.c control status patchWim Van Sebroeck2006-04-02
| | | | | | | | | | | | | | | | Clean-up the control status code (insert tabs where relevant), Add new Control Status defines, Make sure that the R2DS bit stays the same. Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
* | Merge master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6Linus Torvalds2006-04-02
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (33 commits) [PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error) [PATCH] pcmcia: fix pcmcia_device_remove oops [PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45 [PATCH] pcmcia: pseudo device handling update [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_present [PATCH] pcmcia: use bitfield instead of p_state and state [PATCH] pcmcia: remove unused p_dev->state flags [PATCH] pcmcia: make pcmcia_release_{io,irq} static [PATCH] pcmcia: add return value to _config() functions [PATCH] pcmcia: remove dev_link_t and client_handle_t indirection [PATCH] pcmcia: embed dev_link_t into struct pcmcia_device [PATCH] pcmcia: rename pcmcia_device.state [PATCH] pcmcia: remove unneeded Vcc pseudo setting [PATCH] pcmcia: remove export of pcmcia_release_configuration [PATCH] pcmcia: default suspend and resume handling [PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irq [PATCH] pcmcia: add pcmcia_disable_device [PATCH] serial_cs: add Merlin U630 IDs [PATCH] pcmcia: AT91RM9200 Compact Flash driver [PATCH] pcmcia: socket.functions starts with 1 ...
| * | [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_presentDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | Instead of the DEV_OK macro, drivers should use pcmcia_dev_present(). Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: use bitfield instead of p_state and stateDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of the two status values struct pcmcia_device->p_state and state, use descriptive bitfields. Most value-checking in drivers was invalid, as the core now only calls the ->remove() (a.k.a. detach) function in case the attachement _and_ configuration was successful. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: add return value to _config() functionsDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | Most of the driver initialization isn't done in the .probe function, but in the internal _config() functions. Make them return a value, so that .probe can properly report whether the probing of the device succeeded or not. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: remove dev_link_t and client_handle_t indirectionDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | dev_link_t * and client_handle_t both mean struct pcmcai_device * by now. Therefore, remove all such indirections. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: embed dev_link_t into struct pcmcia_deviceDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Embed dev_link_t into struct pcmcia_device(), as they basically address the same entity. The actual contents of dev_link_t will be cleaned up step by step. This patch includes a bugfix from and signed-off-by Andrew Morton. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: remove unneeded Vcc pseudo settingDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | As we do not allow setting Vcc in the pcmcia core, and Vpp1 and Vpp2 can only be set to the same value, a lot of code can be streamlined. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: default suspend and resume handlingDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In all but one case, the suspend and resume functions of PCMCIA drivers contain mostly of calls to pcmcia_release_configuration() and pcmcia_request_configuration(). Therefore, move this code out of the drivers and into the core. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
| * | [PATCH] pcmcia: add pcmcia_disable_deviceDominik Brodowski2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pcmcia_disable_device(struct pcmcia_device *p_dev) performs the necessary cleanups upon device or driver removal: it calls the appropriate pcmcia_release_* functions, and can replace (most) of the current drivers' _release() functions. Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
* | | Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/inputLinus Torvalds2006-04-02
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits) Input: add support for Braille devices Input: synaptics - limit rate to 40pps on Toshiba Protege M300 Input: gamecon - add SNES mouse support Input: make modalias code respect allowed buffer size Input: convert /proc handling to seq_file Input: limit attributes' output to PAGE_SIZE Input: gameport - fix memory leak Input: serio - fix memory leak Input: zaurus keyboard driver updates Input: i8042 - fix logic around pnp_register_driver() Input: ns558 - fix logic around pnp_register_driver() Input: pcspkr - separate device and driver registration Input: atkbd - allow disabling on X86_PC (if EMBEDDED) Input: atkbd - disable softrepeat for dumb keyboards Input: atkbd - fix complaints about 'releasing unknown key 0x7f' Input: HID - fix duplicate key mapping for Logitech UltraX remote Input: use kzalloc() throughout the code Input: fix input_free_device() implementation Input: initialize serio and gameport at subsystem level Input: uinput - semaphore to mutex conversion ...
| * | | Input: add support for Braille devicesSamuel Thibault2006-04-02
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | - Add KEY_BRL_* input keys and K_BRL_* keycodes; - Add emulation of how braille keyboards usually combine braille dots to the console keyboard driver; - Add handling of unicode U+28xy diacritics. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* / | [PATCH] powerpc/pseries: Change H_StudlyCaps to H_SHOUTING_CAPSSegher Boessenkool2006-04-01
|/ / | | | | | | | | | | | | Also cleans up some nearby whitespace problems. Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
* | [PATCH] vt: add TIOCL_GETKMSGREDIRECTRafael J. Wysocki2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | Add TIOCL_GETKMSGREDIRECT needed by the userland suspend tool to get the current value of kmsg_redirect from the kernel so that it can save it and restore it after resume. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Pavel Machek <pavel@suse.cz> Cc: Michael Kerrisk <mtk-manpages@gmx.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] drivers/char/[i]stallion: Clean up kmalloc usageTobias Klauser2006-03-31
| | | | | | | | | | | | | | | | | | Delete two useless kmalloc wrappers and use kmalloc/kzalloc. Some weird NULL checks are also simplified. Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] IPMI: convert from semaphores to mutexesCorey Minyard2006-03-31
| | | | | | | | | | | | | | | | | | | | Convert the remaining semaphores to mutexes in the IPMI driver. The watchdog was using a semaphore as a real semaphore (for IPC), so the conversion there required adding a completion. Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] IPMI: tidy up various thingsCorey Minyard2006-03-31
| | | | | | | | | | | | | | | | | | | | Tidy up various coding standard things, mostly removing the space after !, but also break some long lines and fix a few other spacing inconsistencies. Also fixes some bad error reporting when deleting an IPMI user. Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] IPMI: fix startup race conditionCorey Minyard2006-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Matt Domsch noticed a startup race with the IPMI kernel thread, it was possible (though extraordinarly unlikely) that a message could come in before the upper layer was ready to handle it. This patch splits the startup processing of an IPMI interface into two parts, one to get ready and one to actually start the processes to receive messages from the interface. [akpm@osdl.org: cleanups] Signed-off-by: Corey Minyard <minyard@acm.org> Cc: Matt Domsch <Matt_Domsch@dell.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] make tty_insert_flip_string a non-GPL exportAndrew Morton2006-03-31
|/ | | | | | | | | | | | | | | | | Alan sayeth "Based on Linus original comments about _GPL we should export tty_insert_flip_char as EXPORT_SYMBOL because it used to be EXPORT_SYMBOL equivalent (trivial inline). The other features are new extensions are were not available to drivers before so need not be provided except as _GPL functionality as far as I can see." Addresses http://bugzilla.kernel.org/show_bug.cgi?id=6294 Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Paul Fulghum <paulkf@microgate.com> Cc: Philippe Vouters <Philippe.Vouters@laposte.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge branch 'drm-patches' of ↵Linus Torvalds2006-03-30
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm: remove drm_{alloc,free}_pages drm: sis fix compile warning drm: add new radeon PCI ids.. drm: read breadcrumb in IRQ handler drm: fixup i915 breadcrumb read/write drm: remove pointless checks in radeon_state drm: fixup improper cast. drm: rationalise some pci ids drm: Add general-purpose packet for manipulating scratch registers (r300) drm: rework radeon memory map (radeon 1.23) drm: update r300 register names drm: fixup PCI DMA support
| * drm: remove drm_{alloc,free}_pagesDave Airlie2006-03-28
| | | | | | | | | | | | | | | | drm_alloc_pages and drm_free_pages can now be removed. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: sis fix compile warningDave Airlie2006-03-28
| | | | | | | | | | | | | | | | | | Prevent a gcc warning in the SIS DRM driver. offset is a unsigned int and the printk wants a long. Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: add new radeon PCI ids..Dave Airlie2006-03-25
| | | | | | | | | | | | | | | | This adds all the r300 and r400 PCI ids from DRM CVS, it also makes these cards only initialise when the new xorg driver is used, as otherwise the DRM can cause lockups. Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: read breadcrumb in IRQ handlerDave Airlie2006-03-20
| | | | | | | | | | From: Keith Whitwell <keithw@tungstengraphics.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: fixup i915 breadcrumb read/writeDave Airlie2006-03-19
| | | | | | | | | | | | Some minor issues in the i915 breadcrumb code. Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: remove pointless checks in radeon_stateDave Airlie2006-03-19
| | | | | | | | | | | | | | | | | | | | | | If these were valid checks, we'd have already oopsed several lines above where we were already dereferencing them. DA: these used to be valid but other changes made them unnecessary. Coverity: 776,777,778 Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: fixup improper cast.Dave Airlie2006-03-19
| | | | | | | | Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: rationalise some pci idsDave Airlie2006-03-19
| | | | | | | | | | | | | | | | | | This is the start of some work from Roland Scheidegger to align the X DDX pci ids and the drm ones, however we don't want to put r300 ids in the kernel just yet, they destabilise a few machines. From: Roland Scheidegger (via DRM CVS) Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: Add general-purpose packet for manipulating scratch registers (r300)Dave Airlie2006-03-19
| | | | | | | | | | From: Aapo Tahkola (via DRM CVS) Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: rework radeon memory map (radeon 1.23)Dave Airlie2006-03-19
| | | | | | | | | | | | | | | | | | | | This code reworks the radeon memory map so it works better for newer r300 chips and for a lot of older PCI chips. It really requires a new X driver in order to take advantage of this code. From: Ben Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Dave Airlie <airlied@linux.ie>
| * drm: update r300 register namesDave Airlie2006-03-19
| | | | | | | | | | | | Update some of the DRM register names from DRM CVS Signed-off-by: Dave Airlie <airlied@linux.ie>