- 07 Nov, 2004 40 commits
-
-
Dmitry Torokhov authored
At unload i8042 sets panic_blink to 0. This will cause problems if kernel panics later as it will just use it assuming that the pointer is correct. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andries E. Brouwer authored
The patch below fixes two flaws in minix_clear_inode. The first is that it tests bh which is never initialized. (&bh is a parameter of minix_V1_raw_inode, but that routine can fail and return before it has set bh) The second is that generic_delete_inode() goes BUG() in case inode->i_state != I_CLEAR. Clearly, it is expected that inode->i_sb->s_op->delete_inode does a clear_inode() at some point. But minix_delete_inode() calls minix_free_inode() and that routine can print an error and return early, before calling clear_inode(). Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Peter Osterlund authored
Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Petr Vandrovec authored
ppdev's ioctls are not available for 32bit apps on 64bit systems. There are four ioctls which take no argument at all (so they are compatible between 32bit and 64bit), these numbers do not clash with any other ioctl code, and so I see no reason why not applying patch below. It solves problem VMware users are faced on 64bit systems if they want to use direct access to the parallel port. Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
Although it was checking the per-character error flags supplied by the driver for ordinary characters, the ppp_async line discipline code wasn't checking the flags for special characters, such as the flag and escape characters (~ and }). This patch adds that check. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Olaf Hering authored
ia64 and ppc64 have function descriptors. Booting with initcall_debug will print the descriptor address, not the address and name of the actual function. Another indirection is required. Tested on ppc, ppc64 and ia64. Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andy Whitcroft authored
When your plug-n-play BIOS is truly broken and generates a fault during use, we report this and suggest disabling it. The message produced suggests using "nobiospnp" to achive this, the correct option is "pnpbios=off". This patch upates the message. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Tom Rini authored
The following adds a __KERNEL__ check to <linux/crc-ccitt.h>. The problem is that the ppp package includes <linux/ppp_defs.h> via <net/ppp_defs.h>, which in turn gets <linux/crc-ccitt.h>. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Marcel Holtmann authored
The add_hotplug_env_var() function is available and so use it in the firmware class code. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Tom Rini authored
After 2.6.8.1, samba userland would no longer build with current kernel headers, as it needs some of the samba kernel headers to work, yet they included <linux/fs.h> outside of __KERNEL__. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Remove deleted module option in Documentation/kernel-parameters.txt Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Minor cleanup of Documentation/tipar.txt. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Remove unneeded file in drivers/char. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Remove unneeded file from drivers/char. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Remove obsolete file from drivers/char. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Remove deprecated file in drivers/char. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jan Kasprzak authored
The attached patch fixes an incorrect example in Documentation/RCU/listRCU.txt - the "original" lock-based code should not call RCU functions, of course. Signed-Off-By: Jan "Yenya" Kasprzak <kas@fi.muni.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Christoph Hellwig authored
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Christoph Hellwig authored
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Christoph Hellwig authored
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
When there are more than one entry in fname linked list, the current implementation of ext3_dx_readdir() can not traverse all entries correctly in the case that call_filldir() fails. If we use system call readdir() to read entries in a directory which happens that "." and ".." in the same fname linked list. Each time we call readdir(), it will return the "." entry and never returns 0 which indicates that all entries are read. Although chances that more than one entry are in one fname linked list are very slim, it does exist. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Maximilian Attems authored
viro has moved. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Prasanna S. Panchamukhi authored
Adopted from i386 architecture. Kprobes: Helps developers to trap at almost any kernel code address, specifying a handler routine to be invoked when the breakpoint is hit. Useful for analysing the Linux kernel by collecting debugging information non-disruptively. Employs single-stepping out-of-line to avoid probe misses on SMP and may be especially useful in aiding debugging elusive races and problems on live systems. More elaborate dynamic tracing tools can be built over the kprobes interface. Sample usage: To place a probe on __blockdev_direct_IO: static int probe_handler(struct kprobe *p, struct pt_regs *) { ... whatever ... } struct kprobe kp = { .addr = __blockdev_direct_IO, .pre_handler = probe_handler }; register_kprobe(&kp); Jprobes: A special kprobe type which can be placed on function entry points, and employs a simple mirroring principle to allow seamless access to the arguments of a function being probed. The probe handler routine should have the same prototype as the function being probed. The way it works is that when the probe is hit, the breakpoint handler simply irets to the probe handler's rip while retaining register and stack state corresponding to the function entry. After it is done, the probe handler calls jprobe_return() which traps again to restore processor state and switch back to the probed function. Linus noted correctly at KS that we need to be careful as gcc assumes that the callee owns arguments. We save and restore enough stack bytes to cover argument space. Sample Usage: static int jip_queue_xmit(struct sk_buff *skb, int ipfragok) { ... whatever ... jprobe_return(); return 0; } struct jprobe jp = { {.addr = (kprobe_opcode_t *) ip_queue_xmit}, .entry = (kprobe_opcode_t *) jip_queue_xmit }; register_jprobe(&jp); Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Prasanna S. Panchamukhi authored
- Kprobes structure has been modified to support copying of original instruction as required by the architecture. On x86_64 normal pages we get from kmalloc or vmalloc are not executable. Single-stepping an instruction on such a page yields an oops. So instead of storing the instruction copies in their respective kprobe objects, we allocate a page, map it executable, and store all the instruction copies there and store the pointer of the copied instruction in the specific kprobes object. - jprobe_return_end is moved into inline assembly to avoid compiler optimization. - arch_prepare_kprobe() now returns an integer,since arch_prepare_kprobe() might fail on other architectures. - added arch_remove_kprobe() routine, since other architectures requires it. Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Arjan van de Ven authored
lookup_mnt() is entirely unused outside of deep vfs internals, remove the export since it's quite a low level interface anyway Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Markus Lidel authored
- Fixed bug in i2o_iop_systab_set where address is used instead of length Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Måns Rullgård authored
Teach sysrq-N to switch all rt-policy tasks to SCHED_OTHER. For recovering from (and diagnosing) userspace bugs. Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jason Baron authored
The sysrq code is taking a spinlock from both interrupt and process context in an unsafe and deadlocky manner. Move all those inlined functions out of sysrq.h, into sysrq.c then withdraw all those exported-to-modules helper functions then remove __sysrq_trylock_table() altogether and then use spin_lock_irqsave() in the appropriate places. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Fedin authored
This patch allows the kernel to configure port's mode without help of BIOS. It is needed on my machine because its firmware simply ignores the parallel port leaving in unidirectional SPP mode. Notes on usage: To configure the port you need to: - if parport_pc driver is compiled as a module: specify parport_pc init_mode=[spp|ps2|epp|ecp|ecpepp] in /etc/modules file (for Debian Linux). - if the driver is linked statically with the kernel: specify parport_init_mode=[spp|ps2|epp|ecp|ecpepp] in kernel's arguments. This patch is intended for use primarily on Pegasos machines but it will work on any computer with VIA8231 south bridge. In this case it will override BIOS setting if you tell the driver to configure the port. BIOS setting will be honored if you omit init_mode parameter. Technical details: 1. On Pegasos standard port settings (set by OpenFirmware) are: IRQ=7, DMA=3, base address=0x3BC, mode is unidirectional SPP. 2. The patch changes only port mode, all other settings are preserved. So if you have a PC with VIA8231 and use driver to configure the port you'll still be able to change IRQ, DMA and base address in BIOS and these settings will be kept. 3. One exclusion: if you tell the driver to turn on EPP mode (specify epp or ecpepp value) and if default base address is 0x3BC (this is the case on Pegasos) the port will be moved to 0x378. EPP port can't have 0x3BC as the base. Known problems: 1. ECP+EPP mode is strange, it doesn't work even on several PC's i tested with Linux. ECP mode is detected and EPP is not. So if you get the same thing, it's not my fault. I just have no time to deal with it, current result is enough for me. 2. Not all devices work on Pegasos, i tried my Genuis-HR6 parallel port scanner and parallel ZIP drive and both of them don't work. ZIP drive is detected properly but then suddenly gets offline. Scanner does not answer any command at all. Without the patch the same thing happens. Obviously Pegasos has some more problems which are not discovered and not fixed yet. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pawel Sikora authored
The presence of /proc/kcore is supposed to be configurable. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rusty Russell authored
Since 2.6.4 we've been ignoring the failure of try_stop_module: it will normally fail if the module reference count is non-zero. This would have been mainly unnoticed, since "modprobe -r" checks the usage count before calling sys_delete_module(), however there is a race which would cause a hang in this case. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
If the driver has no fb_blank hook, then the generic method is to clear the screen and then disallow writes to the framebuffer. However, if the console is leaving graphics mode (KD_GRAPHICS), it would update the screen first, then unblank. However, since writes to the framebuffers are disallowed, the update failes, and upon unblank, the screen is left empty except for the flashing cursor. (This happens, for example when switching from X to console). The fix is to allow writes to the framebuffer even if the console is blanked. To imitate a blank screen, the get_color() function will return the attributes of the erase character (black on black) if the console is blanked and if the driver has no fb_blank hook. I think this fixes the rest of the major bugs in the blanking code. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Sylvain Meyer authored
- fix problems in the __iomem annotation - remove builtinmodes.c - remove INTEL_*_PARAM and use module_param instead - remove intelfb_find_mode() and associated functions and use generic fb_find_mode() instead - trivial documentation fix Signed-off-by: Sylvain Meyer <sylvain.meyer@worldonline.fr> Acked-by: "Antonino A. Daplas" <adaplas@hotpop.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Christoph Hellwig authored
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
Sigh, this patch uncovered a can of worms. I tested different combinations, those with/without xxxfb_blank implementation, framebuffers in directcolor or truecolor, etc. I find that there is a problem unblanking if the hardware has no xxxfb_blank() implementation, and also that the generic fb_blank() in fbmem.c is problematic with drivers in directcolor or pseudocolor mode when called by an fb application such as X. Display blanking is implemented in three ways: 1. using the drivers blanking implementation - info->fbops->fb_blank() 2. clearing the screen with the console erase character - fbcon_blank() 3. setting the color map to all black - fb_blank() The third method is problematic for these reasons: - Setting the colormap to all black will not work in truecolor mode - In directcolor or pseudocolor, it will overwrite the fb application's color map, producing wrong colors. So, remove the generic implementation in fb_blank() and just return -EINVAL if there is no hardware implementation. This will be only used by apps doing an FBIO_BLANK ioctl, and is a more robust approach. Other changes: - Consolidated all tests and created an inlined helper function to check if the framebuffer console is inactive or not. - fix unblanking if driver has no xxxfb_blank() hook. I'm probably missing a few more things, but this patch should be generally correct. Please apply after the entire patch series to avoid rejects. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
In matroxfb_set_par, a flag is set to nonzero which is checked after register_framebuffer(). If this flag is zero, the driver will initialize the hardware. This is necessary because info->currcon (previously checked by matroxfb) has been removed from struct fb_info. Signed-off-by: Antonino Daplas <adaplas@pol.net> Acked-by: Petr Vandrovec <VANDROVE@vc.cvut.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
The first iBook needs special mclk/xclk values, or the screen will show only garbage. A patch like this went into 2.4.23. It stopped working after 2.6.10-rc1. http://linux.bkbits.net:8080/linux-2.4/cset@3f966ca7mqKxZorh7Uw2SBAuVbv3mA It was discussed here: http://marc.theaimsgroup.com/?t=106345749200001&r=1&w=4Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ville Syrjala authored
Fix atyfb cursor problems: - oops with noaccel option - CONFIG_FB_ATY_CT dependency problem Signed-off-by: Ville Syrjala <syrjala@sci.fi> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
atyfb_base.c requires atyfb_cursor, but it is only available for linking if CONFIG_FB_ATY_CT=y. This patch moves the .o file to the CONFIG_FB_ATY rule. Signed-off-by: Olaf Hering <olh@suse.de> Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Antonino Daplas authored
The following fields in struct fb_info is specific only to fbcon: - struct timer_ cursor_timer - int currcon Remove them from struct fb_info and place them in fbcon_par so they become invisible from the drivers. Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-