- 25 May, 2004 40 commits
-
-
Andrew Morton authored
From: Yury Umanets <torque@ukrpost.net> Thanks to smatch I have found few memory leaks and other related issues.
-
Andrew Morton authored
From: Michael Hunold <hunold@convergence.de> The attached patch changes my "Multimedia eXtension Board" (MXB) Video4Linux-driver to use the standard saa7111 video decoder infrastructure (to which I recently submitted changes through Ronald Bultje) instead of some home-brewn direct-access stuff. Nothing serious, but it removes code duplication and makes the code use the video decoder api.
-
Andrew Morton authored
From: <viro@parcelfarce.linux.theplanet.co.uk> init/initramfs.c::do_skip() has an off-by-one that leads to unpacking failures for some gzipped cpio images. We have static int __init do_skip(void) { if (this_header + count <= next_header) { eat(count); return 1; } else { eat(next_header - this_header); state = next_state; return 0; } } and that <= should actually be <. It almost never matters, since if we hit the boundary case (header ending exactly on the gunzip window end) the current variant will simply end up doing extra call of do_skip() when we get to the next window and that will finish the work (assign state). The only exception is when we hit that in the last window. That is, if there's nothing after the final header (trailer). Then we miss the final state transition (Skip -> Reset) and get "junk in archive" panic. Normally cpio(1) pads the image to multiple of 512, so we actually have a bunch of zeroes after the trailer. And that almost always saves our butts - trailer is followed by zeroes, so we get to Reset state just fine. So we never see that on small in-kernel image (it's less than 512 bytes, so it gets a lot of padding) and we almost never see that on external ones (1:127 odds of hitting the bug).
-
Andrew Morton authored
From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> - use fat_fs_panic() instead of BUG() if it read a corrupted inode. - add missing "\n".
-
Andrew Morton authored
From: Pavel Machek <pavel@suse.cz> swsusp contained rather nasty bug where it killed machine when intel-agp or anything else split kernel 4MB mapping. Herbert Xu diagnosed this. Fixed by switching to "known good" mapping for during suspend/resume.
-
Andrew Morton authored
From: Bart Samwel <bart@samwel.tk> We don't want to use "cut" in the laptop mode control script, because that is in /usr. This patch is from Jasper Spaans.
-
Andrew Morton authored
Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Some people expressed interest in having possibility to set CRTC <-> outputs mapping at boot time, without having to use 'matroxset' later after kernel boots. This patch adds option 'video=matroxfb:outputs:XYZ', where X sets which CRTC will connect to primary output, Y sets secondary output and Z sets DVI output. In addition to that I also added missing memset() into maven, which was broken since i2c was kobjectified.
-
Andrew Morton authored
From: Andi Kleen <ak@muc.de> When start_transaction() detects an error it already calls ext3_std_error. No need to do it again in the caller.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> From: Debian kernel package, author probably Herbert Xu Include asm/io.h and asm/scatterlist.h in include/asm-i386/dma-mapping.h to make it useable standalone, which is already true for most architectures.
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> Fix a typo in an error message.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> From: Debian kernel package, author probably Herbert Xu
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> * Include linux/root_dev.h for ROOT_DEV in drivers/mtd/maps/uclinux.c
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> again needed by most non-x86 arches. * Include linux/init.h for __init
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> From: Mattia Monga via Debian kernel package Add support for nm256xl+ in sound/oss/nm256_audio.c
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> From: Debian kernel package, author is probably Herbert Xu * Do not get seqno since we will not use it in fs/isofs/inode.c
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> From: Debian kernel package, author probably Herbert Xu. * Fixed bashism in Makefile
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> Fix nls support for character sets with character width large than 1.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> Update dir ctime/mtime when adding/removing an entry.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> When releasing a page don't try to release not existing nodes.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> If the inserting of the file or dir record failed, remove the previously inserted thread record.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> Call hfsplus_delete_inode() to delete an inode when adding it to the filesystem failed, so superblock info is correctly updated.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> Initialize d_fsdata field also for dir dentries, use hfsplus_instantiate helper function for this.
-
Andrew Morton authored
From: Roman Zippel <zippel@linux-m68k.org> Use the correct key length for index nodes.
-
Andrew Morton authored
From: Kurt Garloff <garloff@suse.de> Attached patch decreases the size of struct file by 8 bytes on 64 bit arches by avoiding unecessary padding.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> struct page easily fits into a single cacheline with any recent CPU, and the ordering isn't as described anymore anyway.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> there's no user is modules, the function isn't in mainline and I don't see why modules should use it.
-
Andrew Morton authored
From: Olaf Kirch <okir@suse.de> I have been chasing a corruption of current->group_info on PPC during NFS stress tests. The problem seems to be that nfsd is messing with its group_info quite a bit, while some monitoring processes look at /proc/<pid>/status and do a get_group_info/put_group_info without any locking. This problem can be reproduced on ppc platforms within a few seconds if you generate some NFS load and do a "cat /proc/XXX/status" of an nfsd thread in a tight loop. I therefore think changes to current->group_info, and querying it from a different process, needs to be protected using the task_lock. (akpm: task->group_info here is safe against exit() because the task holds a ref on group_info which is released in __put_task_struct, and the /proc file has a ref on the task_struct).
-
Andrew Morton authored
ep_send_events() uses ~350 bytes of stack for a local buffer of events to send to userspace. The patch fixes that by removing the double-buffering altogether. A pipe-based microbenchmark from Davide Libenzi <davidel@xmailserver.org> was sped up by 1-2%.
-
Andrew Morton authored
From: Ingo Molnar <mingo@elte.hu> printk currently does if (oops_in_progres) bust_printk_locks(); which means that once we oops, the printk locking is 100% ineffective and multiple CPUs make an unreadable mess on a serial console. It's a significant development hassle. Fix that up by only popping locks once per ten seconds. akpm@osdl.org did: - Bump the timeout to 30 seconds - 9600 baud is slow. - Handle jiffy wraps: change the logic so that we only skip the lockbust if the current time is within 30 seconds of the previous lockbusting attempt.
-
Andrew Morton authored
From: "J. Bruce Fields" <bfields@fieldses.org> The kernel currently prints: nfsd: nobody listening for auth.unix.ip upcall; has some daemon not been started? on every bootup, during initscripts. Neil Brown <neilb@cse.unsw.edu.au> says: It was part of the recent set of idmapper patches. Bruce wanted the admin to get a warning when the idmapper daemon wasn't running. I thought the same warning should apply to any daemon that responded to upcalls. In the case of auth.unix.ip it isn't strictly necessary for a daemon to be running (for comparability with 2.4). You can get rid of the warning by doing: mount -t nfsd nfsd /proc/fs/nfs before mountd is started (init scripts should start doing this I hope, but distributions don't tend to use the init script from nfs-utils, so it is hard to push it). This will trigger mountd to listen on auth.unix.ip and others. That's a hassle, so Bruce's patch limits the warning purely to the new idmapper cache. It provides a callback in the cache_detail that individual caches can use to log messages when upcalls fail because a userspace daemon not running. Implement this method for the idmapping caches.
-
Andrew Morton authored
From: Mans Rullgard <mru@kth.se> There are a few include which should have been under __KERNEL__.
-
Andrew Morton authored
-
Andrew Morton authored
Signed-off-by: Paul Mackerras <paulus@samba.org> Early in the boot process on pSeries machines, we look in the Open Firmware device tree for information about the interrupt assignments, and assign virtual IRQ numbers for each physical IRQ. There is currently a couple of bugs in this code which result in us assigning virtual IRQs for nonexistent physical IRQs. This causes problems when we call the firmware to enable or disable those nonexistent physical IRQs. Some versions at least of the firmware will hit an assertion failure and crash the machine when this happens. This patch fixes the bugs and ensures that we don't try and use nonexistent physical IRQ numbers. One bug was that we were mapping ISA interrupts, which is unnecessary since virtual IRQ numbers 0 - 15 are reserved for them. The other was that when we had a PCI interrupt (which is always in the range 1 to 4, corresponding to INTA to INTD) which didn't have a mapping in the PCI host bridge above it, we were just using the original number (usually 1) rather than ignoring it.
-
Andrew Morton authored
Signed-off-by: Anton Blanchard <anton@samba.org> We have cards that want over 2MB of PCI consistent memory. The IOMAP_MAX_ORDER limit is just to catch bad drivers early, so we can bump this a bit. We want some room to grow but our maximum get_free_pages allocation on ppc64 is currently 16MB, so it doesnt make sense to go above that.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> enter_rtas now takes an unsigned long.
-
Andrew Morton authored
From: Stephen Rothwell <sfr@canb.auug.org.au> This patch allows us to dynamically add virtual disks to an iSeries partition. It works like this: after you have created the virtual disk file on OS/400 and attached it to the Linux partition, you need to write to /sys/bus/vio/drivers/viodasd/probe (it doesn't matter what you write). This will do the probe. It calls add_disk() for each new disk, so we get hotplug events as a side effect. This was the nicest way I could think of doing this as the interface to the hypervisor is polled ...
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> From: Olaf Hering and Nathan Lynch: Fix a couple of nasty lurking bugs in viopath.c and add information required to know if the iseries_veth module should be loaded on legacy iSeries systems.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> From: Anton Blanchard, Dave Hansen and Olof Johansson: Fix multiple bugs in the ppc64 NUMA topology probe code. - We were using HW cpu numbers instead of logical ones. 615, 630, 650, some 670 and some 690 SMP will all fail to boot without this patch. - The old code would BUG() when it got confused (more NUMA zones than the kernel is configured for etc). - The common depth calculation was incorrect. Dave found an OF property that gives us exactly what we want. - Things were broken on SMT machines. The new code should work on those broken systems and should no longer BUG() but fall back to a flat topology when it gets confused.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> In _raw_spin_lock_flags we were branching to the wrong spot and would restore random stuff to the MSR.
-
Dave Jones authored
From: Zdenek Pavlas <pavlas@nextra.cz> On any x86 without cpuid, early_cpu_detect() left x86_cache_alignment as zero, so kmem_cache_init() calls cache_estimate() with align == 0, and it loops forever. I've tried this trivial fix, and it works for me. Andi Kleen looked over this, and ok'd it.
-