commit bf81b46482c0fa8ea638e409d39768ea92a6b0f0 Author: Linus Torvalds Date: Sat Jan 6 21:45:51 2007 -0800 Linux 2.6.20-rc4 commit 90cb28e8f76e57751ffe14abd09c2d53a6aea7c8 Author: Linus Torvalds Date: Sat Jan 6 13:28:21 2007 -0800 Revert "[PATCH] binfmt_elf: randomize PIE binaries (2nd try)" This reverts commit 59287c0913cc9a6c75712a775f6c1c1ef418ef3b. Hugh Dickins reports that it causes random failures on x86 with SuSE 10.2, and points out "Isn't that randomization, anywhere from 0x10000 to ELF_ET_DYN_BASE, sure to place the ET_DYN from time to time just where the comment says it's trying to avoid? I assume that somehow results in the error reported." (where the comment in question is the existing comment in the source code about mmap/brk clashes). Suggested-by: Hugh Dickins Acked-by: Marcus Meissner Cc: Andrew Morton Cc: Andi Kleen Cc: Ingo Molnar Cc: Dave Jones Cc: Arjan van de Ven Signed-off-by: Linus Torvalds commit af3e095a1fb42bac32355d5d59ce93f8b4e59a3e Author: Erik Jacobson Date: Fri Jan 5 16:37:05 2007 -0800 [PATCH] connector: some fixes for ia64 unaligned access errors On ia64, the various functions that make up cn_proc.c cause kernel unaligned access errors. If you are using these, for example, to get notification about all tasks forking and exiting, you get multiple unaligned access errors per process. Use put_unaligned() in the appropriate palces to fix this. Signed-off-by: Erik Jacobson Cc: Evgeniy Polyakov Cc: "Luck, Tony" Cc: Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76395d37611e8758dd8bd6c6f5bfcb31e1dc48f9 Author: Andrew Morton Date: Fri Jan 5 16:37:05 2007 -0800 [PATCH] shrink_all_memory(): fix lru_pages handling At the end of shrink_all_memory() we forget to recalculate lru_pages: it can be zero. Fix that up, and add a helper function for this operation too. Also, recalculate lru_pages each time around the inner loop to get the balancing correct. Cc: "Rafael J. Wysocki" Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d63b70902befe189ba2672925f28ec3f4db41352 Author: Evgeniy Dushistov Date: Fri Jan 5 16:37:04 2007 -0800 [PATCH] fix garbage instead of zeroes in UFS Looks like this is the problem, which point Al Viro some time ago: ufs's get_block callback allocates 16k of disk at a time, and links that entire 16k into the file's metadata. But because get_block is called for only a single buffer_head (a 2k buffer_head in this case?) we are only able to tell the VFS that this 2k is buffer_new(). So when ufs_getfrag_block() is later called to map some more data in the file, and when that data resides within the remaining 14k of this fragment, ufs_getfrag_block() will incorrectly return a !buffer_new() buffer_head. I don't see _right_ way to do nullification of whole block, if use inode page cache, some pages may be outside of inode limits (inode size), and will be lost; if use blockdev page cache it is possible to zero real data, if later inode page cache will be used. The simpliest way, as can I see usage of block device page cache, but not only mark dirty, but also sync it during "nullification". I use my simple tests collection, which I used for check that create,open,write,read,close works on ufs, and I see that this patch makes ufs code 18% slower then before. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ba3485947ee7bc89a17f86250fe9b692a615dff Author: Hugh Dickins Date: Fri Jan 5 16:37:03 2007 -0800 [PATCH] fix OOM killing of swapoff These days, if you swapoff when there isn't enough memory, OOM killer gives "BUG: scheduling while atomic" and the machine hangs: badness() needs to do its PF_SWAPOFF return after the task_unlock (tasklist_lock is also held here, so p isn't going to be freed: PF_SWAPOFF might get turned off at any moment, but that doesn't really matter). Signed-off-by: Hugh Dickins Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c8af57eb76fbd70c7f5b421b065fd55d096e2bff Author: Matthijs van Otterdijk Date: Fri Jan 5 16:37:03 2007 -0800 [PATCH] fix the toshiba_acpi write_lcd return value write_lcd() in toshiba_acpi returns 0 on success since the big ACPI patch merged in 2.6.20-rc2. It should return count. Signed-off-by: Matthijs van Otterdijk Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73b8ed29ab3f6ad7204b4e61cfa87dc0c28d3019 Author: Cyrill V. Gorcunov Date: Fri Jan 5 16:37:02 2007 -0800 [PATCH] qconf: fix SIGSEGV on empty menu items qconf may cause SIGSEGV by trying to show debug information on empty menu items Signed-off-by: Cyrill V. Gorcunov Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2e12bb272f2544d1504f982270e90ae3dcc4ff2 Author: Christoph Lameter Date: Fri Jan 5 16:37:02 2007 -0800 [PATCH] Check for populated zone in __drain_pages Both process_zones() and drain_node_pages() check for populated zones before touching pagesets. However, __drain_pages does not do so, This may result in a NULL pointer dereference for pagesets in unpopulated zones if a NUMA setup is combined with cpu hotplug. Initially the unpopulated zone has the pcp pointers pointing to the boot pagesets. Since the zone is not populated the boot pageset pointers will not be changed during page allocator and slab bootstrap. If a cpu is later brought down (first call to __drain_pages()) then the pcp pointers for cpus in unpopulated zones are set to NULL since __drain_pages does not first check for an unpopulated zone. If the cpu is then brought up again then we call process_zones() which will ignore the unpopulated zone. So the pageset pointers will still be NULL. If the cpu is then again brought down then __drain_pages will attempt to drain pages by following the NULL pageset pointer for unpopulated zones. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6929da4427b4335365dd51ab0b7dd2a0393656f0 Author: Alan Date: Fri Jan 5 16:37:01 2007 -0800 [PATCH] hpt37x: Two important bug fixes The HPT37x driver very carefully handles DMA completions and the needed fixups are done on pci registers 0x50 and 0x52. This is unfortunate because the actual registers are 0x50 and 0x54. Fixing this offset cures the second channel problems reported. Secondly there are some problems with the HPT370 and certain ATA drives. The filter code however only filters ATAPI devices due to a reversed type check. Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 516e72cb47ae4457f368aff449ffc284c5f357c1 Author: Alexey Dobriyan Date: Fri Jan 5 16:37:00 2007 -0800 [PATCH] pata_optidma: typo in Kconfig Signed-off-by: Alexey Dobriyan Acked-by: Alan Cox Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 022a93080c269e913793bea3a9a7fed06ca7d29b Author: Dor Laor Date: Fri Jan 5 16:37:00 2007 -0800 [PATCH] KVM: Simplify test for interrupt window No need to test for rflags.if as both VT and SVM specs assure us that on exit caused from interrupt window opening, 'if' is set. Signed-off-by: Dor Laor Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68a99f6d37aa65e848e09ec6ea52848e93bd5de2 Author: Ingo Molnar Date: Fri Jan 5 16:36:59 2007 -0800 [PATCH] KVM: Simplify mmu_alloc_roots() Small optimization/cleanup: page == page_header(page->page_hpa) Signed-off-by: Ingo Molnar Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d21225ee2b6fa9f7669526927f2e0bedebd90940 Author: Ingo Molnar Date: Fri Jan 5 16:36:59 2007 -0800 [PATCH] KVM: Make loading cr3 more robust Prevent the guest's loading of a corrupt cr3 (pointing at no guest phsyical page) from crashing the host. Signed-off-by: Ingo Molnar Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 760db773fbd0ad2ece89393218c4a4213b5bae6a Author: Avi Kivity Date: Fri Jan 5 16:36:59 2007 -0800 [PATCH] KVM: MMU: Add missing dirty bit If we emulate a write, we fail to set the dirty bit on the guest pte, leading the guest to believe the page is clean, and thus lose data. Bad. Fix by setting the guest pte dirty bit under such conditions. Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4db9c47c052b89d89f43d12879690c1b3283b887 Author: Avi Kivity Date: Fri Jan 5 16:36:58 2007 -0800 [PATCH] KVM: Don't set guest cr3 from vmx_vcpu_setup() It overwrites the right cr3 set from mmu setup. Happens only with the test harness. Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc1d8955cbfb9f32f432cc5033f6ef291e6f7f1e Author: Avi Kivity Date: Fri Jan 5 16:36:58 2007 -0800 [PATCH] KVM: Add missing 'break' Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f7417d67ea6c1538469e3ea005484e807642c0a Author: Ingo Molnar Date: Fri Jan 5 16:36:57 2007 -0800 [PATCH] KVM: Avoid oom on cr3 switch Signed-off-by: Ingo Molnar Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86a2b42e81b8236d9454f5c2d7113a82ed25c735 Author: Avi Kivity Date: Fri Jan 5 16:36:57 2007 -0800 [PATCH] KVM: Initialize vcpu->kvm a little earlier Fixes oops on early close of /dev/kvm. Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e52de1b8cf85aa2ccaaa253b4397c6d6cc0d4897 Author: Avi Kivity Date: Fri Jan 5 16:36:56 2007 -0800 [PATCH] KVM: Improve reporting of vmwrite errors This will allow us to see the root cause when a vmwrite error happens. Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37a7d8b046da6254718be1409140cd7bf3126f8f Author: Avi Kivity Date: Fri Jan 5 16:36:56 2007 -0800 [PATCH] KVM: MMU: add audit code to check mappings, etc are correct Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ede74e0af549d75d4ea870bed8b178983816745 Author: Avi Kivity Date: Fri Jan 5 16:36:55 2007 -0800 [PATCH] KVM: MMU: Destroy mmu while we still have a vcpu left mmu_destroy flushes the guest tlb (indirectly), which needs a valid vcpu. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40907d5768ab8cadd4cad97bef350820ded20338 Author: Avi Kivity Date: Fri Jan 5 16:36:55 2007 -0800 [PATCH] KVM: MMU: Flush guest tlb when reducing permissions on a pte If we reduce permissions on a pte, we must flush the cached copy of the pte from the guest's tlb. This is implemented at the moment by flushing the entire guest tlb, and can be improved by flushing just the relevant virtual address, if it is known. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2dec939db126989808853d218e426daaeebc9e2 Author: Avi Kivity Date: Fri Jan 5 16:36:54 2007 -0800 [PATCH] KVM: MMU: Detect oom conditions and propagate error to userspace Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 714b93da1a6d97307dfafb9915517879d8a66c0d Author: Avi Kivity Date: Fri Jan 5 16:36:53 2007 -0800 [PATCH] KVM: MMU: Replace atomic allocations by preallocated objects The mmu sometimes needs memory for reverse mapping and parent pte chains. however, we can't allocate from within the mmu because of the atomic context. So, move the allocations to a central place that can be executed before the main mmu machinery, where we can bail out on failure before any damage is done. (error handling is deffered for now, but the basic structure is there) Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f51234c2cd3ab8bed836e09686e27877e1b55f2a Author: Avi Kivity Date: Fri Jan 5 16:36:52 2007 -0800 [PATCH] KVM: MMU: Free pages on kvm destruction Because mmu pages have attached rmap and parent pte chain structures, we need to zap them before freeing so the attached structures are freed. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 143646567f6dcd584e1ab359b5ec83e0545e70cf Author: Avi Kivity Date: Fri Jan 5 16:36:52 2007 -0800 [PATCH] KVM: MMU: Treat user-mode faults as a hint that a page is no longer a page table Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32b35627355c3bf17e1903efd117efed7653a54e Author: Avi Kivity Date: Fri Jan 5 16:36:51 2007 -0800 [PATCH] KVM: MMU: Fix cmpxchg8b emulation cmpxchg8b uses edx:eax as the compare operand, not edi:eax. cmpxchg8b is used by 32-bit pae guests to set page table entries atomically, and this is emulated touching shadowed guest page tables. Also, implement it for 32-bit hosts. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3bb65a22a4502067f8cd3cb4c923ffa70be62091 Author: Avi Kivity Date: Fri Jan 5 16:36:51 2007 -0800 [PATCH] KVM: MMU: Never free a shadow page actively serving as a root We always need cr3 to point to something valid, so if we detect that we're freeing a root page, simply push it back to the top of the active list. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86a5ba025d0a0b251817d0efbeaf7037d4175d21 Author: Avi Kivity Date: Fri Jan 5 16:36:50 2007 -0800 [PATCH] KVM: MMU: Page table write flood protection In fork() (or when we protect a page that is no longer a page table), we can experience floods of writes to a page, which have to be emulated. This is expensive. So, if we detect such a flood, zap the page so subsequent writes can proceed natively. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 139bdb2d9e410d448281057a37b53770324ccac8 Author: Avi Kivity Date: Fri Jan 5 16:36:50 2007 -0800 [PATCH] KVM: MMU: If an empty shadow page is not empty, report more info Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f1e0b6abcc100a79528387207adc3dd92aa5374 Author: Avi Kivity Date: Fri Jan 5 16:36:49 2007 -0800 [PATCH] KVM: MMU: Ensure freed shadow pages are clean Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 260746c03dcb2e5089f95b60cb786aaf405ced63 Author: Avi Kivity Date: Fri Jan 5 16:36:49 2007 -0800 [PATCH] KVM: MMU: Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e7bc4b9610ed9fde0fa14f0b7a7f939805e5ae9 Author: Avi Kivity Date: Fri Jan 5 16:36:48 2007 -0800 [PATCH] KVM: MMU: Handle misaligned accesses to write protected guest page tables A misaligned access affects two shadow ptes instead of just one. Since a misaligned access is unlikely to occur on a real page table, just zap the page out of existence, avoiding further trouble. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73f7198e738004671b885c443eb6f88df021c07f Author: Avi Kivity Date: Fri Jan 5 16:36:48 2007 -0800 [PATCH] KVM: MMU: Remove release_pt_page_64() Unused. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f015a5b28c75bb6cc5158640db58689b1ee1b51 Author: Avi Kivity Date: Fri Jan 5 16:36:47 2007 -0800 [PATCH] KVM: MMU: Remove invlpg interception Since we write protect shadowed guest page tables, there is no need to trap page invalidations (the guest will always change the mapping before issuing the invlpg instruction). Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ebeace8609205bf5e1b96fe325b7dea148042232 Author: Avi Kivity Date: Fri Jan 5 16:36:47 2007 -0800 [PATCH] KVM: MMU: oom handling When beginning to process a page fault, make sure we have enough shadow pages available to service the fault. If not, free some pages. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc4529efc7b730b596d9c7d5a917c00a357e92aa Author: Avi Kivity Date: Fri Jan 5 16:36:47 2007 -0800 [PATCH] KVM: MMU: kvm_mmu_put_page() only removes one link to the page ... and so must not free it unconditionally. Move the freeing to kvm_mmu_zap_page(). Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 697fe2e24ac49f03a82f6cfe5d77f7a2122ff382 Author: Avi Kivity Date: Fri Jan 5 16:36:46 2007 -0800 [PATCH] KVM: MMU: Implement child shadow unlinking When removing a page table, we must maintain the parent_pte field all child shadow page tables. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a436036baf331703b4d2c8e8a45f02c597bf6913 Author: Avi Kivity Date: Fri Jan 5 16:36:45 2007 -0800 [PATCH] KVM: MMU: If emulating an instruction fails, try unprotecting the page A page table may have been recycled into a regular page, and so any instruction can be executed on it. Unprotect the page and let the cpu do its thing. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b7a032567ee1128daeebebfc14d3acedfe28c8c Author: Avi Kivity Date: Fri Jan 5 16:36:45 2007 -0800 [PATCH] KVM: MMU: Zap shadow page table entries on writes to guest page tables Iterate over all shadow pages which correspond to a the given guest page table and remove the mappings. A subsequent page fault will reestablish the new mapping. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da4a00f002239f72b0d7d0eeaa3b60100e2b1438 Author: Avi Kivity Date: Fri Jan 5 16:36:44 2007 -0800 [PATCH] KVM: MMU: Support emulated writes into RAM As the mmu write protects guest page table, we emulate those writes. Since they are not mmio, there is no need to go to userspace to perform them. So, perform the writes in the kernel if possible, and notify the mmu about them so it can take the approriate action. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 815af8d42ee3f844c0ceaf2104bd9c6a0bb1e26c Author: Avi Kivity Date: Fri Jan 5 16:36:44 2007 -0800 [PATCH] KVM: MMU: Let the walker extract the target page gfn from the pte This fixes a problem where set_pte_common() looked for shadowed pages based on the page directory gfn (a huge page) instead of the actual gfn being mapped. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 374cbac0333ddf5cf1c6637efaf7f3adcc67fd75 Author: Avi Kivity Date: Fri Jan 5 16:36:43 2007 -0800 [PATCH] KVM: MMU: Write protect guest pages when a shadow is created for them When we cache a guest page table into a shadow page table, we need to prevent further access to that page by the guest, as that would render the cache incoherent. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cea0f0e7ea54753c3265dc77f605a6dad1912cfc Author: Avi Kivity Date: Fri Jan 5 16:36:43 2007 -0800 [PATCH] KVM: MMU: Shadow page table caching Define a hashtable for caching shadow page tables. Look up the cache on context switch (cr3 change) or during page faults. The key to the cache is a combination of - the guest page table frame number - the number of paging levels in the guest * we can cache real mode, 32-bit mode, pae, and long mode page tables simultaneously. this is useful for smp bootup. - the guest page table table * some kernels use a page as both a page table and a page directory. this allows multiple shadow pages to exist for that page, one per level - the "quadrant" * 32-bit mode page tables span 4MB, whereas a shadow page table spans 2MB. similarly, a 32-bit page directory spans 4GB, while a shadow page directory spans 1GB. the quadrant allows caching up to 4 shadow page tables for one guest page in one level. - a "metaphysical" bit * for real mode, and for pse pages, there is no guest page table, so set the bit to avoid write protecting the page. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25c0de2cc6c26cb99553c2444936a7951c120c09 Author: Avi Kivity Date: Fri Jan 5 16:36:42 2007 -0800 [PATCH] KVM: MMU: Make kvm_mmu_alloc_page() return a kvm_mmu_page pointer This allows further manipulation on the shadow page table. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aef3d3fe1314f2a130f5ccc7114df20865ba784f Author: Avi Kivity Date: Fri Jan 5 16:36:41 2007 -0800 [PATCH] KVM: MMU: Make the shadow page tables also special-case pae Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b0973bd8f788178f21d9eebdd879203464f8528 Author: Avi Kivity Date: Fri Jan 5 16:36:41 2007 -0800 [PATCH] KVM: MMU: Use the guest pdptrs instead of mapping cr3 in pae mode This lets us not write protect a partial page, and is anyway what a real processor does. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17ac10ad2bb7d8c4f401668484b2e661a15726c6 Author: Avi Kivity Date: Fri Jan 5 16:36:40 2007 -0800 [PATCH] KVM: MU: Special treatment for shadow pae root pages Since we're not going to cache the pae-mode shadow root pages, allocate a single pae shadow that will hold the four lower-level pages, which will act as roots. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac79c978f173586ab3624427c89cd22b393cabd4 Author: Avi Kivity Date: Fri Jan 5 16:36:40 2007 -0800 [PATCH] KVM: MMU: Fold fetch_guest() into init_walker() It is never necessary to fetch a guest entry from an intermediate page table level (except for large pages), so avoid some confusion by always descending into the lowest possible level. Rename init_walker() to walk_addr() as it is no longer restricted to initialization. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1342d3536d6a12541ceb276da15f043db90716eb Author: Avi Kivity Date: Fri Jan 5 16:36:39 2007 -0800 [PATCH] KVM: MMU: Load the pae pdptrs on cr3 change like the processor does In pae mode, a load of cr3 loads the four third-level page table entries in addition to cr3 itself. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6bcbd6aba00fced696fc99f1a4fcd7ac7d42d6ef Author: Avi Kivity Date: Fri Jan 5 16:36:39 2007 -0800 [PATCH] KVM: MMU: Teach the page table walker to track guest page table gfns Saving the table gfns removes the need to walk the guest and host page tables in lockstep. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd4a4e5374110444dc38831af517e51ff5a053c3 Author: Avi Kivity Date: Fri Jan 5 16:36:38 2007 -0800 [PATCH] KVM: MMU: Implement simple reverse mapping Keep in each host page frame's page->private a pointer to the shadow pte which maps it. If there are multiple shadow ptes mapping the page, set bit 0 of page->private, and use the rest as a pointer to a linked list of all such mappings. Reverse mappings are needed because we when we cache shadow page tables, we must protect the guest page tables from being modified by the guest, as that would invalidate the cached ptes. Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 399badf315bd4dd571b4b3b7cf666d9a2af40229 Author: Avi Kivity Date: Fri Jan 5 16:36:38 2007 -0800 [PATCH] KVM: Prevent stale bits in cr0 and cr4 Hardware virtualization implementations allow the guests to freely change some of the bits in cr0 and cr4, but trap when changing the other bits. This is useful to avoid excessive exits due to changing, for example, the ts flag. It also means the kvm's copy of cr0 and cr4 may be stale with respect to these bits. most of the time this doesn't matter as these bits are not very interesting. Other times, however (for example when returning cr0 to userspace), they are, so get the fresh contents of these bits from the guest by means of a new arch operation. Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb26b572dc39467ba0969d1a76c2f723d2d6a2a6 Author: David Brownell Date: Fri Jan 5 16:36:37 2007 -0800 [PATCH] Update the rtc-rs5c372 driver Bugfixes: - Handle RTCs which are configured to use 12-hour mode. - Never report bogus/un-initialized times. - Displaying "raw trim" requires not masking it first! - Fix the sysfs and procfs display of crystal and trim data. Features: - Handle other RTCs in this family, notably rv5c386/rv5c387. - Declare the other registers. - Provide alarm get/set functionality. - Handle AIE and UIE; but no IRQ handling yet. Cleanup: - Shrink object by not including needless sysfs or procfs support - We don't need no steenkin' forward declarations. (Except one.) Until the I2C framework merges "new style" driver support, matching the driver model better, using rv5c chips or alarm IRQs requires a separate board-specific patch. (And an IRQ handler, handing off labor through a work_struct...) This uses the "method 3" register reads, but notes that it's done to work around an evident i2c adapter driver bug. Signed-off-by: David Brownell Acked-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6a60451813bad6a9f57cb159004c3b3e12a1cd3 Author: Hugh Dickins Date: Fri Jan 5 16:36:36 2007 -0800 [PATCH] fix BUG_ON(!PageSlab) from fallback_alloc pdflush hit the BUG_ON(!PageSlab(page)) in kmem_freepages called from fallback_alloc: cache_grow already freed those pages when alloc_slabmgmt failed. But it wouldn't have freed them if __GFP_NO_GROW, so make sure fallback_alloc doesn't waste its time on that case. Signed-off-by: Hugh Dickins Acked-by: Christoph Lameter Acked-by: Pekka J Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be6aab0e9fa6d3c6d75aa1e38ac972d8b4ee82b8 Author: Eric Sandeen Date: Fri Jan 5 16:36:36 2007 -0800 [PATCH] fix memory corruption from misinterpreted bad_inode_ops return values CVE-2006-5753 is for a case where an inode can be marked bad, switching the ops to bad_inode_ops, which are all connected as: static int return_EIO(void) { return -EIO; } #define EIO_ERROR ((void *) (return_EIO)) static struct inode_operations bad_inode_ops = { .create = bad_inode_create ...etc... The problem here is that the void cast causes return types to not be promoted, and for ops such as listxattr which expect more than 32 bits of return value, the 32-bit -EIO is interpreted as a large positive 64-bit number, i.e. 0x00000000fffffffa instead of 0xfffffffa. This goes particularly badly when the return value is taken as a number of bytes to copy into, say, a user's buffer for example... I originally had coded up the fix by creating a return_EIO_ macro for each return type, like this: static int return_EIO_int(void) { return -EIO; } #define EIO_ERROR_INT ((void *) (return_EIO_int)) static struct inode_operations bad_inode_ops = { .create = EIO_ERROR_INT, ...etc... but Al felt that it was probably better to create an EIO-returner for each actual op signature. Since so few ops share a signature, I just went ahead & created an EIO function for each individual file & inode op that returns a value. Signed-off-by: Eric Sandeen Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2723f9603a8f8bb2cd8c7b581f7c94b8d75e3837 Author: Andrew Morton Date: Fri Jan 5 16:36:35 2007 -0800 [PATCH] ip2 warning fix Make this: drivers/char/ip2/ip2main.c: In function 'ip2_loadmain': drivers/char/ip2/ip2main.c:654: warning: control may reach end of non-void function 'iiSetAddress' being inlined drivers/char/ip2/ip2main.c:808: warning: control may reach end of non-void function 'iiInitialize' being inlined go away. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3771a450cf47fa64f36c53ba61e36aa2ec84a86b Author: Vivek Goyal Date: Fri Jan 5 16:36:34 2007 -0800 [PATCH] i386: modpost smpboot code warning fix o Currently synchronize_tsc_ap() is of type __init. It is called by smp_callin() which is of type __cpuinit. So synchronize_tsc_ap() should be of type __cpuinit. o Modpost generates warnings for i386 if CONFIG_RELOCATABLE=y and CONFIG_HOTPLUG_CPU=y WARNING: vmlinux - Section mismatch: reference to .init.data: from .text between 'start_secondary' (at offset 0xc01164dc) and 'initialize_secondary' WARNING: vmlinux - Section mismatch: reference to .init.data: from .text between 'start_secondary' (at offset 0xc01164e8) and 'initialize_secondary' o tsc is of type __initdata. It should be of type __cpuinitdata. Signed-off-by: Vivek Goyal Cc: Andi Kleen Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9dbeeec91e8f4a200ac56af5004473fa6099520f Author: Vivek Goyal Date: Fri Jan 5 16:36:34 2007 -0800 [PATCH] i386: fix another modpost warning o MODPOST generates warning for i386 if kernel is compiled with CONFIG_RELOCATABLE=y WARNING: vmlinux - Section mismatch: reference to .init.data: from .data between 'this_cpu' (at offset 0xc05194d0) and 'cpuinfo_op' o this_cpu pointer should be of type __cpuinitdata. Signed-off-by: Vivek Goyal Cc: Andi Kleen Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1119a33a962077570ab0c2ef4712c0e48acfc577 Author: Vivek Goyal Date: Fri Jan 5 16:36:33 2007 -0800 [PATCH] i386: fix modpost warning in SMP trampoline code o MODPOST generates warning for i386 if kernel is compiled with CONFIG_RELOCATABLE=y WARNING: vmlinux - Section mismatch: reference to .init.text:startup_32_smp from .data between 'trampoline_data' (at offset 0xc0519cf8) and 'boot_gdt' o trampoline code/data can go into init section is CPU hotplug is not enabled. Signed-off-by: Vivek Goyal Cc: Andi Kleen Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ab37b8f21b4dfe256d736c13738d20c88a1f3ad Author: Paul Mundt Date: Fri Jan 5 16:36:30 2007 -0800 [PATCH] Sanely size hash tables when using large base pages At the moment the inode/dentry cache hash tables (common by way of alloc_large_system_hash()) are incorrectly sized by their respective detection logic when we attempt to use large base pages on systems with little memory. This results in odd behaviour when using a 64kB PAGE_SIZE, such as: Dentry cache hash table entries: 8192 (order: -1, 32768 bytes) Inode-cache hash table entries: 4096 (order: -2, 16384 bytes) The mount cache hash table is seemingly the only one that gets this right by directly taking PAGE_SIZE in to account. The following patch attempts to catch the bogus values and round it up to at least 0-order. Signed-off-by: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd0ec16fa6cf2498b831663a543e1b67fce6e155 Author: Vivek Goyal Date: Fri Jan 5 16:36:30 2007 -0800 [PATCH] i386: Restore CONFIG_PHYSICAL_START option o Relocatable bzImage support had got rid of CONFIG_PHYSICAL_START option thinking that now this option is not required as people can build a second kernel as relocatable and load it anywhere. So need of compiling the kernel for a custom address was gone. But Magnus uses vmlinux images for second kernel in Xen environment and he wants to continue to use it. o Restoring the CONFIG_PHYSICAL_START option for the time being. I think down the line we can get rid of it. Signed-off-by: Vivek Goyal Cc: "Eric W. Biederman" Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a75acf850ca80136a4f845cf9a7cd26e7465c1f4 Author: Ingo Molnar Date: Fri Jan 5 16:36:29 2007 -0800 [PATCH] profiling: fix sched profiling typo Fix sched profiling typo, introduced by the sleep profiling patch. This bug caused profile=sched to not work. Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bf236874292fd073c6bdd27f89c3d9e81a79cbc Author: Rafael J. Wysocki Date: Fri Jan 5 16:36:28 2007 -0800 [PATCH] swsusp: Do not fail if resume device is not set In the kernels later than 2.6.19 there is a regression that makes swsusp fail if the resume device is not explicitly specified. It can be fixed by adding an additional parameter to mm/swapfile.c:swap_type_of() allowing us to pass the (struct block_device *) corresponding to the first available swap back to the caller. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3223ea8cca5936b8e78450dd5b8ba88372e9c0a8 Author: James Bursa Date: Fri Jan 5 16:36:28 2007 -0800 [PATCH] adfs: fix filename handling Fix filenames on adfs discs being terminated at the first character greater than 128 (adfs filenames are Latin 1). I saw this problem when using a loopback adfs image on a 2.6.17-rc5 x86_64 machine, and the patch fixed it there. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c5f8cc33eb2e10b6ab788bbe259fc142a068627 Author: Alan Date: Fri Jan 5 16:36:27 2007 -0800 [PATCH] atiixp: Old drivers/ide layer driver for the ATIIXP hang fix When the old IDE layer calls into methods in the driver during error handling it is essentially random whether ide_lock is already held. This causes a deadlock in the atiixp driver which also uses ide_lock internally for locking. Switch to a private lock instead. [akpm@osl.org: cleanup] Signed-off-by: Alan Cox Acked-by: Bartlomiej Zolnierkiewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 406c9b605cbc45151c03ac9a3f95e9acf050808c Author: Christoph Hellwig Date: Fri Jan 5 16:36:26 2007 -0800 [PATCH] Fix BUG at drivers/scsi/scsi_lib.c:1118 caused by "pktsetup dvd /dev/sr0" Fix http://bugzilla.kernel.org/show_bug.cgi?id=7667 This is because the packet driver tries to send down read/write BLOCK_PC commands that don't use a bio and do not use sg lists. The right fix is to replace all the packet_command stuff in the packet driver by scsi_execute() which needs to be lifted from scsi code to the block code for that. Fix the bug for now. It's not the full way to a generic execute block pc infrastcuture but fixes the bug for the time being. Signed-off-by: Christoph Hellwig Acked-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d73e3cd73c058ce792ad276f979680aa331f4f8e Author: David Brownell Date: Fri Jan 5 16:36:25 2007 -0800 [PATCH] rtc-at91rm9200 build fix The at91rm9200 RTC driver needs some assistance to build, because of recent header file rearrangement. Signed-off-by: David Brownell Cc: Alessandro Zummo Cc: Andrew Victor Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1150d8cf9e9d2b356fab52d79f2366985e5511b Author: Dor Laor Date: Fri Jan 5 16:36:24 2007 -0800 [PATCH] KVM: Improve interrupt response The current interrupt injection mechanism might delay an interrupt under the following circumstances: - if injection fails because the guest is not interruptible (rflags.IF clear, or after a 'mov ss' or 'sti' instruction). Userspace can check rflags, but the other cases or not testable under the current API. - if injection fails because of a fault during delivery. This probably never happens under normal guests. - if injection fails due to a physical interrupt causing a vmexit so that it can be handled by the host. In all cases the guest proceeds without processing the interrupt, reducing the interactive feel and interrupt throughput of the guest. This patch fixes the situation by allowing userspace to request an exit when the 'interrupt window' opens, so that it can re-inject the interrupt at the right time. Guest interactivity is very visibly improved. Signed-off-by: Dor Laor Signed-off-by: Avi Kivity Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e097f35ce58eb8d687f3a300247cf1a978fcea39 Author: Yoshimi Ichiyanagi Date: Fri Jan 5 16:36:24 2007 -0800 [PATCH] KVM: Recover after an arch module load failure If we load the wrong arch module, it leaves behind kvm_arch_ops set, which prevents loading of the correct arch module later. Fix be not setting kvm_arch_ops until we're sure it's good. Signed-off-by: Yoshimi Ichiyanagi Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d3b2c33860d4acdfe3ac29b40b03e655eb8d1e2c Author: Ingo Molnar Date: Fri Jan 5 16:36:23 2007 -0800 [PATCH] KVM: Use raw_smp_processor_id() instead of smp_processor_id() where applicable Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 965b58a550b6f84815cb555e6abb953e863f1610 Author: Ingo Molnar Date: Fri Jan 5 16:36:23 2007 -0800 [PATCH] KVM: Fix GFP_KERNEL alloc in atomic section bug KVM does kmalloc() in an atomic section while having preemption disabled via vcpu_load(). Fix this by moving the ->*_msr setup from the vcpu_setup method to the vcpu_create method. (This is also a small speedup for setting up a vcpu, which can in theory be more frequent than the vcpu_create method). Signed-off-by: Ingo Molnar Signed-off-by: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd36beec0b83d28dceb85696a23542bf1b97cc8c Author: Bartlomiej Zolnierkiewicz Date: Fri Jan 5 16:36:21 2007 -0800 [PATCH] via82cxxx: fix cable detection This patch fixes 2.6.15 regression, is straightforward and tested. Cable detection got broken probably while converting the driver to support multiple controllers. Cable detection is done by examining how BIOS configured the attached devices. The current code is broken in that it examines the status *after* modifying Clk66 configuration ending up detecting 40c cables as 80c. This patch fixes it. Signed-off-by: Tejun Heo Signed-off-by: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ae4adf50380d0fc5176a76d98d324f8fa491a8f Author: Ard van Breemen Date: Fri Jan 5 16:36:21 2007 -0800 [PATCH] PCI: prevent down_read when pci_devices is empty The pci_find_subsys gets called very early by obsolete ide setup parameters. This is a bogus call since pci is not initialized yet, so the list is empty. But in the mean time, interrupts get enabled by down_read. This can result in a kernel panic when the irq controller gets initialized. This patch checks if the device list is empty before taking the semaphore, and hence will not enable irq's. Furthermore it will inform that it is called while pci_devices is empty as a reminder that the ide code needs to be fixed. The pci_get_subsys can get called in the same manner, and as such is patched in the same manner. [akpm@osdl.org: cleanups] Signed-off-by: Ard van Breemen Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a416aba637dcb4127595c02a59041cd278422f7e Author: Ard van Breemen Date: Fri Jan 5 16:36:20 2007 -0800 [PATCH] kernelparams: detect if and which parameter parsing enabled irq's The parsing of some kernel parameters seem to enable irq's at a stage that irq's are not supposed to be enabled (Particularly the ide kernel parameters). Having irq's enabled before the irq controller is initialized might lead to a kernel panic. This patch only detects this behaviour and warns about wich parameter caused it. [akpm@osdl.org: cleanups] Signed-off-by: Ard van Breemen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c4a68306b9c0939b3facdad2cc5e34d660ff463a Author: Ard van Breemen Date: Fri Jan 5 16:36:19 2007 -0800 [PATCH] start_kernel: test if irq's got enabled early, barf, and disable them again The calls made by parse_parms to other initialization code might enable interrupts again way too early. Having interrupts on this early can make systems PANIC when they initialize the IRQ controllers (which happens later in the code). This patch detects that irq's are enabled again, barfs about it and disables them again as a safety net. [akpm@osdl.org: cleanups] Signed-off-by: Ard van Breemen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34f1ca540679f61a02b7406f036d9edde9717ee2 Author: Richard Purdie Date: Fri Jan 5 16:36:18 2007 -0800 [PATCH] Fix leds-s3c24xx hardware.h reference Russell King recently reminded us that one shouldn't use asm/arch/hardware.h but one should use asm/hardware.h (http://lkml.org/lkml/2006/12/23/26). Unfortunately, the leds-s3c24xx driver is using the wrong header. This patch is fixing that. Signed-off-by: Arnaud Patard Signed-off-by: Richard Purdie Acked-by: Ben Dooks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6002f544c9f724a9e35cbd5799742fd98e3d6046 Author: Dave Jones Date: Fri Jan 5 16:36:18 2007 -0800 [PATCH] Fix implicit declarations in via-pmu drivers/macintosh/via-pmu.c: In function 'pmac_suspend_devices': drivers/macintosh/via-pmu.c:2014: error: implicit declaration of function 'pm_prepare_console' drivers/macintosh/via-pmu.c: In function 'pmac_wakeup_devices': drivers/macintosh/via-pmu.c:2139: error: implicit declaration of function 'pm_restore_console' Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd2c565999e015004622425020a61593deb87a04 Author: Adam Megacz Date: Fri Jan 5 16:36:17 2007 -0800 [PATCH] Add AFS_SUPER_MAGIC to magic.h Jeffrey Altman, one of the gatekeepers of OpenAFS (the open source project which inherited the Transarc/IBM AFS codebase) has requested that the magic number 0x5346414F (little endian 'OAFS') be allocated for the f_type field of the fsinfo structure on Linux: https://lists.openafs.org/pipermail/openafs-info/2006-December/024829.html Add it to include/linux/magic.h, mostly as a way of publishing this number and ensuring that no other filesystem accidentally uses it. Cc: Jeffrey Altman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f422e2e84307bdd9b51c19a602e1601d160aebc Author: Kay Sievers Date: Wed Dec 20 10:39:33 2006 +0100 [PATCH] Driver core: Fix prefix driver links in /sys/module by bus-name Modules may have drivers with the same name on different buses. This patch fixes this problem. Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit fd8d4b11354a8a33ef61b06fa64880c2c6d25ae4 Author: Andrew Morton Date: Thu Dec 14 16:40:00 2006 -0800 [PATCH] PCI: disable PCI_MULTITHREAD_PROBE Unfortunatly, no one reads Kconfig help entries :( Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 14e51f28ade783cd948cd10202a696ff7e5d33d6 Author: David Hollis Date: Thu Dec 28 14:09:11 2006 -0500 USB: asix: Fix AX88772 device PHY selection A small typo in ax88772_bind() prevents the device from selecting the proper PHY, leaving the device useless. The attached patch fixes this. If this patch can be added to the 2.6.19.x series as well, that would be helpful for end-users. Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman commit 4f45d0387b407348de48c212ac5b3496ce6d2fda Author: Martin Williges Date: Thu Dec 28 20:52:10 2006 +0100 USB: usblp.c - add Kyocera Mita FS 820 to list of "quirky" printers This patch gets the Kyocera FS-820 working with cups 1.2 via usb again. It adds the printer to the list of "quirky" printers. The printer seems not answer to ID requests some seconds after plugging in. Patch is based on linux-2.6.19.1. Background: As far as I could see (strace, usbmon), the Kyocera FS-820 answers to ID requests only a few seconds after plugging it in. This applies to detecting it with cups and is also true for the printing itself, which is initiated with an ID request. Since I have little usb knowledge, maybe someone can interpret the data, especially the fist bulk transfer - why request 8192 bytes? This is the second version of the patch. usbmon output of printing an email without patch: tail -F /tmp/printlog.txt c636e140 3374734463 S Bi:002:02 -115 8192 < c9d43b40 3374734494 S Ci:002:00 s a1 00 0000 0000 03ff 1023 < c9d43b40 3379732301 C Ci:002:00 -104 0 c636e140 3379733294 C Bi:002:02 -2 0 [...repeating...] with patch: tail -F /tmp/printlog.txt d9cb82c0 3729790131 S Ci:002:00 s a1 00 0000 0000 03ff 1023 < d9cb82c0 3729791725 C Ci:002:00 0 91 = 005b4944 3a46532d 3832303b 4d46473a 4b796f63 6572613b 434d443a 50434c58 df956320 3732493190 S Bo:002:01 -115 1347 = 1b252d31 32333435 5840504a 4c0a4050 4a4c2053 4554204d 414e5541 4c464545 [...more data...] Signed-off-by: Martin Williges Signed-off-by: Greg Kroah-Hartman commit c067dfc650a2d7d26d4b9bdecc339596f8746cff Author: Andrew Morton Date: Wed Jan 3 16:45:21 2007 -0800 sisusb_con warning fixes x86_64: drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putc': drivers/usb/misc/sisusbvga/sisusb_con.c:405: warning: cast from pointer to integer of different size drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putcs': drivers/usb/misc/sisusbvga/sisusb_con.c:440: warning: cast from pointer to integer of different size drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_clear': drivers/usb/misc/sisusbvga/sisusb_con.c:494: warning: cast from pointer to integer of different size drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_bmove': drivers/usb/misc/sisusbvga/sisusb_con.c:566: warning: cast from pointer to integer of different size drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_switch': drivers/usb/misc/sisusbvga/sisusb_con.c:614: warning: cast from pointer to integer of different size drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_scroll_area': drivers/usb/misc/sisusbvga/sisusb_con.c:941: warning: cast from pointer to integer of different size Cc: Thomas Winischhofer Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit c07be136a883a148a16ce4cd91163035631b37ea Author: Sarah Bailey Date: Wed Jan 3 21:37:22 2007 -0800 USB: Fixed bug in endpoint release function. Error handling in usb_create_ep_files() is not correct unless the minor number is freed in ep_device_release(). Signed-off-by: Sarah Bailey Signed-off-by: Greg Kroah-Hartman commit 684a0e70008934dbdf87ed35e29ccbb58e91f8dc Author: Oliver Neukum Date: Wed Jan 3 15:14:43 2007 +0100 USB: small update to Documentation/usb/acm.txt this docu update mentions that cell phones also use cdc-acm. Signed-off-by: Oliver Neukum commit ad1428c96ebdee592aa475afe129530225bef186 Author: Pete Zaitcev Date: Sun Dec 31 13:43:26 2006 -0800 USB storage: fix ipod ejecting issue This patch from Pete fixes the 'ejecting problem' on yet another ipod. Please applyt. Signed-off-by: Pete Zaitcev Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit f1cd4ad202ce34d29c847fd82df948ff67c17826 Author: Phil Dibowitz Date: Sun Dec 31 00:19:50 2006 -0800 USB Storage: unusual_devs: add supertop drives This combines patches from Alan Stern and Robert Schedel for two "Super Top" drives that need the IGNORE_RESIDUE flag but have different vendor IDs. Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit e6a6e472f55e0c8398650446b64c40e4a373b0c5 Author: David Brownell Date: Sun Dec 10 11:47:04 2006 -0800 USB: omap_udc build fixes (sync with linux-omap) Resync the omap_udc driver with the latest from the Linux-OMAP tree. Changes include DMA API updates (it builds again!), clock/pm updates, minor bugfixes, whitespace. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 6a3c3d495201490ba51a8a26daf400d89c410e6e Author: Andrew Morton Date: Thu Dec 14 22:28:29 2006 -0800 USB: funsoft is borken on sparc drivers/usb/serial/funsoft.c: In function `funsoft_ioctl': drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name' Cc: David Clare Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8c1527132c25512563b197b35453c7da22b4d699 Author: Miguel Angel Alvarez Date: Thu Dec 14 19:49:35 2006 +0100 USB: fix interaction between different interfaces in an "Option" usb device Just the serial port in the first interface should control DTR and RTS lines. This way, the closing of the rest of the ports does not produce a= hangup in the communication. Signed-off-by: Miguel Angel Alvarez Signed-off-by: Matthias Urlichs Signed-off-by: Greg Kroah-Hartman commit 25c77b329467d563ec1fa5c3efab0b13996ce810 Author: Alan Stern Date: Fri Dec 15 16:08:13 2006 -0500 UHCI: support device_may_wakeup This patch (as831) adds device_may_wakeup() support to uhci-hcd; it has been lacking for a long time. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c80a70d53fa0ca47ad122cd75fe32b6f41c04eb1 Author: Alan Stern Date: Fri Dec 15 16:06:25 2006 -0500 UHCI: make test for ASUS motherboard more specific Instead of matching all motherboards whose name contains "A7V8X" for a remote-wakeup hardware bug, this patch (as829) matches only those boards whose name is exactly equal to "A7V8X". Later motherboards don't seem to have the bug. (In fact, it's possible that only one motherboard in the world has the bug. With only one user reporting problems, it's hard to tell.) Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 81ffbc04a8ea06c4bea534154f49ed598013ee6b Author: Philippe De Muyter Date: Fri Jan 5 17:54:05 2007 +0100 i2c/m41t00: Do not forget to write year m41t00.c forgets to set the year field in set_rtc_time; fix that. Signed-off-by: Philippe De Muyter Signed-off-by: Andrew Morton Acked-by: Mark A. Greer Signed-off-by: Jean Delvare commit 3269bb63eb076318ce4fb554851d047e1c9aa1a5 Author: Maxime Bizon Date: Fri Jan 5 17:54:05 2007 +0100 i2c-mv64xxx: Fix random oops at boot I have a Marvell board which has the same i2c hw block than mv64xxx, so I'm trying to use i2c-mv64xxx driver. But I get the following random oops at boot: Unable to handle kernel NULL pointer dereference at virtual address 00000002 Backtrace: [] (mv64xxx_i2c_intr+0x0/0x2b8) from [] (__do_irq+0x4c/0x8c) [] (__do_irq+0x0/0x8c) from [] (do_level_IRQ+0x68/0xc0) r8 = C0501E08 r7 = 00000005 r6 = C0501E08 r5 = 00000005 r4 = C048BB78 [] (do_level_IRQ+0x0/0xc0) from [] (asm_do_IRQ+0x50/0x134) r6 = C0449C78 r5 = F1020000 r4 = FFFFFFFF [] (asm_do_IRQ+0x0/0x134) from [] (__irq_svc+0x24/0x100) r8 = C1CAC400 r7 = 00000005 r6 = 00000002 r5 = F1020000 r4 = FFFFFFFF [] (setup_irq+0x0/0x124) from [] (request_irq+0xb0/0xd0) r7 = C041B2AC r6 = C0397E4C r5 = 00000000 r4 = 00000005 [] (request_irq+0x0/0xd0) from [] (mv64xxx_i2c_probe+0x148/0x244) [] (mv64xxx_i2c_probe+0x0/0x244) from [] (platform_drv_probe+0x20/0x24) The oops is caused by a spurious interrupt that occurs when request_irq is called. mv64xxx_i2c_fsm() tries to read drv_data->msg, which is NULL. I noticed that hardware init is done after requesting irq. Thus any pending irq from previous hardware usage may cause this. The following patch fixes it: Signed-off-by: Maxime Bizon Acked-by: Mark A. Greer Signed-off-by: Jean Delvare commit 30c4cf577fb5b68c16e5750d6bdbd7072e42b279 Author: David L Stevens Date: Thu Jan 4 12:31:14 2007 -0800 [IPV4/IPV6]: Fix inet{,6} device initialization order. It is important that we only assign dev->ip{,6}_ptr only after all portions of the inet{,6} are setup. Otherwise we can receive packets before the multicast spinlocks et al. are initialized. Signed-off-by: David L Stevens Signed-off-by: David S. Miller commit 0d630cc0a6cb8ad544b5913a26ff1349ed7c8587 Author: Gerrit Renker Date: Thu Jan 4 12:25:16 2007 -0800 [TCP]: Use old definition of before This reverts the new (unambiguous) definition of the TCP `before' relation. As pointed out in an example by Herbert Xu, there is existing code which implicitly requires the old definition in order to work correctly. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 44f9a2fdc48ccb8bb510b6e1210bf15b3e10afdb Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Thu Jan 4 12:17:44 2007 -0800 [NETFILTER]: ebtables: don't compute gap before checking struct type We cannot compute the gap until we know we have a 'struct ebt_entry' and not 'struct ebt_entries'. Failure to check can cause crash. Tested-by: Santiago Garcia Mantinan Acked-by: Al Viro Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andrew Morton Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit bbdc176a2f39913063aaaf95bc27e4b18fd14953 Author: Martin Josefsson Date: Thu Jan 4 12:16:54 2007 -0800 [NETFILTER]: nf_nat: fix MASQUERADE crash on device down Check the return value of nfct_nat() in device_cmp(), we might very well have non NAT conntrack entries as well (Netfilter bugzilla #528). Signed-off-by: Martin Josefsson Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c9386cfddc11e331fa7c860cccaedc2ae8f459f8 Author: Patrick McHardy Date: Thu Jan 4 12:16:06 2007 -0800 [NETFILTER]: New connection tracking is not EXPERIMENTAL anymore Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c68b8b687f9e3afff14b88327e17901fff0478ca Author: Patrick McHardy Date: Thu Jan 4 12:15:34 2007 -0800 [NETFILTER]: Fix routing of REJECT target generated packets in output chain Packets generated by the REJECT target in the output chain have a local destination address and a foreign source address. Make sure not to use the foreign source address for the output route lookup. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e5b5ef7d2b3fa364cb03407c432ae9979657aa6c Author: Dmitry Mishin Date: Thu Jan 4 12:14:41 2007 -0800 [NETFILTER]: compat offsets size change Used by compat code offsets of entries should be 'unsigned int' as entries array size has this dimension. Signed-off-by: Dmitry Mishin Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b119dc3f992183a04e508fc0a09f550eb19bf30e Author: David Brownell Date: Thu Jan 4 13:07:04 2007 +0100 i2c: Migration aids for i2c_adapter.dev removal Flag i2c_adapter.dev for removal after userspace tools get upgraded, and include a near-term code migration aid to facilitate this: - The class device gets the name attribute it should have had. This was previously (wrongly) associated with the i2c_adapter.dev node. Sysfs based tools and libraries can start converting right away. - Issue a warning for legacy adapter drivers that don't provide any physical device node; so systems with those drivers will know to fix this problem earlier. This is one of a series of patches to help the I2C stack become a better citizen of the Linux Driver Model world. Signed-off-by: David Brownell Signed-off-by: Jean Delvare commit 999445d4372812f361807b76411c158099e8e93e Author: Vitaly Wool Date: Thu Jan 4 13:07:03 2007 +0100 i2c-pnx: Add entry to MAINTAINERS Add me to MAINTAINERS for i2c-pnx. Signed-off-by: Vitaly Wool Signed-off-by: Jean Delvare commit 6c566fb7b3cda741dd6ed60c7d6aae0e17c9c8fe Author: Vitaly Wool Date: Thu Jan 4 13:07:03 2007 +0100 i2c-pnx: Fix interrupt handler, get rid of EARLY config option This fixes two issues raised by David Brownell on the i2c list: << Someone needs to update i2c-pnx.c to handle the IRQ handler doesn't expect pt_regs (gone now for a while), and so it doesn't try to reference "mudule_init()" if I2C isn't initialized "early". For that matter, to get rid of that _option_ to initialize then, and always init that driver with subsystem_init() ... it's common with embedded systems to need I2C access to tweak a GPIO expander or do some other work when bringing up drivers, that's not specific to USB stacks. >> Signed-off-by: Vitaly Wool Signed-off-by: Jean Delvare commit 69e4d94818cabf44d845b9f4b46d88de6e518dcf Author: Jiri Kosina Date: Wed Jan 3 23:03:14 2007 +0100 HID: fix help texts in Kconfig The help text for CONFIG_HID might imply for someone that it's necessary to enable it for any keyboard or mouse attached to the system. This is obviously not correct, so fix it to avoid confusing the users. Signed-off-by: Jiri Kosina commit c96c9d7b618806a0b9256503cec2755291d60cf6 Author: Russell King Date: Fri Dec 22 17:09:16 2006 +0000 Fix some ARM builds due to HID brokenness HID it defaults to 'y'. When you have input deselected, this causes the kernel to fail to link. Fix it by making it depend on INPUT. Signed-off-by: Russell King Signed-off-by: Jiri Kosina commit 63ea998a26d4e03d390fbe31818cc552994d16fd Author: Benjamin Herrenschmidt Date: Wed Jan 3 18:54:43 2007 -0800 [SUNGEM]: PHY updates & pause fixes (#2) This patch adds support for a few more PHYs used by Apple and fixes advertising and detecting of Pause (we were missing setting the bit in MII_ADVERTISE and weren't testing in LPA for all PHYs). Note that I currently only advertise pause, not asymetric pause. I don't know for sure the details there, I suppose I should read a bit more 802.3 references, and I don't now what sungem is capable of, but I noticed the PCS code (originated from you) does the same. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: David S. Miller commit f9af1d9deaaffe6803dec693748498886915d766 Author: David S. Miller Date: Wed Jan 3 18:51:54 2007 -0800 [SOUND] Sparc CS4231: Use 64 for period_bytes_min This matches what the ISA cs4231 driver uses. Tested by Georg Chini. Signed-off-by: David S. Miller commit 7f18ba6248625a587559ed1206d12ccaa3ad045e Author: Adrian Bunk Date: Wed Jan 3 18:48:13 2007 -0800 [X25]: proper prototype for x25_init_timers() This patch adds a proper prototype for x25_init_timers() in include/net/x25.h Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 5e7c001c6279f38b15fef5369496fe1043765727 Author: Mariusz Kozlowski Date: Tue Jan 2 15:24:30 2007 -0800 [AF_NETLINK]: module_put cleanup This patch removes redundant argument check for module_put(). Signed-off-by: Mariusz Kozlowski Signed-off-by: David S. Miller commit 22e700502380b80cc81a44e219282762429ebe71 Author: Christoph Hellwig Date: Tue Jan 2 15:22:30 2007 -0800 [XFRM_USER]: avoid pointless void ** casts All ->doit handlers want a struct rtattr **, so pass down the right type. Signed-off-by: Christoph Hellwig Signed-off-by: David S. Miller commit 9c2440bbe82892c8e3cd541632ac71bd765757a3 Author: Alexey Dobriyan Date: Tue Jan 2 00:42:00 2007 -0800 [NETFILTER] xt_hashlimit.c: fix typo Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 60903f2c6616939afd0335b49697beeb7219657e Author: Adrian Bunk Date: Tue Jan 2 00:35:48 2007 -0800 [NET] drivers/net/loopback.c: convert to module_init() This patch converts drivers/net/loopback.c to using module_init(). Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit ee74baa7d83e9e0c2fdaff8122ee9cefd06cddc5 Author: David S. Miller Date: Mon Jan 1 20:51:53 2007 -0800 [PKTGEN]: Convert to kthread API. Based upon a suggestion from Christoph Hellwig. This fixes various races in module load/unload handling too. Signed-off-by: David S. Miller commit 3136dcb3cd6e5b4ed4bd34d422f8cdeec4da6836 Author: dean gaudet Date: Mon Jan 1 19:39:09 2007 -0800 [NET]: ifb double-counts packets Signed-off-by: dean gaudet Signed-off-by: David S. Miller commit d35a1b9e10481c9f1d3b87e778a0f1f6a0a2dd48 Author: Georg Chini Date: Tue Jan 2 21:28:17 2007 -0800 [SOUND] Sparc CS4231: Fix IRQ return value and initialization. SBUS: Change IRQ-handler return value from 0 to IRQ_HANDLED and fix some initialisation problems. Change period_bytes_min from 4096 to 256 to allow driver to work with low latency (VOIP) applications. Hope this does not break EBUS. Signed-off-by: Georg Chini Signed-off-by: David S. Miller commit 9c5b0ce43d0e4e4799c6cdc77c5ed7a95b763035 Author: Jens Axboe Date: Wed Jan 3 18:15:20 2007 +0100 [PATCH] ide-cd maintainer Alan agreed to take over casual maintenance of the ide-cd atapi cdrom driver, so I'm happy to sign it over to him. Alan, I hope the address is the one you want to use. I also changed the list to linux-ide as that seems more appropriate. Signed-off-by: Jens Axboe Acked-by: Alan Cox Signed-off-by: Linus Torvalds commit 2e11c207b029cfaf57159cabac4b002204445258 Author: Jens Axboe Date: Wed Jan 3 08:10:35 2007 +0100 [PATCH] cdrom: set default timeout to 7 seconds It's a known fact that Windows times out commands after 7 seconds, so drives generally try and respond if they can before that happens. We default to 5 seconds, which sometimes is a bit too short. Jeremy Higdon reported here: http://lkml.org/lkml/2007/1/1/145 that his drive takes longer than 5 seconds for a "read track information" command, later confirming that it is about 6.7 seconds. So just do the sane thing and change the default command timeout to 7 seconds to avoid other surprises. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 7523c4dd9923cab748dad9b79d0165e118e3d03b Author: OGAWA Hirofumi Date: Thu Jan 4 01:21:28 2007 +0900 [PATCH] x86_64: Fix dump_trace() If caller passed the tsk, we should use it to validate a stack ptr. Otherwise, sysrq-t and other debugging stuff doesn't work. Signed-off-by: OGAWA Hirofumi Signed-off-by: Linus Torvalds commit 43c8f12f9f4a7cb4140693fc9baed35a02165898 Author: Dave Jones Date: Tue Jan 2 23:42:16 2007 -0500 [CPUFREQ] longhaul: Kill off warnings introduced by recent changes. Bunch of unused vars + one case where gcc isn't smart enough. Signed-off-by: Dave Jones commit 76ff28c941e73a0de0db12bd5009124e8dc010e7 Author: Guillaume Chazarain Date: Tue Jan 2 19:58:13 2007 +0100 [CPUFREQ] Uninitialized use of cmd.val in arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c:acpi_cpufreq_target() cmd.val was used uninitialized on the line below. Signed-off-by: Guillaume Chazarain Acked-by: Venkatesh Pallipadi Signed-off-by: Dave Jones commit 24ebead82bbf9785909d4cf205e2df5e9ff7da32 Author: Rafał Bilski Date: Mon Jan 1 23:49:34 2007 +0100 [CPUFREQ] Longhaul - Always guess FSB This is patch that solves Ebox mini PC issue and make FSB code more specification compilant. At start guess_fsb function is guessing 200MHz FSB too. It is better to make it in this way because, thanks to this function, driver will fail for bogus FSB values caused by bogus multiplier value. For PowerSaver processors we can't depend on Max / MinMHzFSB because these values are only used for PowerSaver 2.0 and 3.0. Most processors on which Longhaul is used are PowerSaver 1.0 only. I'm changing code for older CPU's too, but not so much as previously, and this code was already used for Ezra. Using MinMHzBR for Ezra-T is outside spec. It is for voltage scaling purpose and don't have to be equal to minmult (but it is). Same for Nehemiah (it isn't for sure). Added mult - current multiplier value. Signed-off-by: Rafał Bilski Signed-off-by: Dave Jones commit 7b37b064c294af350c462f77d7a9a44485a93684 Author: akpm@osdl.org Date: Tue Jan 2 14:44:31 2007 -0800 [AGPGART] drivers/char/agp/sgi-agp.c: check kmalloc() return value drivers/char/agp/sgi-agp.c: check kmalloc() return value Signed-off-by: Amit Choudhary Signed-off-by: Dave Jones Signed-off-by: Andrew Morton commit d02b161eda65528ad3e89d642e416c265c17ceb8 Author: Philipp Zabel Date: Tue Jan 2 21:06:57 2007 +0100 [ARM] 4081/1: Add definition for TI Sync Serial Protocol Of the possible SSP frame formats (FRF bits in SSCR0), only SSCR0_PSP is defined. Other possible formats are Motorola SPI (0<<4), TI SSP (1<<4) and Microwire (2<<4). Attached patch adds a definition SSCR0_TISSP. This mode is used for the sound codec attached to the PXA272 SSP1 of some HTC PDA phones. Signed-off-by: Philipp Zabel Signed-off-by: Russell King commit f566b2b22d89c4785f25e6e4d60163b5ae6251f4 Author: Philipp Zabel Date: Tue Jan 2 20:59:38 2007 +0100 [ARM] 4080/1: Fix for the SSCR0_SlotsPerFrm macro The SSCR0_SlotsPerFrm macro writes a 3-bit value to bits [2:0], while the correct location of FRDC in SSCR0 is at bits [26:24]. This patch adds the missing "<< 24". Signed-off-by: Philipp Zabel Signed-off-by: Russell King commit 8e140362f71ed801c69c5df63a68fc2cd07da3a9 Author: Russell King Date: Tue Jan 2 23:40:30 2007 +0000 [ARM] Fix VFP initialisation issue for SMP systems When we install the handlers for context switching, we must enable VFP on all CPU cores, otherwise undefined (and random) effects occur. Signed-off-by: Russell King commit c6b33cc4e9882b44f1b0c36396f420076e04a4e2 Author: Segher Boessenkool Date: Tue Jan 2 11:41:47 2007 +0530 [PATCH] Fix insta-reboot with "i386: Relocatable kernel support" Commit 968de4f02621db35b8ae5239c8cfc6664fb872d8 ("i386: Relocatable kernel support") caused problems for people with old binutils versions that didn't mark ".text.*" sections automatically allocated. So we should use .section command to specifically mark .text.head section as AX (allocatable and executable) to solve the problem. This should be unnecessary with binutils 2.15 and later, which is already three years old, but it doesn't hurt supporting older toolchains where possible. Signed-off-by: Vivek Goyal Acked-by: Jean Delvare Cc: Eric W. Biederman Cc: Andi Kleen Signed-off-by: Linus Torvalds commit 9883a13c72dbf8c518814b6091019643cdb34429 Author: Parag Warudkar Date: Tue Jan 2 21:09:31 2007 +0100 [PATCH] selinux: fix selinux_netlbl_inode_permission() locking do not call a sleeping lock API in an RCU read section. lock_sock_nested can sleep, its BH counterpart doesn't. selinux_netlbl_inode_permission() needs to use the BH counterpart unconditionally. Compile tested. From: Ingo Molnar added BH disabling, because this function can be called from non-atomic contexts too, so a naked bh_lock_sock() would be deadlock-prone. Boot-tested the resulting kernel. Signed-off-by: Parag Warudkar Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit ec8acb6904fabb8e741f741ec99bb1c18f2b3dee Author: Jens Axboe Date: Tue Jan 2 18:32:11 2007 +0100 [PATCH] cfq-iosched: merging problem Two issues: - The final return 1 should be a return 0, otherwise comparing cfqq is a noop. - bio_sync() only checks the sync flag, while rq_is_sync() checks both for READ and sync. The latter is what we want. Expand the bio check to include reads, and relax the restriction to allow merging of async io into sync requests. In the future we want to clean up the SYNC logic, right now it means both sync request (such as READ and O_DIRECT WRITE) and unplug-on-issue. Leave that for later. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit dc3c3377f03634d351fafdfe35b237b283586c04 Author: Alan Date: Tue Jan 2 11:58:34 2007 +0000 [PATCH] libata: fix combined mode This is a slight variant on the patch I posted December 16th to fix libata combined mode handling. The only real change is that we now correctly also reserve BAR1,2,4. That is basically a neatness issue. Jeff was unhappy about two things 1. That it didn't work in the case of one channel native one channel legacy. This is a silly complaint because the SFF layer in libata doesn't handle this case yet anyway. 2. The case where combined mode is in use and IDE=n. In this case the libata quirk code reserves the resources in question correctly already. Once the combined mode stuff is redone properly (2.6.21) then the entire mess turns into a single pci_request_regions() for all cases and all the ugly resource hackery goes away. I'm sending this now rather than after running full test suites so that it can get the maximal testing in a short time. I'll be running tests on this after lunch. Signed-off-by: Alan Cox Cc: Jeff Garzik Acked-by: Alessandro Suardi Acked-by: Theodore Tso Signed-off-by: Linus Torvalds commit 0b67d94659a72734584a40b5e113e9261f97ae8c Author: Len Brown Date: Fri Dec 22 21:18:56 2006 -0500 ACPI: asus_acpi: new MAINTAINER Signed-off-by: Len Brown commit e82c354bb26a9da6fed1fadf7082d68055b7d1db Author: Len Brown Date: Thu Dec 21 01:29:59 2006 -0500 ACPI: fix section mis-match build warning Dunno why this pops out in only in the allmodconfig build. Though the warning is accurate, all the callers of the flagged non __init function are __init, this is not a functional change. WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup' (at offset 0xc010f0a 6) and 'acpi_gsi_to_irq' WARNING: vmlinux - Section mismatch: reference to .init.text:mp_override_legacy_irq from .text between 'acpi_sci_ioapic_setup' (at offset 0 xc010f0de) and 'acpi_gsi_to_irq' WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_sci_override_gsi from .text between 'acpi_sci_ioapic_setup' (at offset 0x c010f0e4) and 'acpi_gsi_to_irq' Signed-off-by: Len Brown commit 9a654b522234615a76717f35365ca4a8beb757df Author: Doug Chapman Date: Thu Dec 21 12:11:43 2006 -0500 ACPI: increase ACPI_MAX_REFERENCE_COUNT for larger systems We have some new larger ia64 systems in HP that trip over the ACPI_MAX_REFERENCE_COUNT limit which triggers a large number of these debug messages: ACPI Warning (utdelete-0397): Large Reference Count (XXX) in object e0000a0ff6797ab0 [20060707] This was increased once in the past as described in this very brief thread: http://www.mail-archive.com/linux-acpi@vger.kernel.org/msg00890.html Signed-off-by: Doug Chapman Signed-off-by: Len Brown commit c6e19194b6e1a565f8fe18d56d509e9892c32ee1 Author: Guillaume Chazarain Date: Sun Dec 24 22:19:02 2006 +0100 ACPI: EC: move verbose printk to debug build only The recent EC cleanup left a printk enabled on handler evaluation resulting in a bunch of messages on normal operation, like so: ACPI: EC: evaluating _Q60 Signed-off-by: Len Brown commit 27c5d745ac685c3f48cebd7a9c07707755b4b711 Author: Richard Purdie Date: Sat Dec 30 15:40:11 2006 +0000 backlight: fix backlight_device_register compile failures Fix breakage from commit 519ab5f2be65b72cf12ae99c89752bbe79b44df6 which didn't update all references to backlight_device_register causing compile failures. Signed-off-by: Richard Purdie Signed-off-by: Len Brown commit e22a9a8b703d05f13366c3f2e7e1aa0550bb5ca6 Author: Leonard NorrgĂ„rd Date: Mon Jan 1 19:00:54 2007 +0200 [PATCH] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280) Recognize the Realtek ALC883 chip on MSI K9A Platinum motherboards (model no. MS-7280), enabling full sound capabilities. Signed-off-by: Leonard NorrgĂ„rd Signed-off-by: Linus Torvalds commit 36f696cd7ffc82c48bf5826bbb4e005370fb9c6a Author: Linus Torvalds Date: Mon Jan 1 10:55:45 2007 -0800 Revert "[PATCH] x86_64: fix boot hang caused by CALGARY_IOMMU_ENABLED_BY_DEFAULT" This reverts commit a9622f6219ce58faba1417743bf3078501eb3434. Now that the Calgary code apparently detects itself properly, it's not needed any more. Signed-off-by: Linus Torvalds commit 1c9d3df5e88ad7db23f5b22f4341c39722a904a4 Author: Richard Purdie Date: Sat Dec 30 16:08:50 2006 +0100 [ARM] 4078/1: Fix ARM copypage cache coherency problems If PG_dcache_dirty is set for a page, we need to flush the source page before performing any copypage operation using a different virtual address. This fixes the copypage implementations for XScale, StrongARM and ARMv6. This patch fixes segmentation faults seen in the dynamic linker under the usage patterns in glibc 2.4/2.5. Signed-off-by: Richard Purdie Signed-off-by: Russell King commit b0b1d60a64054697ef828e0565f006cc0f823590 Author: Dan Williams Date: Fri Dec 29 01:30:24 2006 +0100 [ARM] 4077/1: iop13xx: fix __io() macro Since iop13xx defines the PCI I/O spaces with physical resource addresses the __io macro needs to perform the physical to virtual conversion. I incorrectly assumed that this would be handled by ioremap, but drivers (like e1000) directly dereference the address returned from __io. Signed-off-by: Dan Williams Signed-off-by: Russell King commit 4cc2f7a84d64d25a16bb9383148c1467284e2356 Author: Paul Brook Date: Thu Dec 28 01:54:16 2006 +0100 [ARM] 4074/1: Flat loader stack alignment The ARM EABI requires doubleword (8-byte) stack alignment at all public entry points. The patch below makes the bFLT loader honour this. It's always safe to start with a doubleword aligned stack so it doesn't seem worth making this conditional on CONFIG_AEABI. Paul Signed-off-by: Paul Brook Signed-off-by: Russell King commit 431d2cd99f9721ad09f859dc65895f30385cc5c6 Author: Arnaud Patard Date: Wed Dec 27 22:56:44 2006 +0100 [ARM] 4073/1: Prevent s3c24xx drivers from including asm/arch/hardware.h and asm/arch/irqs.h As reminded in http://lkml.org/lkml/2006/12/23/26, one should use asm/hardware.h and asm/irq.h but absent-minded devs like me tends to use asm/arch/hardware.h and/or asm/arch/irqs.h. This patch aims at preventing such things. In order to make it work, I had to modify asm-arm/irq.h too so that it can be included from assembly files. Also, as a side effect, I had to modify some headers who were using the asm/arch/hardware.h or asm/arch/irqs.h. Signed-off-by: Arnaud Patard Signed-off-by: Russell King commit eb3b4783ba664fd80d337ae6649f6489493b2387 Author: Ben Dooks Date: Sun Dec 24 10:08:09 2006 +0100 [ARM] 4071/1: S3C24XX: Documentation update Add documentation for the following items: - new machines (AML M5900, VMTS, NexVision) - updated rtc section - removed comments about mtd cvs - added spi section - led section Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 0c48d314b16f485e89e0f13fa37c9bd98b6a064d Author: Nicolas Pitre Date: Fri Dec 22 18:52:56 2006 +0100 [ARM] 4066/1: correct a comment about PXA's sched_clock range Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit ae2aa9073acf8f810f18297f586e03d4b2b97588 Author: Arnaud Patard Date: Fri Dec 22 18:44:42 2006 +0100 [ARM] 4065/1: S3C24XX: dma printk fixes The commit 505788cccbb96cd496b646594c8a5fcdc26bc2d9 in linus kernel tree introduced some printks (for debugging ?) which are flooding the logs on my h1940. This patch replace them with pr_debug calls. Signed-off-by: Arnaud Patard Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 35108fb9b3f291b594a8019cb9188da6be2f7990 Author: Nicolas Pitre Date: Fri Dec 22 18:36:30 2006 +0100 [ARM] 4064/1: make pxa_get_cycles() static ... and fix a comment as well. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit 2ca2c570b0e38b0c214426b1708ee1b0c3a5067d Author: Lennert Buytenhek Date: Fri Dec 22 14:33:18 2006 +0100 [ARM] 4063/1: ep93xx: fix IRQ_EP93XX_GPIO?MUX numbering Fix incorrect IRQ numbering in arch-ep93xx/irqs.h (source: Applied Data Systems 2.6.17 kernel tree.) Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit 264166e604a7e14c278e31cadd1afb06a7d51a11 Author: Rafał Bilski Date: Sun Dec 24 14:04:23 2006 +0100 [CPUFREQ] Longhaul - Fix up powersaver assumptions. ACPI PM2 register was fallback for "Longhaul ver. 1" CPU's. My assumption that this register isn't present at "PowerSaver" motherboards is so far true, but current code will not work correctly in other case. There are three possible supports: ACPI C3, PM2 and northbridge. That was my assumption that ACPI C3 and northbridge is for PS and northbridge and PM2 is for V1. In current code we can only check if it is ACPI support or not by port22_en. So remove port22_en and add longhaul_flags. If USE_ACPI_C3 and USE_NORTHBRIDGE are both clear then it means ACPI PM2 support. Also change order of support probe from ACPI C3, PM2, northbridge to ACPI C3, northbridge, ACPI PM2. Paranoid protection against port 0x22 cast as ACPI PM2 register. Bit 1 clear in such case - lockup on AGP DMA. And obvious (now) fixup for do_powersaver. Use cx->address only for ACPI C3 ("PowerSaver" processor using PM2 support). Signed-off-by: Rafaż Bilski Signed-off-by: Dave Jones commit 1cfe2014263a879691d0262935a2649c97a02559 Author: Dave Jones Date: Thu Dec 28 22:30:16 2006 -0500 [CPUFREQ] longhaul: Fix up unreachable code. Signed-off-by: RafaƂ Bilski Signed-off-by: Dave Jones commit 7f02d687b44aba0cfc393102ea1ccc78eadf8a04 Author: Thomas Hellstrom Date: Wed Dec 27 13:16:49 2006 +0100 [AGPGART] Fix PCI-posting flush typo. Unfortunately there was a typo in one of the patches I sent, (The one now committed to the agpgart tree). It may cause a bus error on i810 type hardware. Signed-off-by: Thomas Hellstrom Signed-off-by: Dave Jones commit c41e0deb50c44f9d119c2268f1be05e6a6bb5772 Author: Eric Anholt Date: Tue Dec 19 12:57:24 2006 -0800 [AGPGART] fix detection of aperture size versus GTT size on G965 On the G965, the GTT size may be larger than is required to cover the aperture. (In fact, on all hardware we've seen, the GTT is 512KB to the aperture's 256MB). A previous commit forced the aperture size to 512MB on G965 to match GTT, which would likely result in hangs at best if users tried to rely on agpgart's aperture size information. Instead, we use the resource length for the aperture size and the system's reported GTT size when available for the GTT size. Because the MSAC registers which had been read for aperture size detection on i9xx chips just cause a change in the resource size, we can use generic code for aperture detection on all i9xx. Signed-off-by: Eric Anholt Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit d349c4a5ae1f17be8d6d5de30135ce17e0a8623b Author: Brice Goglin Date: Wed Dec 20 14:11:21 2006 +0100 [CPUFREQ] speedstep-centrino: missing space and bracket A space and a bracket are missing (and indentation is wrong). Signed-off-by: Brice Goglin Signed-off-by: Dave Jones commit 8edc59d939ad233c24385fb67a62bd39db532901 Author: Venkatesh Pallipadi Date: Tue Dec 19 12:58:55 2006 -0800 [CPUFREQ] Bug fix for acpi-cpufreq and cpufreq_stats oops on frequency change notification Fixes the oops in cpufreq_stats with acpi_cpufreq driver. The issue was that the frequency was reported as 0 in acpi-cpufreq.c. The bug is due to different indicies for freq_table and ACPI perf table. Also adds a check in cpufreq_stats to check for error return from freq_table_get_index() and avoid using the error return value. Patch fixes the issue reported at http://www.ussg.iu.edu/hypermail/linux/kernel/0611.2/0629.html and also other similar issue here http://bugme.osdl.org/show_bug.cgi?id=7383 comment 53 Signed-off-by: Dhaval Giani Signed-off-by: Venkatesh Pallipadi Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit 917325d30ab12f9f23aee5c91dc96dfe81b0c6be Author: Randy Dunlap Date: Tue Dec 19 12:58:54 2006 -0800 [CPUFREQ] select consistently Make x86_64 ACPI_CPU_FREQ select CPU_FREQ_TABLE like other methods do. (although we should still eliminate as much use of 'select' as possible) Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit 5aa80c72263904f1e52eee8ed8cb75887b1d1dc3 Author: Thomas Hellstrom Date: Wed Dec 20 16:33:41 2006 +0100 [AGPGART] Remove unnecessary flushes when inserting and removing pages. This patch is to speed up flipping of pages in and out of the AGP aperture as needed by the new drm memory manager. A number of global cache flushes are removed as well as some PCI posting flushes. The following guidelines have been used: 1) Memory that is only mapped uncached and that has been subject to a global cache flush after the mapping was changed to uncached does not need any more cache flushes. Neither before binding to the aperture nor after unbinding. 2) Only do one PCI posting flush after a sequence of writes modifying page entries in the GATT. Signed-off-by: Thomas Hellstrom Signed-off-by: Dave Jones commit d5cb8d38cd0029b3573e1c8d5d99d99c86dbdbd6 Author: Gabriel Mansi Date: Sat Dec 16 20:24:27 2006 -0300 [AGPGART] K8M890 support for amd-k8. Signed-off-by: Dave Jones