aboutsummaryrefslogtreecommitdiff
path: root/drivers/char
AgeCommit message (Collapse)Author
2006-12-10[PATCH] read_zero_pagealigned() locking fixHugh Dickins
Ramiro Voicu hits the BUG_ON(!pte_none(*pte)) in zeromap_pte_range: kernel bugzilla 7645. Right: read_zero_pagealigned uses down_read of mmap_sem, but another thread's racing read of /dev/zero, or a normal fault, can easily set that pte again, in between zap_page_range and zeromap_page_range getting there. It's been wrong ever since 2.4.3. The simple fix is to use down_write instead, but that would serialize reads of /dev/zero more than at present: perhaps some app would be badly affected. So instead let zeromap_page_range return the error instead of BUG_ON, and read_zero_pagealigned break to the slower clear_user loop in that case - there's no need to optimize for it. Use -EEXIST for when a pte is found: BUG_ON in mmap_zero (the other user of zeromap_page_range), though it really isn't interesting there. And since mmap_zero wants -EAGAIN for out-of-memory, the zeromaps better return that than -ENOMEM. Signed-off-by: Hugh Dickins <hugh@veritas.com> Cc: Ramiro Voicu: <Ramiro.Voicu@cern.ch> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-09Merge branch 'drm-patches' of ↵Linus Torvalds
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: (21 commits) Fix http://bugzilla.kernel.org/show_bug.cgi?id=7606 drm: add flag for mapping PCI DMA buffers read-only. drm: fix up irqflags in drm_lock.c drm: i915 updates drm: i915: fix up irqflags arg drm: i915: Only return EBUSY after we've established we need to schedule a new swap. drm: i915: Fix 'sequence has passed' condition in i915_vblank_swap(). drm: i915: Add SAREA fileds for determining which pipe to sync window buffer swaps to. drm: Make handling of dev_priv->vblank_pipe more robust. drm: DRM_I915_VBLANK_SWAP ioctl: Take drm_vblank_seq_type_t instead drm: i915: Add ioctl for scheduling buffer swaps at vertical blanks. drm: Core vsync: Don't clobber target sequence number when scheduling signal. drm: Core vsync: Add flag DRM_VBLANK_NEXTONMISS. drm: Make locked tasklet handling more robust. drm: drm_rmdraw: Declare id and idx as signed so testing for < 0 works as intended. drm: Change first valid DRM drawable ID to be 1 instead of 0. drm: drawable locking + memory management fixes + copyright drm: Add support for interrupt triggered driver callback with lock held to DRM core. drm: Add support for tracking drawable information to core drm: add support for secondary vertical blank interrupt to i915 ...
2006-12-08[PATCH] Char: cyclades, fix warningsJiri Slaby
fix gcc signed/unsigned warnings Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: cyclades, cleanupJiri Slaby
- remove cvs rcsid and alter code that uses it. - allow a semicolon after use of macro to not confuse parsers (e.g. indent) by do {} while (0) - JIFFIES_DIFF is simple subtraction, subtract directly - returns cleanup -- do not put values in parenthesis and do not return nothing at the end of void functions - comments are /* */ in C (not //) Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: cyclades, Lindent the codeJiri Slaby
make the code indented by tabs. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: cyclades, save indent levelsJiri Slaby
Save 3 indent levels in interrupt routine by moving the code to a separate function. This needs to be done to allow Lindent do its work, since only 4 columns are used for indenting now and hence Lindent makes a big mess in the code, when moves it 4*5 columns to the right. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, use mod_timerJiri Slaby
Do not set expires by hand, use kernel helper, which also calls add_timer. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, dynamic tty deviceJiri Slaby
register tty device dynamically according to the count of board ports. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, change init sequenceJiri Slaby
Reorganizate module init and exit and implement logic, when something fails in these functions. The former is needed for proper handling dynamic tty_register_device. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, move init and exit codeJiri Slaby
Let's have these function at the end of the driver and expand stli_init directly into module_init fucntion, since there is nothing other to have there. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, fix enablingJiri Slaby
Enable ISA cards before pci_register_driver and then, enable each PCI card in probe function. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, correct fail pathsJiri Slaby
Check more retvals and react somehow. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, free only isaJiri Slaby
Only ISA cards should be freed in module exit. Pci probed are freed in pci_remove. Define a flag, where we store this info a what to check against. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, brdnr lockingJiri Slaby
Kill possible race when getting brdnr by locking. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, ifdef eisa codeJiri Slaby
Disable compiling eisa stuff if STLI_EISAPROBE == 0. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, variables cleanupJiri Slaby
- wipe gcc -W warnings by int -> uint conversion - move 2 global variables into their local place Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, eliminate typedefsJiri Slaby
Use only struct <name> instead of defining a new type <name_t>. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, remove the messJiri Slaby
- remove unneeded license text - remove functions, that are implemented in kernel -- call them (strtoul, min, tolower) - do not cast NULL - there is no static table, throw away code, which takes care of it -- find module param cards in that place instead. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: istallion, convert to pci probingJiri Slaby
Use probing for pci devices. Change some __inits to __devinits to use these functions in probe function. Create stli_cleanup_ports and move there cleanup code from module_exit() code to not have duplicite cleanup code. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, use dynamic devJiri Slaby
Use dynamic tty device registering depending on board's port count. (i -> retval change is relevant, since gcc complains about signedness of i) Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, variables cleanupJiri Slaby
- fix `gcc -W' un/signed warnings by converting some ints -> uints. - move 3 global variables into functions, where are they used. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, remove syntactic sugarJiri Slaby
Remove useless parenthesis and brackets. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, brd struct lockingJiri Slaby
Since assigning of stl_brds[brdnr] is racy, add locking to this critical section. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, fix fail pathsJiri Slaby
Release everything what was allocated and check return value of isa probing. Release only ISA boards in module exit, since pci have their own pci-probing-remove. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, functions cleanupJiri Slaby
Delete macros and functions, that are implemented in kernel yet (strtoul, min, tolower). Expand one function body in place, where it is called from. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, correct __init macrosJiri Slaby
Some functions are now called from pci probing functiuon which is __devinit, not __init, correct this to not free functions after init if hotplug enabled. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, implement fail pathsJiri Slaby
This driver expect everything to work. Implement fail paths logic to release regions, irq hangler, memory... if something is in bad state. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, prints cleanupJiri Slaby
Too many information is printed out (they may be easily obtained through sysfs), wipe them out in probe function. Convert rest of them to dev_ variants. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: stallion, convert to pci probingJiri Slaby
Convert stallion driver to pci probing instead of pci_dev_get iteration. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, request regionsJiri Slaby
Check regions if they are free before we touch them. Release them in failpaths. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, use pci_iomapJiri Slaby
Use pci_ friends for memory remapping of pci devices. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, fix return in module initJiri Slaby
If pci_register_driver fails, but eisa_driver_register doesn't, we don't call misc_deregister, but returns error. Return OK in such cases. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, simplify timer logicJiri Slaby
Use kernel helpers for changing timer internals. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, whitespace cleanupJiri Slaby
Use Lindent to cleanup whitespace. Wrap long lines by hand. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, remove duplicite codeJiri Slaby
sx_remove_code contents were used twice. Call this function instead. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, lock boards structJiri Slaby
Fix race condition which may occurs when multiple cards are probed at the same time. Add mutex to critical sections to avoid this situation. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, ifdef ISA codeJiri Slaby
Most users won't need old probe code -- make it depndent on CONFIG_(E)ISA. Cc: <R.E.Wolff@BitWizard.nl> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, use eisa probingJiri Slaby
Instead of finding eisa directly, use eisa probing. Cc: <R.E.Wolff@BitWizard.nl> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, mark functions as devinitJiri Slaby
Mark as much as possible functions as __devinit to free them after driver initialization (if no hotplug). Cc: <R.E.Wolff@BitWizard.nl> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, use kcallocJiri Slaby
Convert self-implemented kzalloc to kernel kcalloc. Cc: <R.E.Wolff@BitWizard.nl> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: sx, convert to pci probingJiri Slaby
Convert old pci code to pci probing. Cc: <R.E.Wolff@BitWizard.nl> Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, fix tty index checkJiri Slaby
Since tty->index is signed and may be < 0, we should assign this to int not uint. There is already a check to ensure if it is not negative, but gcc complains with -W flag enabled and it is perfectly correct: drivers/char/isicom.c:953: warning: comparison of unsigned expression < 0 is always false Fix this issue by converting `line' variable from uint to int. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, remove cvs stuffJiri Slaby
We don't need RCS_ID & co. Extract them from the code and define only one macro -- SX_VERSION. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, simplify timerJiri Slaby
Don't init timer in such complicated way. Use DEFINE_TIMER and then only mod_timer to reset the expiration. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, use completionJiri Slaby
Use wait_for_completion+complete instead of variables+msleep hack. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, check kmalloc retvalJiri Slaby
Value returned from kamlloc may be NULL, we should check if ENOMEM occured. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, use pci_request_regionJiri Slaby
Use pci_request_region in pci probing function instead of request_region. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, move to tty_register_deviceJiri Slaby
Instead of registering all devices in register_tty_driver, register devices in probe function and register only port_count devices. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, remove unneeded memsetJiri Slaby
Memsetting of global static variables is not needed in the init code. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-08[PATCH] Char: isicom, remove isa codeJiri Slaby
ISA is not supported by this driver, remove parts, that take care of this. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Acked-by: Alan Cox <alan@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>