aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2005-11-30[ACPI] Add support for FADT P_LVL2_UP flagVenkatesh Pallipadi1-0/+19
which tells us if C2 is valid for UP-only, or SMP. As there is no separate bit for C3, use P_LVL2_UP bit to cover both C2 and C3. http://bugzilla.kernel.org/show_bug.cgi?id=5165 Signed-off-by: Venkatesh Pallipadi<[email protected]> Signed-off-by: Len Brown <[email protected]> (cherry picked from 28b86b368af3944eb383078fc5797caf2dc8ce44 commit)
2005-11-30[ACPI] Prefer _CST over FADT for C-state capabilitiesVenkatesh Pallipadi1-5/+5
Note: This ACPI standard compliance may cause regression on some system, if they have _CST present, but _CST value is bogus. "nocst" module parameter should workaround that regression. http://bugzilla.kernel.org/show_bug.cgi?id=5165 Signed-off-by: Venkatesh Pallipadi<[email protected]> Signed-off-by: Len Brown <[email protected]> (cherry picked from 883baf7f7e81cca26f4683ae0d25ba48f094cc08 commit)
2005-11-29Merge master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc-mergeLinus Torvalds2-38/+26
2005-11-29[PATCH] fbdev: cg3fb: Kconfig fixMark Fortescue1-6/+7
A cut and past error regarding the CG3 frame buffer needs to be fixed. It also affects Creator/Creator3D/Elite3D. Signed-off-by: Antonino Daplas <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] fbdev: cirrusfb: Driver cleanup and bug fixesAntonino A. Daplas1-6/+9
- pseudo_palette is only 16 entries long - the pseudo_palette, if using the generic drawing functions, must always be u32 regardless of bpp - the fillrect accelerator is using region->color regardless of the visual. region->color is the index to the pseudo_palette if visual is truecolor Signed-off-by: Antonino Daplas <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] setting irq affinity is broken in ia32 with MSI enabledShaohua Li1-2/+2
Setting irq affinity stops working when MSI is enabled. With MSI, move_irq is empty, so we can't change irq affinity. It appears a typo in Ashok's original commit for this issue. X86_64 actually is using move_native_irq. Signed-off-by: Shaohua Li <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] hfsplus: don't modify journaled volumeRoman Zippel4-6/+33
Access to a journaled HFS+ volume is not officially supported under Linux, so mount such a volume read-only, but users can override this behaviour using the "force" mount option. The minimum requirement to relax this check is to at least check that the journal is empty and so nothing needs to be replayed to make sure the volume is consistent. Signed-off-by: Roman Zippel <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] reiserfs: handle cnode allocation failure gracefullyJeff Mahoney1-0/+9
If an external device is used for a journal, by default it will use the entire device. The reiserfs journal code allocates structures per journal block when it mounts the file system. If the journal device is too large, and memory cannot be allocated for the structures, it will continue and ultimately panic when it can't pull one off the free list. This patch handles the allocation failure gracefully and prints an error message at mount time. Changes: Updated error message to be more descriptive to the user. Discussed and approved on ReiserFS Mailing List, Nov 28. Signed-off-by: Jeff Mahoney <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] ppc: fix floating point register corruptionPaolo Galtieri1-0/+6
I recently discovered a bug on PPC which causes the floating point registers to get corrupted when CONFIG_PREEMPT=y. The problem occurred while running a multi threaded Java application that does floating point. The problem could be reproduced in anywhere from 2 to 6 hours. With the patch I have included below it ran for over a week without failure. Signed-off-by: Paolo Galtieri <[email protected]> Cc: Kumar Gala <[email protected]> Cc: Matt Porter <[email protected]> Cc: Tom Rini <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Cc: Paul Mackerras <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] fix swsusp on machines not supporting S4Pavel Machek1-5/+16
Fix swsusp on machines not supporting S4. With recent changes, it is not possible to trigger it using /sys filesystem. Swsusp does not really need any support from low-level code, it is possible to reboot or halt at the end of suspend. Signed-off-by: Pavel Machek <[email protected]> Cc: "Brown, Len" <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] fix rebooting on HP nc6120 laptopThierry Vignaud1-0/+8
Anne NICOLAS <[email protected]> and Andres Kaaber <[email protected]> reported their HP laptop didn't reboot smoothly. Signed-off-by: Thierry Vignaud <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] Fix crash when ptrace poking hugepage areasDavid Gibson1-1/+2
set_page_dirty() will not cope with being handed a page * which is part of a compound page, but not the master page in that compound page. This case can occur via access_process_vm() if you attemp to write to another process's hugepage memory area using ptrace() (causing an oops or hang). This patch fixes the bug by only calling set_page_dirty() from access_process_vm() if the page is not a compound page. We already use a similar fix in bio_set_pages_dirty() for the case of direct io to hugepages. Signed-off-by: David Gibson <[email protected]> Acked-by: William Irwin <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] process events connector: uid_t gid_t size issuesMatt Helsley1-4/+4
The uid_t and gid_t fields appear to present a 32/64-bit userspace/kernel problem for some archs. This patch addresses the problem by fixing the size to the largest size for uid_t/gid_t used in the kernel. This preserves the total size of the event structure while ensuring that the layouts of the ID change event match in 32 and 64-bit kernels and applications. Signed-off-by: Matt Helsley <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-30[PATCH] powerpc: prevent stack corruption in call_prom_retOlaf Hering1-1/+1
Use the correct pointer to clear the memory of the return values, to prevent stack corruption in the callers stackframe. Signed-off-by: Olaf Hering <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
2005-11-30powerpc: Fix bug causing FP registers corruption on UP + preemptPaul Mackerras1-37/+25
This fixes a bug noticed by Paolo Galtieri and fixed for ARCH=ppc in the previous commit (ppc: fix floating point register corruption). This fixes the arch/powerpc code by adding preempt_disable/enable, and also cleans it up a bit by pulling out the code that discards any lazily-switched CPU register state into a new function, rather than having that code repeated in three places. Signed-off-by: Paul Mackerras <[email protected]>
2005-11-30[PATCH] ppc: fix floating point register corruptionPaolo Galtieri1-0/+6
I recently discovered a bug on PPC which causes the floating point registers to get corrupted when CONFIG_PREEMPT=y. The problem occurred while running a multi threaded Java application that does floating point. The problem could be reproduced in anywhere from 2 to 6 hours. With the patch I have included below it ran for over a week without failure. Signed-off-by: Paolo Galtieri <[email protected]> Cc: Kumar Gala <[email protected]> Cc: Matt Porter <[email protected]> Cc: Tom Rini <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
2005-11-29Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds38-300/+320
2005-11-29[PATCH] VM: Fix typos in get_locked_pteTrond Myklebust1-2/+2
Signed-off-by: Trond Myklebust <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[IPV6]: make two functions staticAdrian Bunk2-3/+4
This patch makes two needlessly global functions static. Signed-off-by: Adrian Bunk <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[NETFILTER] ipv4: small cleanupsAdrian Bunk3-4/+4
This patch contains the following cleanups: - make needlessly global code static - ip_conntrack_core.c: ip_conntrack_flush() -> ip_conntrack_flush(void) Signed-off-by: Adrian Bunk <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[IPV4]: make two functions staticAdrian Bunk2-2/+2
This patch makes two needlessly global functions static. Signed-off-by: Adrian Bunk <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[NET]: Add const markers to various variables.Arjan van de Ven19-29/+29
the patch below marks various variables const in net/; the goal is to move them to the .rodata section so that they can't false-share cachelines with things that get written to, as well as potentially helping gcc a bit with optimisations. (these were found using a gcc patch to warn about such variables) Signed-off-by: Arjan van de Ven <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: [adummy] dummy ATM driver (similar to net/dummy)Chas Williams3-0/+176
Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: deregistration removes device from atm_devs list immediatelyStanislaw Gruszka6-57/+52
atm_dev_deregister() removes device from atm_dev list immediately to prevent operations on a phantom device. Decision to free device based only on ->refcnt now. Remove shutdown_atm_dev() use atm_dev_deregister() instead. atm_dev_deregister() also asynchronously releases all vccs related to device. Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: avoid race conditions related to atm_devs listStanislaw Gruszka3-23/+20
Use semaphore to protect atm_devs list, as no one need access to it from interrupt context. Avoid race conditions between atm_dev_register(), atm_dev_lookup() and atm_dev_deregister(). Fix double spin_unlock() bug. Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: [lanai] kill lanai_ioctl() which just contains some old debugging codeMitchell Blank Jr1-89/+1
Signed-off-by: Mitchell Blank Jr <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: linux/config.h only needed for #ifdef __KERNEL__ sectionChas Williams1-1/+1
Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: attempt to autoload atm driversMitchell Blank Jr2-2/+3
From: Mitchell Blank Jr <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: drivers/atm/atmdev_init.c no longer necessaryJan Pieter1-54/+0
From: Jan Pieter <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: [lanai] lanai missing unregisterDave Jones1-0/+1
Signed-off-by: Dave Jones <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: [lanai] better constificationMitchell Blank Jr1-5/+6
Signed-off-by: Mitchell Blank Jr <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: atm_pcr_goal() doesn't modify its argument's contents -- mark it as constMitchell Blank Jr2-5/+8
Signed-off-by: Mitchell Blank Jr <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[ATM]: always return the first interface for ATM_ITF_ANYMitchell Blank Jr1-20/+10
From: Mitchell Blank Jr <[email protected]> Signed-off-by: Chas Williams <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2005-11-29[IPV4] tcp/route: Another look at hash table sizesMike Stroyan2-6/+3
The tcp_ehash hash table gets too big on systems with really big memory. It is worse on systems with pages larger than 4KB. It wastes memory that could be better used. It also makes the netstat command slow because reading /proc/net/tcp and /proc/net/tcp6 needs to go through the full hash table. The default value should not be larger for larger page sizes. It seems that the effect of page size is an unintended error dating back a long time. I also wonder if the default value really should be a larger fraction of memory for systems with more memory. While systems with really big ram can afford more space for hash tables, it is not clear to me that they benefit from increasing the allocation ratio for this table. The amount of memory allocated is determined by net/ipv4/tcp.c:tcp_init and mm/page_alloc.c:alloc_large_system_hash. tcp_init calls alloc_large_system_hash passing parameters- bucketsize=sizeof(struct tcp_ehash_bucket) numentries=thash_entries scale=(num_physpages >= 128 * 1024) ? (25-PAGE_SHIFT) : (27-PAGE_SHIFT) limit=0 On i386, PAGE_SHIFT is 12 for a page size of 4K On ia64, PAGE_SHIFT defaults to 14 for a page size of 16K The num_physpages test above makes the allocation take a larger fraction of the total memory on systems with larger memory. The threshold size for a i386 system is 512MB. For an ia64 system with 16KB pages the threshold is 2GB. For smaller memory systems- On i386, scale = (27 - 12) = 15 On ia64, scale = (27 - 14) = 13 For larger memory systems- On i386, scale = (25 - 12) = 13 On ia64, scale = (25 - 14) = 11 For the rest of this discussion, I'll just track the larger memory case. The default behavior has numentries=thash_entries=0, so the allocated size is determined by either scale or by the default limit of 1/16 of total memory. In alloc_large_system_hash- | numentries = (flags & HASH_HIGHMEM) ? nr_all_pages : nr_kernel_pages; | numentries += (1UL << (20 - PAGE_SHIFT)) - 1; | numentries >>= 20 - PAGE_SHIFT; | numentries <<= 20 - PAGE_SHIFT; At this point, numentries is pages for all of memory, rounded up to the nearest megabyte boundary. | /* limit to 1 bucket per 2^scale bytes of low memory */ | if (scale > PAGE_SHIFT) | numentries >>= (scale - PAGE_SHIFT); | else | numentries <<= (PAGE_SHIFT - scale); On i386, numentries >>= (13 - 12), so numentries is 1/8196 of bytes of total memory. On ia64, numentries <<= (14 - 11), so numentries is 1/2048 of bytes of total memory. | log2qty = long_log2(numentries); | | do { | size = bucketsize << log2qty; bucketsize is 16, so size is 16 times numentries, rounded down to a power of two. On i386, size is 1/512 of bytes of total memory. On ia64, size is 1/128 of bytes of total memory. For smaller systems the results are On i386, size is 1/2048 of bytes of total memory. On ia64, size is 1/512 of bytes of total memory. The large page effect can be removed by just replacing the use of PAGE_SHIFT with a constant of 12 in the calls to alloc_large_system_hash. That makes them more like the other uses of that function from fs/inode.c and fs/dcache.c Signed-off-by: David S. Miller <[email protected]>
2005-11-29Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6Linus Torvalds1-0/+1
2005-11-29Merge branch 'release' of ↵Linus Torvalds4-20/+4
git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
2005-11-29Revert "[PATCH] drivers/message/fusion/mptbase.c: make code static"Linus Torvalds2-2/+6
This reverts commit 252ac865535e1ea9cc2d28be83f477d8d8b961a2. It impacts the LSI customers using the mptstm target mode drivers (source tar-ball at ftp://ftp.lsil.com/HostAdapterDrivers/linux/Fusion-MPT/mptstm-1.00.13-src.tar.gz for those who care). Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] pfnmap: do_no_page BUG_ON againHugh Dickins1-1/+3
Use copy_user_highpage directly instead of cow_user_page in do_no_page: in the immediately following page_cache_release, and elsewhere, it is assuming that new_page is normal. If any VM_PFNMAP driver can get to do_no_page, it's just a BUG (but not in the case of do_anonymous_page). Signed-off-by: Hugh Dickins <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] pfnmap: remove src_page from do_wp_pageHugh Dickins1-4/+3
Clean away do_wp_page's "src_page": cow_user_page makes it unnecessary. Signed-off-by: Hugh Dickins <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29cow_user_page: fix page alignmentLinus Torvalds1-2/+9
High Dickins points out that the user virtual address passed to the page fault handler isn't necessarily page-aligned. Also, add a comment on why the copy could fail for the user address case. Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29VM: add common helper function to create the page tablesLinus Torvalds4-45/+19
This logic was duplicated four times, for no good reason. Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[SPARC64]: Fix >8K I/O mappings.David S. Miller1-0/+1
Increment the PFN field of the PTE so that the tests on vm_pfn in mm/memory.c match up. The TLB ignores these lower bits for larger page sizes, so it's OK to set things like this. Signed-off-by: David S. Miller <[email protected]>
2005-11-29Merge master.kernel.org:/pub/scm/linux/kernel/git/tglx/mtd-2.6Linus Torvalds18-109/+180
2005-11-29[PATCH] fix megaraid.c lockingChristoph Hellwig1-15/+14
This fixes locking in megaraid.c, namely: (1) make sure megaraid_queue release the adapter lock by changing the code to have a single return (2) remove the errornous scsi_assign_lock call Testing by Burton Windle. Signed-off-by: Christoph Hellwig <[email protected]> Acked-by: Burton Windle <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29Support strange discontiguous PFN remappingsLinus Torvalds2-0/+93
These get created by some drivers that don't generally even want a pfn remapping at all, but would really mostly prefer to just map pages they've allocated individually instead. For now, create a helper function that turns such an incomplete PFN remapping call into a loop that does that explicit mapping. In the long run we almost certainly want to export a totally different interface for that, though. Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[PATCH] Fix missing pfn variables caused by vm changesBen Collins2-3/+3
I image this showed up because of "unused var..." when the changes occured, because flush_cache_page() is a noop in most places. This showed up for me on parisc however, where flush_cache_page() is a real function. Signed-off-by: Linus Torvalds <[email protected]>
2005-11-29[MTD] Make functions static, include header files with prototypesAdrian Bunk5-10/+11
This patch contains the following possible cleanups: - every file should #include the headers containing the prototypes for it's global functions - make needlessly global functions static Signed-off-by: Adrian Bunk <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2005-11-29[MTD] chips: make sharps driver usable againRichard Purdie1-57/+66
Update the pre-CFI Sharp driver sharps.c so it compiles. map_read32 / map_write32 no longer exist in the kernel so the driver is totally broken as it stands. The replacement functions use different parameters resulting in the other changes. Change collie to use this driver until someone works out why the cfi driver fails on that machine. Signed-off-by: Richard Purdie <[email protected]> Tested-by: Pavel Machek <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2005-11-29[MTD] Remove bogus PQ2FADS driverThomas Gleixner2-7/+0
Remove disfunctional driver, which slipped through the review mechanism Signed-off-by: Thomas Gleixner <[email protected]>
2005-11-29[MTD] maps: sparse fixupLuiz Capitulino1-2/+2
The patch below fixes the following sparse warning: drivers/mtd/maps/nettel.c:482:27: warning: Using plain integer as NULL pointer Signed-off-by: Luiz Capitulino <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>