summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] sysctl: Allow /proc/sys without sys_sysctlEric W. Biederman2006-09-271-2/+2
| | | | | | | | | | | Since sys_sysctl is deprecated start allow it to be compiled out. This should catch any remaining user space code that cares, and paves the way for further sysctl cleanups. [akpm@osdl.org: If sys_sysctl() is not compiled-in, emit a warning] Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [MIPS] setup.c: use early_param() for early command line parsingFranck Bui-Huu2006-09-271-112/+60
| | | | | | | | | | There's no point to rewrite some logic to parse command line to pass initrd parameters or to declare a user memory area. We could use instead parse_early_param() that does the same thing. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] setup.c: remove MAXMEM macroFranck Bui-Huu2006-09-271-9/+3
| | | | | | | It doesn't improve readability. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] setup.c: do not inline functionsFranck Bui-Huu2006-09-271-2/+2
| | | | | | | | There's no point to inline any functions in setup.c. Let's GCC doing its job, it's good enough for that now. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] setup.c: remove useless includes.Franck Bui-Huu2006-09-271-14/+0
| | | | | Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] setup.c: move initrd code inside dedicated functionsFranck Bui-Huu2006-09-271-58/+86
| | | | | | | NUMA specific code could rely on them too. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] setup.c: cleanup bootmem_init()Franck Bui-Huu2006-09-271-78/+57
| | | | | | | | | | | | | | | | | | | | This function although doing simple thing is hard to follow. It's mainly due to: - a lot of #ifdef - bad local names - redundant tests So this patch try to address these issues. It also do not use max_pfn global which is marked as an unused exported symbol. As a bonus side, it's now really easy to see what part of the code is for no-numa system. There's also no point to make this function inline. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] get_wchan(): remove uses of mfinfo[64]Franck Bui-Huu2006-09-271-82/+50
| | | | | | | | | | | | | | | | | | | | | This array was used to 'cache' some frame info about scheduler functions to speed up get_wchan(). This array was 1Ko size and was only used when CONFIG_KALLSYMS was set but declared for all configs. Rather than make the array statement conditional, this patches removes this array and its uses. Indeed the common case doesn't seem to use this array and get_wchan() is not a critical path anyways. It results in a smaller bss and a smaller/cleaner code: text data bss dec hex filename 2543808 254148 139296 2937252 2cd1a4 vmlinux-new-get-wchan 2544080 254148 143392 2941620 2ce2b4 vmlinux~old Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] get_frame_info(): null function size means size is unknownFranck Bui-Huu2006-09-271-2/+10
| | | | | | | | | | | | | | | | This patch adds 2 sanity checks. The first one test that the start address of the function to analyze has been set by the caller. If not return an error since nothing usefull can be done without. The second one checks that the function's size has been set. A null size can happen if CONFIG_KALLSYMS is not set and it means that we don't know the size of the function to analyze. In this case, we make it equal to 128 instructions by default. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] unwind_stack(): return ra if an exception occured at the first ↵Franck Bui-Huu2006-09-271-2/+5
| | | | | | | instruction Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] The o32 fstatat syscall behaves differently on 32 and 64 bit kernelsRichard Sandiford2006-09-271-1/+1
| | | | | | | | | | | | | | | While working on a glibc patch to support the fstatat() functions[1], I noticed that the o32 implementation behaves differently on 32-bit and 64-bit kernels; the former provides a stat64 while the latter provides a plain (o32) stat. I think the former is what's intended, as there is no separate fstatat64. It's also what x86 does. I think this is just a case of a compat too far. [1] I've seen Khem's patch, but I don't think it's right. Signed-off-by: Richard Sandiford <richard@codesourcery.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Move definition of IRIX compat constant into IRIX compat code.Ralf Baechle2006-09-271-0/+3
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] TLS: set_thread_area returns asmlinkage int not void.Ralf Baechle2006-09-271-1/+3
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] TLS: Delete unused sys32_set_thread_areaRalf Baechle2006-09-271-6/+0
| | | | | | There is no need for a compat version. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Reduce race between cpu_wait() and need_resched() checkingAtsushi Nemoto2006-09-271-17/+45
| | | | | | | | | | | | | If a thread became runnable between need_resched() and the WAIT instruction, switching to the thread will delay until a next interrupt. Some CPUs can execute the WAIT instruction with interrupt disabled, so we can get rid of this race on them (at least UP case). Original Patch by Atsushi with fixing up for MIPS Technology's cores by Ralf based on feedback from the RTL designers. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Wire up set_robust_list(2) and get_robust_list(2)Atsushi Nemoto2006-09-274-1/+9
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Make prepare_frametrace() not clobber v0Atsushi Nemoto2006-09-271-3/+7
| | | | | | | | | | Since lmo commit 323a380bf9e1a1679a774a2b053e3c1f2aa3f179 ("Simplify dump_stack()") made prepare_frametrace() always inlined, using $2 (v0) in __asm__ is not safe anymore. We can use $1 (at) instead. Also we should use "dla" instead of "la" for 64-bit kernel. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] MT: Fix setting of XTC.Elizabeth Oldham2006-09-271-0/+6
| | | | | | | | XTC can only be set if VPA is clear, which it may not be. There is also the possibility of a back to back c0 register access hazard to take care of. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] SMTC Build fix.Ralf Baechle2006-09-271-1/+1
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Avoid double signal restarting.Ralf Baechle2006-09-273-1/+3
| | | | | | | | | | | | | | | In entry.S resume_userspace ... jal do_notify_resume form a loop through which the kernel will iterate as long as work is pending. If we iterate through this loop more than once with no signal pending for at least one but the last iteration we will take do the syscall restarting multiple times resulting in a syscall return prior to the the syscall instruction in userspace. This may happen when debugging a multithreaded program. Debugging and original fix by Maciej; extended to other ABIs by me. Signed-off-by: Maciej W. Rozycki <macro@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] MT: Initialise all writable bits in Cause register to zero.Chris Dearman2006-09-271-1/+1
| | | | | | | | Recent 34Ks come out of reset with WP enabled on VPE 1 so we take an immediate exception when starting the second VPE. Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Add missing returns in signal code.Ralf Baechle2006-09-272-0/+4
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] IRIX: Crapectopy.Ralf Baechle2006-09-271-15/+40
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Don't call try_to_freeze in do_signal & co.Ralf Baechle2006-09-273-12/+0
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Improve unwind_stack()Franck Bui-Huu2006-09-272-25/+34
| | | | | | | | | | | | This patch allows unwind_stack() to return ra for leaf function. But it tries to detects cases where get_frame_info() wrongly consider nested function as a leaf one. It also pass 'unsinged long *sp' instead of 'unsigned long **sp' as second parameter. The code looks cleaner. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Make get_frame_info() more robustFranck Bui-Huu2006-09-271-8/+6
| | | | | | | | | Now get_frame_info() wants to detect move sp instruction first. It assumes that the save ra in the stack instruction can't happen before allocating frame size space into the stack. Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Simplify dump_stack()Franck Bui-Huu2006-09-271-11/+9
| | | | | | | | | | Make dump_stack() code not depend on CONFIG_KALLSYMS. It also make prepare_frametrace() always inlined to get less false entries reported by show_raw_backtrace(). Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Make frame_info_init() more readable.Franck Bui-Huu2006-09-271-9/+9
| | | | | Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Miscellaneous cleanup in prologue analysis codeFranck Bui-Huu2006-09-271-19/+14
| | | | | | | | | | | We usually use backtrace term for dumping a call tree during debug. Therefore this patch renames show_frametrace() into show_backtrace() and show_trace() into show_raw_backtrace(). It also uses the new function print_ip_sym(). Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Remove unused MODULE_RANGE macro.Franck Bui-Huu2006-09-271-5/+0
| | | | | Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Make get_frame_info() more readable.Franck Bui-Huu2006-09-271-31/+36
| | | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Franck Bui-Huu <vagabon.xyz@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] N32 rt_sigqueueinfo uses O32 padding, not N64Peter Watkins2006-09-271-1/+1
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] dump_stack() based on prologue code analysisAtsushi Nemoto2006-09-272-23/+141
| | | | | | | | | | Instead of dump all possible address in the stack, unwind the stack frame based on prologue code analysis, as like as get_wchan() does. While the code analysis might fail for some reason, there is a new kernel option "raw_show_trace" to disable this feature. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Rearrange show_stack, show_traceAtsushi Nemoto2006-09-271-28/+23
| | | | | | | | Print call-trace in show_stack() (like on other archs). Also make show_trace() static and simplify its argument list. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Honour "panic_on_oops" sysctl.Maxime Bizon2006-09-271-0/+11
| | | | | Signed-off-by: Maxime Bizon <mbizon@freebox.fr> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Replace board_timer_setup function pointer by plat_timer_setup.Ralf Baechle2006-07-132-4/+3
| | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org> ---
* [MIPS] SMTC: Reformat to Linux style.Ralf Baechle2006-07-131-29/+29
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] TRACE_IRQFLAGS_SUPPORT support.Ralf Baechle2006-07-139-2/+46
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] MIPS MT: Fix build error.Yoichi Yuasa2006-07-131-0/+1
| | | | | Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Panic on fp exception in kernel mode.Chris Dearman2006-07-131-0/+2
| | | | | | | There should never be a FP exception in kernel mode. Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Save 2k text size in cpu-probeThiemo Seufer2006-07-131-1/+1
| | | | | | | | The appended patch drops the inline for decode_configs, this saves about 2k of text size. Signed-off-by: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Uses MIPS_CONF_AR instead of magic constants.Thiemo Seufer2006-07-131-2/+2
| | | | | Signed-off-by: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Wire up vmsplice(2) and move_pages(2).Ralf Baechle2006-07-134-0/+8
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Eleminate interrupt migration helper use.Ralf Baechle2006-07-137-10/+10
| | | | | | | | | > #define hw_interrupt_type irq_chip > typedef struct irq_chip hw_irq_controller; > #define no_irq_type no_irq_chip > typedef struct irq_desc irq_desc_t; Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Don't include obsolete <linux/config.h>.Ralf Baechle2006-07-132-2/+0
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Use KERN_DEBUG to log the SDBBP messagesChris Dearman2006-07-131-3/+3
| | | | | Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Less noise on multithreading exceptions.Chris Dearman2006-07-132-10/+8
| | | | | | | | Make the MT handler silent and output the MT exception type at debug priority. Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Avoid interprocessor function calls.Ralf Baechle2006-07-131-5/+30
| | | | | | | | On the 34K where multiple virtual processors are implemented in a single core and share a single TLB, interprocessor function calls are not needed to flush a cache, so avoid them. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [PATCH] FDPIC: Move roundup() into linux/kernel.hDavid Howells2006-07-101-2/+0
| | | | | | | | | | Move the roundup() macro from binfmt_elf.c into linux/kernel.h as it's generally useful. [akpm@osdl.org: nuke all the other implementations] Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] tty: Remove include of screen_info.h from tty.hJon Smirl2006-07-101-1/+1
| | | | | | | | | | | | | | | | screen_info.h doesn't have anything to do with the tty layer and shouldn't be included by tty.h. This patches removes the include and modifies all users to directly include screen_info.h. struct screen_info is mainly used to communicate with the console drivers in drivers/video/console. Note that this patch touches every arch and I have no way of testing it. If there is a mistake the worst thing that will happen is a compile error. [akpm@osdl.org: fix arm build] [akpm@osdl.org: fix alpha build] Signed-off-by: Jon Smirl <jonsmir@gmail.com> Signed-off-by: Antonino Daplas <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>