- 22 Oct, 2003 40 commits
-
-
Alexander Viro authored
do_tty_hangup() does fput() on redirect struct file too early - it could've been the only holder of tty_struct we are working with and in that case we'll end up freeing it from fput() and then both reading and modifying kfreed memory.
-
bk://kernel.bkbits.net/davem/net-2.5Linus Torvalds authored
into home.osdl.org:/home/torvalds/v2.5/linux
-
Andrew Morton authored
From: Bjorn Helgaas <bjorn.helgaas@hp.com> early_serial_setup() doesn't validate the array index, so a caller could corrupt memory after serial8250_ports[] by supplying a value of port->line that's too large. I haven't seen a failure related to this, but it seems fragile to rely on callers to know how many ports the driver supports.
-
Andrew Morton authored
Need to null-terminate that table.
-
Andrew Morton authored
From: Patrick Gefre <pfg@sgi.com> Add ia64 Altix serial console driver.
-
Andrew Morton authored
From: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br> when PROC_FS=n, arlan.h will define init_arlan_proc() and cleanup_arlan_proc() as macros. So, whitout the #ifdef/#endif here, we have two definitions.
-
Andrew Morton authored
From: Pavel Machek <pavel@ucw.cz> This printk is unneccessary for quite a long time, please kill it. [I added it, so it should be okay for me to request it being killed..]
-
Andrew Morton authored
From: Bjorn Helgaas <bjorn.helgaas@hp.com> ia64 needs more complete checking on the offset which is passed into reads or writes of /dev/mem. This patch factors out the range checking so that the architecture can implement a private version.
-
Andrew Morton authored
From: "Noah J. Misch" <noah@caltech.edu> Two gameport drivers need __devexit_p wrapped around their remove functions. A newer binutils caught this is a link error. This patch fixes that. Wrapped a __devexit_p around the 'remove' functions of two gameport drivers. The lack of __devexit_p was wrong according to linux/init.h, differed from the practices in nearby files, and caused a link error with binutils 2.14.90.0.5.
-
Andrew Morton authored
From: miles@lsi.nec.co.jp (Miles Bader) The cb_pic_handle_irq function on this platform hadn't been updated to use irqreturn_t; do so.
-
Andrew Morton authored
From: miles@lsi.nec.co.jp (Miles Bader) This reservation is handled by platform-independent code in 2.6.0, but some platforms _also_ did it in platform-specific code (left over from 2.4.x).
-
Andrew Morton authored
From: miles@lsi.nec.co.jp (Miles Bader) Use `late_initcall' instead of just `__initcall' as a workaround for the fact that (1) simcons_tty_init can't be called before tty_init, (2) tty_init is called via `module_init', (3) if statically linked, module_init == device_init, and (4) there's no ordering of init lists. We can do this easily because simcons is always statically linked, but other tty drivers that depend on tty_init and which must use `module_init' to declare their init routines are likely to be broken.
-
Andrew Morton authored
From: "Noah J. Misch" <noah@caltech.edu> Allows the Toshiba SMM driver to compile with CONFIG_PROC_FS=n.
-
Andrew Morton authored
It is missing an up() on an error path.
-
Andrew Morton authored
Peter Osterlund <petero2@telia.com> notes oopses in the anticipatory scheduler with slab poisoning enabled due to arq->rb_node.rb_right being uninitialised. So wipe the whole thing when we allocate it. deadline seems to have the same problem.
-
Andrew Morton authored
Backport this fix from 2.4
-
Andrew Morton authored
If you have an MCA kernel on non-MCA hardware and load an MCA driver, mca_find_unused_adapter() ends up dereferencing NULL. Teach it about the absence of MCA buses.
-
Andrew Morton authored
With CONFIG_MCA=y and no MCA bus present, drivers go oops deep in the kobject code when calling mca_register_driver(). Because there is no MCA subsystem registered against the driver. Plug this in mca_register_driver().
-
Andrew Morton authored
From: John Mock <kd6pag@qsl.net> If 'parport_pc' is compile as a module, it fails to properly return certain ioport resources after being removed.
-
Andrew Morton authored
If you try to load a DRM module when agpgart is not present, modprobe says "Cannot allocate memory", which is rather misleading. Make it return -EINVAL instead.
-
Andrew Morton authored
With CONFIG_MODULES=n this file does not compile because the type of module->owner is not known. Gven that card->owner is probably a null pointer when this driver is statically linked, best thing to do is to just not poke around inside card->owner at all.
-
Andrew Morton authored
Expand printk's traditional handling of null pointers so that anything in the first page is considered a null pointer. This gives us better behaviour when someone (acpi..) accidentally prints a string which is embedded in a struct, the pointer to which is null.
-
Andrew Morton authored
From: Luiz Capitulino <lcapitulino@prefeitura.sp.gov.br> Fix bluetooth build when CONFIG_PROC_FS=n
-
Andrew Morton authored
From: jbarnes@sgi.com (Jesse Barnes) The patch adds a symlink from /sys/devices/system/node/nodeM/cpuN to the /sys/devices/cpu/cpuN directory so that a userspace program can determine which CPUs belong to which nodes easily. Non-NUMA systems can simply pass NULL in for the root arg and everything will work like it used to.
-
Andrew Morton authored
cache_grow() will call kmem_freepages() if the call to alloc_slabmgmt() fails. But the pages have not been marked PageSlab at this stage, so kmem_freepages() goes BUG. It is more symmetrical to mark the pages as PageSlab in kmem_getpages(). The patch also prunes a bunch of incorrect comments. (PageSlab doesn't actually do anything: its only value is as a debug check. I think the LKCD patch uses it).
-
Andrew Morton authored
Plug the two-megabyte-per-day memory leak.
-
Andrew Morton authored
I happened to spot this kfree(of complete garbage) - it is on an oh-we-raced-retry path which is obviously exceedingly rare,
-
Andrew Morton authored
From: Peter Bergner <bergner@vnet.ibm.com> In fs/binfmt_elf.c:load_elf_binary() (both 2.6 and 2.4), there is some minimal checking whether the interpreter it's about to load/run is a valid ELF file, but it fails to check whether the interpreter is of the correct arch. We ran into this when a borked powerpc64-linux toolchain set the interpreter on our 64-bit app to our 32-bit ld.so. Executing the app caused the kernel to really chew up memory. I'm assuming x86_64 and sparc64 might possibly see the same behavior. Note I'm not sure of the history behind INTERPRETER_AOUT, so I added the test for INTERPRETER_ELF so as not to change it's behavior in case someone still relies on it. As an aside, it seems the elf_check_arch() macros should really be checking for more than a valid e_machine value. I'd think checking one or more of the e_ident[EI_CLASS], e_ident[EI_DATA] and e_ident[EI_OSABI] values would be required as well, no?
-
Andrew Morton authored
From: Jesper Juhl <juhl-lkml@dif.dk>
-
Andrew Morton authored
Fix a C99ism.
-
Andrew Morton authored
From: "Kurtis D. Rader" <kdrader@us.ibm.com> http://bugme.osdl.org/show_bug.cgi?id=1365 The digi_acceleport.c USB serial driver has a bogus "address of" operator that results in BUGs. The problem is that digi_wakeup_write_lock() takes a pointer to a struct usb_serial_port. However, what gets passed is a pointer to a pointer to a struct usb_serial_port.
-
Andrew Morton authored
OK, I give up. Kill all the might_sleep warnings from the early boot process.
-
Andrew Morton authored
There seems to be no header file which declares system_running.
-
Andrew Morton authored
From: Jan Kara <jack@ucw.cz> attached patch should fix a quota locking problem causing deadlock (when inode was being released from icache and it caused newly created quota structure to be written).
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> mm/filemap.c's generic_file_aio_write_nolock changed SetPageReferenced to mark_page_accessed in -test3: now follow that in shmem_file_write.
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> mm/shmem.c was converted to i_size_read in -test1, and the remaining references to a file's naked i_size are safely protected by i_sem; but surely shmem_file_write must use i_size_write to update i_size.
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> If it's possible for a tmpfs page beyond i_size to remain in cache until shmem_truncate repeats truncate_inode_pages, then shmem_writepage's BUG_ON(index >= info->next_index) cannot be completely safe. But it's a useful check in a fragile area, so retain it when not in shmem_truncate.
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> Extend use of that SHMEM_PAGEIN flag to where shmem_getpage adds a page to the cache. It couldn't have caused a BUG_ON(inode->i_blocks), but if i_size is reduced (from another cpu) the instant after shmem_swp_alloc checks it, shmem_getpage could insert a page into the cache just after truncate_inode_pages has passed through cleaning it, leaving stale data (which may mysteriously reappear if the file is later extended). Easily fixed for tmpfs, using the mechanism just added for swapoff; and probably more important there, since its read from swap can insert non-0 data. But is there not a similar issue, a tiny window, in filemap.c? if truncate_inode_pages comes in between checking i_size and adding new page to cache. Not worth getting excited, but something to beware of.
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> On 23 July, Sergey S. Kostyliov <rathamahata@php4.ru> reported a tmpfs BUG_ON(inode->i_blocks) during swapoff: my last version of the fix to swapoff/truncate race was inadequate, since I_FREEING might get set or i_size be reduced (from another cpu) the instant after it's tested here. So revert to the previous version of the fix, shmem_truncate calling truncate_inode_pages again, if pages still left in cache; but avoid the recall in usual cases of partial truncation, by having a "pagein" flag to indicate when recall might be necessary. (Since those flags already use VM_ACCOUNT and VM_LOCKED, must redefine another VM_flag for this.) Sergey and 2.4-aa have run fine with this for a couple of months.
-
Andrew Morton authored
From: Hugh Dickins <hugh@veritas.com> LTP tests the filesystem on /tmp: many failures when tmpfs because it missed the way directories hand down their gid. Also fix ramfs and hugetlbfs.
-