- 17 4月, 2008 16 次提交
-
-
由 Manish Ahuja 提交于
This changes the way we calculate how much space to reserve for the pHyp dump. Currently we reserve 256MB only. With this change, the code first checks to see if an amount has been specified on the boot command line with the "phyp_dump_reserve_size" option, and if so, uses that much. Otherwise it computes 5% of total ram and rounds it down to a multiple of 256MB, and uses the larger of that or 256MB. This is for large systems with a lot of memory (10GB or more). The aim is to have more space available for the kernel on reboot on machines with more resources. Although the dump will be collected pretty fast and the memory released really early on allowing the machine to have the full memory available, this alleviates any issues that can be caused by having way too little memory on very very large systems during those few minutes. Signed-off-by: NManish Ahuja <mahuja@us.ibm.com> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
Now that we properly set the physical address in the program header of the vmlinux ELF we can extract it to properly set the load and entry point for u-boot uImages. Before we always hard coded the load & entry point to 0. However there are situations that the kernel may be built with a non-zero physical address. We use objdump to extract the PHDR. We assume that there is only one PHDR in the vmlinux of type LOAD. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
We can set LOAD_OFFSET and use the AT attribute on sections and the linker will properly set the physical address of the LOAD program header for us. This allows us to know how the PHYSICAL_START the user configured a kernel with by just looking at the resulting vmlinux ELF. This is pretty much stolen from how x86 does things in their linker scripts. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
* PAGE_OFFSET is not always the start of code, use _stext instead. * grab PAGE_SIZE and KERNELBASE from asm/page.h like ppc64 does. Makes the code a bit more common and provide a single place to manipulate the defines for things like kdump. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
We always use __initial_memory_limit as an address so rename it to be clear. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
* Determine the RPN we are running the kernel at runtime rather than using compile time constant for initial TLB * Cleanup adjust_total_lowmem() to respect memstart_addr and be a bit more clear on variables that are sizes vs addresses. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
total_lowmem represents the amount of low memory, not the physical address that low memory ends at. If the start of memory is at 0 it happens that total_lowmem can be used as both the size and the address that lowmem ends at (or more specifically one byte beyond the end). To make the code a bit more clear and deal with the case when the start of memory isn't at physical 0, we introduce lowmem_end_addr that represents one byte beyond the last physical address in the lowmem region. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
A number of users of PPC_MEMSTART (40x, ppc_mmu_32) can just always use 0 as we don't support booting these kernels at non-zero physical addresses since their exception vectors must be at 0 (or 0xfffx_xxxx). For the sub-arches that support relocatable interrupt vectors (book-e), it's reasonable to have memory start at a non-zero physical address. For those cases use the variable memstart_addr instead of the #define PPC_MEMSTART since the only uses of PPC_MEMSTART are for initialization and in the future we can set memstart_addr at runtime to have a relocatable kernel. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
There does not appear to be any reason that we shouldn't just have -Iarch/$(ARCH) on both ppc32 and ppc64 builds. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Kumar Gala 提交于
Nothing appears to use BOOT_LOAD so remove it as a configurable option. Signed-off-by: NKumar Gala <galak@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Adrian Bunk 提交于
This adds the missing MODULE_LICENSE("GPL"). Signed-off-by: NAdrian Bunk <bunk@kernel.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 David Woodhouse 提交于
Fedora 9 works on Efika without the separate 'device-tree supplement', thanks to the kernel's own fixups. With one exception -- because 'CHRP' still appears on the 'machine:' line in /proc/cpuinfo, the installer misdetects the platform and misconfigures yaboot, putting it into a PReP boot partition instead of in the /boot filesystem where the Efika's firmware could find it. The kernel's fixups for Efika already correct one instance of 'chrp', in the 'device_type' property. This fixes it in the 'CODEGEN,description' property too, since that's what's exposed to userspace in /proc/cpuinfo. Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org> Acked-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Anton Vorontsov 提交于
This implements support for the GPIO LIB API. Two calls are still unimplemented though: irq_to_gpio and gpio_to_irq. Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com> Acked-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Benjamin Herrenschmidt 提交于
This fixes the handling of the preempt count when switching interrupt stacks so that HW interrupt properly get the softirq mask copied over from the previous stack. It also initializes the softirq stack preempt_count to 0 instead of SOFTIRQ_OFFSET, like x86, as __do_softirq() does the increment, and we hit some lockdep checks if we have it twice. That means we do run for a little while off the softirq stack with the preempt-count set to 0, which could be deadly if we try to take a softirq at that point, however we do so with interrupts disabled, so I think we are ok. Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Benjamin Herrenschmidt 提交于
Currently, we initialize the "current" pointer in the PACA (which is used by the "current" macro in the kernel) before calling setup_system(). That means that early_setup() is called with current still "NULL" which is -not- a good idea. It happens to work so far but breaks with lockdep when early code calls printk. This changes it so that all PACAs are statically initialized with __current pointing to the init task. For non-0 CPUs, this is fixed up before use. Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Ishizaki Kou 提交于
Signed-off-by: NKou Ishizaki <kou.ishizaki@toshiba.co.jp> Acked-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
- 16 4月, 2008 2 次提交
-
-
由 Jerone Young 提交于
This changes the cpu_idle loop for 44x platforms to utilize the Wait Enable feature of the CPU. This helps virtulization solutions know when the guest Linux kernel is in an idle state. A command line option called "idle" is also added to allow people to change the idle loop back to the original variation. This is done by setting "idle=spin" on the kernel command line. Signed-off-by: NJerone Young <jyoung5@us.ibm.com> Signed-off-by: NJosh Boyer <jwboyer@linux.vnet.ibm.com>
-
由 Josh Boyer 提交于
Add a multi-board PowerPC 40x defconfig file Signed-off-by: NJosh Boyer <jwboyer@linux.vnet.ibm.com>
-
- 15 4月, 2008 12 次提交
-
-
由 Josh Boyer 提交于
Board specific defconfigs are useful, however with the ability to do multi-board defconfigs they aren't needed in the top level configs directory. Move the 4xx board specific defconfigs to individual directories under arch/powerpc/configs. Signed-off-by: NJosh Boyer <jwboyer@linux.vnet.ibm.com>
-
由 Stephen Rothwell 提交于
Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Stephen Rothwell 提交于
Now that we have the alpaca, the reg_save_ptr is no longer needed in the paca. Eradicate all global uses of it and make it static in the iSeries lpardata.c Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Stephen Rothwell 提交于
The iSeries HV only needs the first two fields of the paca statically initialised, so create an alternate paca that contains only those and switch to our real paca immediately after boot. This is in order to make the 1024 cpu patches easier since they will no longer have to statically initialise the pacas for iSeries. Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Dale Farnsworth 提交于
The prpmc2800 platform requires a zImage formatted file with an embedded dtb file. Rename the requested boot image file to dtbImage.prpmc2800. Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Acked-by: NMark A. Greer <mgreer@mvista.com> Acked-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Dale Farnsworth 提交于
The mv643xx_eth driver is being modified to support multiple instances of the ethernet silicon block on the same platform. Each block contains a single register bank containing the registers for up to three ports interleaved within that bank. This patch updates the PowerPC OF to platform_device glue code to support multiple silicon blocks, each with up to three ethernet ports. The main difference is that we now allow multiple mv64x60_shared platform_devices to be registered and we provide each port platform_device with a pointer to its associated shared platform_device. The pointer will not be used until the mv643xx_eth driver changes are committed. Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Acked-by: NMark Greer <mgreer@mvista.com> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Mark A. Greer 提交于
Remove several unused (or software config only) properties. Rename marvel node to "system-controller". Also, rename the "block-index" property to "cell-index" to conform to current practice. Signed-off-by: NMark A. Greer <mgreer@mvista.com> Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Dale Farnsworth 提交于
Replace several device node absolute path lookups in the mv64x60 bootwrapper code with lookups by compatible or device_type properties. Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Acked-by: NMark A. Greer <mgreer@mvista.com> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Mark A. Greer 提交于
Compatible names should refer to a specific version of the hardware, without wildcards. Change each instance of mv64x60 to mv64360, which is the oldest version we currently support. Signed-off-by: NMark A. Greer <mgreer@mvista.com> Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Dale Farnsworth 提交于
After the conversion to dts v1 format, seeing the frequencies in decimal made it obvious that some of them had been incorrectly truncated. This fixes them. Note that the PCI frequency comes from a different source and is documented as 66MHz, so it was left at 66000000. Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Acked-by: NMark A. Greer <mgreer@mvista.com> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Mark A. Greer 提交于
Update the prpmc2800 DTS file to version 1 and add labels. I verified that there was no change in the resulting dtb file. Signed-off-by: NMark A. Greer <mgreer@mvista.com> Signed-off-by: NDale Farnsworth <dale@farnsworth.org> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
由 Stephen Rothwell 提交于
The allyesconfig (among others) build was giving this: In file included from include/linux/gfp.h:4, from include/linux/slab.h:14, from include/linux/percpu.h:5, from include2/asm/time.h:18, from include2/asm/cputime.h:26, from include/linux/sched.h:67, from arch/powerpc/kernel/asm-offsets.c:17: include/linux/mmzone.h:791:2: error: #error Allocator MAX_ORDER exceeds SECTION_SIZE Kconfig options are order depenendent, so move the setting of FORCE_MAX_ZONEORDER to after the setting of PPC_64K_PAGES. Also add an explicit !PPC_64K_PAGES. Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
- 14 4月, 2008 1 次提交
-
-
由 Paul Mackerras 提交于
If an SLB miss interrupt happens while the RI bit of MSR is zero, we can't just return, because RI being zero indicates that SRR0/SRR1 potentially had live values in them, and the process of taking an interrupt overwrites them. This should never happen, but if it does, we try to print a nice oops message. That doesn't work, however, because the code at unrecov_slb assumes that the MMU has been turned on, but we call it with the MMU off (and have done so since the SLB miss handler was rewritten to run without turning the MMU on) -- except on iSeries, where everything runs with the MMU on. This fixes it by adding the necessary code to turn the MMU on if necessary. Signed-off-by: NPaul Mackerras <paulus@samba.org>
-
- 11 4月, 2008 4 次提交
-
-
由 Roland McGrath 提交于
The prevent_tail_call() macro works around the problem of the compiler clobbering argument words on the stack, which for asmlinkage functions is the caller's (user's) struct pt_regs. The tail/sibling-call optimization is not the only way that the compiler can decide to use stack argument words as scratch space, which we have to prevent. Other optimizations can do it too. Until we have new compiler support to make "asmlinkage" binding on the compiler's own use of the stack argument frame, we have work around all the manifestations of this issue that crop up. More cases seem to be prevented by also keeping the incoming argument variables live at the end of the function. This makes their original stack slots attractive places to leave those variables, so the compiler tends not clobber them for something else. It's still no guarantee, but it handles some observed cases that prevent_tail_call() did not. Signed-off-by: NRoland McGrath <roland@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 Venki Pallipadi 提交于
This patch also resolves hangs on boot: http://lkml.org/lkml/2008/2/23/263 http://bugzilla.kernel.org/show_bug.cgi?id=10093 The bug was causing once-in-few-reboots 10-15 sec wait during boot on certain laptops. Earlier commit 40d6a146 added smp_call_function in cpu_idle_wait() to kick cpus that are in tickless idle. Looking at cpu_idle_wait code at that time, code seemed to be over-engineered for a case which is rarely used (while changing idle handler). Below is a simplified version of cpu_idle_wait, which just makes a dummy smp_call_function to all cpus, to make them come out of old idle handler and start using the new idle handler. It eliminates code in the idle loop to handle cpu_idle_wait. Signed-off-by: NVenkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 David Howells 提交于
Make NOMMU-mode work with base addresses other than 0xC0000000 by: (1) Giving the code that sets up the protection registers the right address in __sdram_base. Rather than being hard coded to 0xC0000000, the value of __page_offset is obtained from the linker script. (2) Eliminate the check in __switch_to() that verifies the current thread info is in the 0xCxxxxxxx region. Signed-off-by: NDavid Howells <dhowells@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 David Howells 提交于
Use traps 120-126 to emulate atomic cmpxchg32, xchg32, and XOR-, OR-, AND-, SUB- and ADD-to-memory operations for userspace. Signed-off-by: NDavid Howells <dhowells@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 10 4月, 2008 2 次提交
-
-
由 David S. Miller 提交于
1) ptrace should pass 'current' to task_user_regset_view() 2) When fetching general registers using a 64-bit view, and the target is 32-bit, we have to convert. 3) Skip the whole register window get/set code block if the user isn't asking to access anything in there. Otherwise we have problems if the user doesn't have an address space setup. Fetching ptrace register is still valid at such a time, and ptrace does not try to access the register window area of the regset. Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Steven Rostedt 提交于
gcc expects all toplevel assembly to return to the original section type. The code in alteranative.c does not do this. This caused some strange bugs in sched-devel where code would end up in the .rodata section and when the kernel sets the NX bit on all .rodata, the kernel would crash when executing this code. This patch adds a .previous marker to return the code back to the original section. Credit goes to Andrew Pinski for telling me it wasn't a gcc bug but a bug in the toplevel asm code in the kernel. ;-) Signed-off-by: NSteven Rostedt <srostedt@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 08 4月, 2008 3 次提交
-
-
由 Ralf Baechle 提交于
flush_cache_vmap / flush_cache_vunmap were calling flush_cache_all which - having been deprecated - turned into a nop ... Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
-
由 Karsten Wiese 提交于
In time_cpufreq_notifier() the cpu id to act upon is held in freq->cpu. Use it instead of smp_processor_id() in the call to set_cyc2ns_scale(). This makes the preempt_*able() unnecessary and lets set_cyc2ns_scale() update the intended cpu's cyc2ns. Related mail/thread: http://lkml.org/lkml/2007/12/7/130Signed-off-by: NKarsten Wiese <fzu@wemgehoertderstaat.de> Signed-off-by: NIngo Molnar <mingo@elte.hu>
-
由 Ingo Molnar 提交于
revert: | commit 47001d60 | Author: Thomas Gleixner <tglx@linutronix.de> | Date: Tue Apr 1 19:45:18 2008 +0200 | | x86: tsc prevent time going backwards it has been identified to cause suspend regression - and the commit fixes a longstanding bug that existed before 2.6.25 was opened - so it can wait some more until the effects are better understood. Signed-off-by: NIngo Molnar <mingo@elte.hu>
-