summaryrefslogtreecommitdiff
path: root/arch/mips/kernel
AgeCommit message (Collapse)AuthorFilesLines
2007-10-17core_pattern: ignore RLIMIT_CORE if core_pattern is a pipeNeil Horman1-3/+2
For some time /proc/sys/kernel/core_pattern has been able to set its output destination as a pipe, allowing a user space helper to receive and intellegently process a core. This infrastructure however has some shortcommings which can be enhanced. Specifically: 1) The coredump code in the kernel should ignore RLIMIT_CORE limitation when core_pattern is a pipe, since file system resources are not being consumed in this case, unless the user application wishes to save the core, at which point the app is restricted by usual file system limits and restrictions. 2) The core_pattern code should be able to parse and pass options to the user space helper as an argv array. The real core limit of the uid of the crashing proces should also be passable to the user space helper (since it is overridden to zero when called). 3) Some miscellaneous bugs need to be cleaned up (specifically the recognition of a recursive core dump, should the user mode helper itself crash. Also, the core dump code in the kernel should not wait for the user mode helper to exit, since the same context is responsible for writing to the pipe, and a read of the pipe by the user mode helper will result in a deadlock. This patch: Remove the check of RLIMIT_CORE if core_pattern is a pipe. In the event that core_pattern is a pipe, the entire core will be fed to the user mode helper. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Cc: <martin.pitt@ubuntu.com> Cc: <wwoods@redhat.com> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-17Use list_head in binfmt handlingAlexey Dobriyan1-2/+5
Switch single-linked binfmt formats list to usual list_head's. This leads to one-liners in register_binfmt() and unregister_binfmt(). The downside is one pointer more in struct linux_binfmt. This is not a problem, since the set of registered binfmts on typical box is very small -- (ELF + something distro enabled for you). Test-booted, played with executable .txt files, modprobe/rmmod binfmt_misc. Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-16Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuildLinus Torvalds1-1/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (40 commits) kbuild: introduce ccflags-y, asflags-y and ldflags-y kbuild: enable 'make CPPFLAGS=...' to add additional options to CPP kbuild: enable use of AFLAGS and CFLAGS on commandline kbuild: enable 'make AFLAGS=...' to add additional options to AS kbuild: fix AFLAGS use in h8300 and m68knommu kbuild: check for wrong use of CFLAGS kbuild: enable 'make CFLAGS=...' to add additional options to CC kbuild: fix up CFLAGS usage kbuild: make modpost detect unterminated device id lists kbuild: call export_report from the Makefile kbuild: move Kai Germaschewski to CREDITS kconfig/menuconfig: distinguish between selected-by-another options and comments kconfig: tristate choices with mixed tristate and boolean values include/linux/Kbuild: remove duplicate entries kbuild: kill backward compatibility checks kbuild: kill EXTRA_ARFLAGS kbuild: fix documentation in makefiles.txt kbuild: call make once for all targets when O=.. is used kbuild: pass -g to assembler under CONFIG_DEBUG_INFO kbuild: update _shipped files for kconfig syntax cleanup ... Fix up conflicts in arch/um/sys-{x86_64,i386}/Makefile manually.
2007-10-16Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds4-24/+41
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Increase cp0 compare clockevent min_delta_ns from 0x30 to 0x300. [MIPS] Cache: Provide more information on cache policy on bootup. [MIPS] Fix aliasing bug in copy_user_highpage, take 2. [MIPS] VPE loader: convert from struct class_ device to struct device [MIPS] MIPSsim: Fix booting from NFS root [MIPS] Alchemy: Get rid of au1xxx_irq_map_t. [MIPS] Alchemy: Get rid of au_ffz(). [MIPS] Alchemy: Get rid of au_ffs(). [MIPS] Alchemy: cleanup interrupt code. [MIPS] Lasat: Fix build by conversion to irq_cpu.c. [MIPS] Lasat: Add #ifndef ... #endif include warpper to lasatint.h. [MIPS] IP22: Enable -Werror. [MIPS] IP22: Fix warning. [MIPS] IP22: Complain if requesting the front panel irq failed. [MIPS] vmlinux.lds.S: Handle KPROBES_TEXT. [MIPS] vmlinux.lds.S: Fix handling of .notes in final link. [MIPS] vmlinux.lds.S: Remove duplicate comment. [MIPS] MSP71XX: Add workarounds file. [MIPS] IP32: Fix build by conversion to irq_cpu.c.
2007-10-16[MIPS] Increase cp0 compare clockevent min_delta_ns from 0x30 to 0x300.Ralf Baechle1-1/+1
Extremly low values are of dubious usefulness anyway but in this case they actually were killing Qemu which simply wasn't able to complete mips_next_event() within 0x30 100MHz cycles even on fast hosts. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16[MIPS] VPE loader: convert from struct class_ device to struct deviceKay Sievers1-12/+15
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16[MIPS] IP22: Fix warning.Ralf Baechle1-6/+15
CC arch/mips/sgi-ip22/ip22-berr.o arch/mips/sgi-ip22/ip22-berr.c: In function 'ip22_be_interrupt': arch/mips/sgi-ip22/ip22-berr.c:100: warning: passing argument 2 of 'die_if_kernel' discards qualifiers from pointer target type Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16[MIPS] vmlinux.lds.S: Handle KPROBES_TEXT.Ralf Baechle1-0/+1
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16[MIPS] vmlinux.lds.S: Fix handling of .notes in final link.Ralf Baechle1-4/+9
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16[MIPS] vmlinux.lds.S: Remove duplicate comment.Ralf Baechle1-1/+0
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-16Consolidate PTRACE_DETACHAlexey Dobriyan1-4/+0
Identical handlers of PTRACE_DETACH go into ptrace_request(). Not touching compat code. Not touching archs that don't call ptrace_request. Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru> Acked-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-15kbuild: enable 'make CFLAGS=...' to add additional options to CCSam Ravnborg1-1/+1
The variable CFLAGS is a wellknown variable and the usage by kbuild may result in unexpected behaviour. On top of that several people over time has asked for a way to pass in additional flags to gcc. This patch replace use of CFLAGS with KBUILD_CFLAGS all over the tree and enabling one to use: make CFLAGS=... to specify additional gcc commandline options. One usecase is when trying to find gcc bugs but other use cases has been requested too. Patch was tested on following architectures: alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k Test was simple to do a defconfig build, apply the patch and check that nothing got rebuild. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
2007-10-13[MIPS] SMP: Fix use of cpumasks.Ralf Baechle1-3/+3
Noticed by Nick Piggin <nickpiggin@yahoo.com.au>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] VPE: reimplement ELF loader.Ralf Baechle1-34/+11
Loading ELF binaries based on the section table is totally wrong. This still leaves the other fat bug of referencing symbols in an executable unfixed, so people better don't run strip on their binaries ... As added bonus the new loader is also 23 lines shorter. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Add BUG_ON assertion for attempt to run kernel on the wrong CPU type.Franck Bui-Huu1-0/+8
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] SMP: Use ISO C struct initializer for local structs.Ralf Baechle1-10/+13
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] SMP: Kill useless casts.Ralf Baechle1-7/+7
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Kill num_online_cpus() loops.Ralf Baechle3-16/+25
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] SMP: Implement smp_call_function_mask().Ralf Baechle2-40/+21
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Make facility to convert CPU types to strings generally available.Ralf Baechle3-77/+94
So far /proc/cpuinfo has been the only user but human readable processor name are more useful than that for proc. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] checkfiles: Fix "need space after that ','" errors.Ralf Baechle13-36/+36
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Fix "no space between function name and open parenthesis" warnings.Ralf Baechle22-173/+173
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Allow hardwiring of the CPU type to a single type for optimization.Ralf Baechle1-3/+3
This saves a few k on systems which only ever ship with a single CPU type. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] i8253 PIT clocksource and clockevent driversRalf Baechle2-0/+214
Derived from the i386 variant with a few x86 complexities chopped off. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Dyntick support for SMTC:Ralf Baechle2-48/+130
The kernel currently only supports broadcasting of the timer interrupt from a single timer, not multicasting into two multicast groups of processors. So the implemented mechanism for SMTC works by broadcasting the cp0 compare interrupt on VPE 0 and ignoring it on any additional VPEs. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Implement clockevents for R4000-style cp0 count/compare interruptRalf Baechle4-139/+124
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Consolidate all variants of MIPS cp0 timer interrupt handlers.Ralf Baechle2-25/+70
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Switch from to_tm to rtc_time_to_tmRalf Baechle1-49/+0
This replaces the MIPS-specific to_tm function with the generic rtc_time_to_tm function. The big difference between the two functions is that rtc_time_to_tm uses epoch 70 while to_tm uses 1970, so the result of rtc_time_to_tm needs to be fixed up. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Deforest the function pointer jungle in the time code.Ralf Baechle1-31/+14
Hard to follow who is pointing what to where and why so it's simply getting in the way of the time code renovation. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Use generic NTP code for all MIPS platformsRalf Baechle1-20/+4
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] ARC: Get rid of mips_machgroupRalf Baechle1-2/+0
This has not been any serious user of this ill conceived thing since the original invention in like '95. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Sibyte: Replace SB1 cachecode with standard R4000 class cache code.Ralf Baechle2-8/+6
It may not be perfect yet but the SB1 code is badly borken and has horrible performance issues. Downside: This seriously breaks support for pass 1 parts of the BCM1250 where indexed cacheops don't work quite reliable but I seem to be the last one on the planet with a pass 1 part anyway. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] R3000 setup for kernel_thread()Maciej W. Rozycki1-2/+2
Match the R4000 semantics for the initial state of interrupt/kernel status register flags for the R3000 in kernel_thread(). Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Introduce a consistent style for vmlinux.lds.Sam Ravnborg1-150/+189
This style will be consitent with all other arch's - soon. In addition: - Moved a few labels inside brackets for the sections they specify to prevent that linker alignmnet made them point before the section start Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Add GT641xx IRQ routines.Yoichi Yuasa2-0/+132
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] i8295 cleanups.Yoichi Yuasa1-6/+8
o Move i8259 function declarations to include/asm-mips/i8259.h o Make i8259.c functions static where possible. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Kill useless volatile keywordRalf Baechle1-2/+2
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] cleanup struct irqaction initializersThomas Gleixner1-1/+3
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> CC: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] Add support for BCM47XX CPUs.Aurelien Jarno2-0/+22
Note that the BCM4710 does not support the wait instruction, this is not a mistake in the code. It originally comes from the OpenWrt patches. Cc: Michael Buesch <mb@bu3sch.de> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Florian Schirmer <jolt@tuxbox.org> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] SMTC: Microoptimize atomic_postincrement for non-weak consistency.Ralf Baechle1-1/+1
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-12[MIPS] IRQ Affinity Support for SMTC on Malta PlatformKevin D. Kissell2-0/+66
Signed-off-by: Kevin D. Kissell <kevink@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-10-01[MIPS] vmlinux.lds.S: Handle note sectionsMaciej W. Rozycki1-0/+2
Store any note sections after the exception tables like the other architectures do. This is required for .note.gnu.build-id emitted from binutils 2.18 onwards if nothing else. Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-28[MIPS] Fix fallocate on o32 binary compat ABIKyle McMartin1-1/+1
MIPS was mistakenly forgetting to use the fallocate compat wrapper, which I noticed while cleaning up all the duplicate fallocate wrappers. Signed-off-by: Kyle McMartin <kyle@mcmartin.ca> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-24[MIPS] SMTC: Make ack_bad_irq() safe with no IM backstop.Ralf Baechle4-22/+8
Issue reported and original patch by Kevin Kissel, cleaner (imho) implementation by me. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-19[MIPS] cpu-bugs64.c: GCC 3.3 constraint workaroundMaciej W. Rozycki1-2/+2
Add a workaround to address warnings generated on the "n" constraint by GCC 3.3 and below. Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-14[MIPS] 20Kc: Disable use of WAIT instruction.Ralf Baechle1-1/+8
Another issue with 20Kc's WAIT, waiting for more details. With the 2.6.23 release immindent simply disable the use of WAIT instead of a more fancy workaround. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-14[MIPS] Add #include <linux/profile.h> to arch/mips/kernel/time.cYoichi Yuasa1-0/+1
It refer to CPU_PROFILING. arch/mips/kernel/time.c: In function 'local_timer_interrupt': arch/mips/kernel/time.c:142: error: implicit declaration of function 'profile_tick' arch/mips/kernel/time.c:142: error: 'CPU_PROFILING' undeclared (first use in this function) arch/mips/kernel/time.c:142: error: (Each undeclared identifier is reported only once arch/mips/kernel/time.c:142: error: for each function it appears in.) Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-14[MIPS] N32 needs to use compat_sys_futimesatJohannes Dickgreber1-1/+1
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-14[MIPS] rtlx: Fix build error.Ralf Baechle1-2/+0
CC arch/mips/kernel/rtlx.o cc1: warnings being treated as errors arch/mips/kernel/rtlx.c:59: warning: 'irq' defined but not used arch/mips/kernel/rtlx.c:60: warning: 'irq_num' defined but not used Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-09-14[MIPS] rtlx: fix int vs. long bug.Ralf Baechle1-1/+1
CC arch/mips/kernel/rtlx.o arch/mips/kernel/rtlx.c: In function 'rtlx_init': arch/mips/kernel/rtlx.c:114: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'long unsigned int' Signed-off-by: Ralf Baechle <ralf@linux-mips.org>