- 03 4月, 2010 1 次提交
-
-
由 Peter Zijlstra 提交于
Because we need to have cpu identification things done by the time we run CPU_STARTING notifiers. ( This init ordering will be relied on by the next fix. ) Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <1269353485.5109.48.camel@twins> Signed-off-by: NIngo Molnar <mingo@elte.hu>
-
- 01 4月, 2010 37 次提交
-
-
由 Michal Simek 提交于
Word copying is used only for aligned addresses. Here is space for improving to use any better copying technique. Look at memcpy implementation. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
If early printk console is not enabled then all messages are written to log buffer. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
I forget to change register name in comments. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
TLB size was hardcoded in asm code. This patch brings ability to change TLB size only in one place. (mmu.h). Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
I forget to remove pci Kconfig option. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
On the base on GCOV analytics is helpful to add likely/unlikely macros. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Cachegrind analysis need this fix to be able to log asm functions. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
To be able to do trace TLB operations. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Sync labels. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
RESR and REAR uses the same regs in whole file. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
This change synchronize register usage in code. ESR = R4 EAR = R3 Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Any sync branch must follow mts instructions not mfs. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Disable debug option in asm code. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
When the system has no lmb bram, main memory should be start from zero because of microblaze vectors. DTS fragment could look like: DDR2_SDRAM: memory@0 { device_type = "memory"; reg = < 0x0 0x10000000 >; } ; Then you have to setup CONFIG_KERNEL_BASE_ADDR=0 which caused that kernel physical start address will be zero. On reset vector place will be jump to 0x100 and on 0x100 starts kernel text. You have to solve how to load the kernel before cpu starts. Tested with XMD. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Last sync. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Move to generic location. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
noMMU and MMU use them. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Here is small regression on dhrystone tests and I think that on all benchmarking tests. It is due to better checking mechanism in put_user macro Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Use unified version. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Previous patches fixed only MMU version and this is the first patch for noMMU kernel Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Generic implementation for noMMU and MMU version Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
copy_from_user macro also use copy_tofrom_user function Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
noMMU and MMU kernel will use copy copy_tofrom_user asm implementation. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Add macro description and resort. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Use FIXUP macros and resort them. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
It is used __FIXUP_SECTION and __EX_TABLE_SECTION macros. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
This is the first patch which does uaccess unification. I choosed to do several patches to be able to use bisect in future if any fault happens. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
The same noMMU and MMU functions should be placed in one file. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Just sort to be able remove whole block. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
I would like to use asm-generic uaccess.h where are segment macros defined. This is just first step. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We don't need to do it. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Arun Bhanu 提交于
If CONFIG_INITRAMFS_SOURCE is set, "scripts/gen_initramfs_list.sh" checks if the cpio image exists. Remove the duplicate check from the Makefile. Remove the "clean-kernel" variable which is unused in the Makefile and is not used by the Kbuild. Signed-off-by: NArun Bhanu <arun@bhanu.net> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Arun Bhanu 提交于
'make clean' does not to delete the following build generated file: arch/microblaze/boot/linux.bin.ub 'make mrproper' does not to delete the following build generated files: arch/microblaze/boot/simpleImage.* Fix the Makefile to delete these build generated files. See [1] for a discussion on why simpleImage.* files are deleted with 'make mrproper' and not with 'make clean'. [1] http://lkml.org/lkml/2010/3/12/96Signed-off-by: NArun Bhanu <arun@bhanu.net> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Arun Bhanu 提交于
'make ARCH=microblaze help' fails with the following error due to a missing single quote. /bin/sh: -c: line 0: unexpected EOF while looking for matching `'' /bin/sh: -c: line 1: syntax error: unexpected end of file make: *** [help] Error 2 Signed-off-by: NArun Bhanu <arun@bhanu.net> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Steven J. Magnani 提交于
The "kstack=" command line parameter is not parsed correctly. All proper values are interpreted as zero. Signed-off-by: NSteven J. Magnani <steve@digidescorp.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Jason Wessel 提交于
It is required to call hw_breakpoint_init() on an attr before using it in any other calls. This fixes the problem where kgdb will sometimes fail to initialize on x86_64. Signed-off-by: NJason Wessel <jason.wessel@windriver.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: 2.6.33 <stable@kernel.org> LKML-Reference: <1269975907-27602-1-git-send-email-jason.wessel@windriver.com> Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com>
-
由 Frederic Weisbecker 提交于
Scheduler's task migration events don't work because they always pass NULL regs perf_sw_event(). The event hence gets filtered in perf_swevent_add(). Scheduler's context switches events use task_pt_regs() to get the context when the event occured which is a wrong thing to do as this won't give us the place in the kernel where we went to sleep but the place where we left userspace. The result is even more wrong if we switch from a kernel thread. Use the hot regs snapshot for both events as they belong to the non-interrupt/exception based events family. Unlike page faults or so that provide the regs matching the exact origin of the event, we need to save the current context. This makes the task migration event working and fix the context switch callchains and origin ip. Example: perf record -a -e cs Before: 10.91% ksoftirqd/0 0 [k] 0000000000000000 | --- (nil) perf_callchain perf_prepare_sample __perf_event_overflow perf_swevent_overflow perf_swevent_add perf_swevent_ctx_event do_perf_sw_event __perf_sw_event perf_event_task_sched_out schedule run_ksoftirqd kthread kernel_thread_helper After: 23.77% hald-addon-stor [kernel.kallsyms] [k] schedule | --- schedule | |--60.00%-- schedule_timeout | wait_for_common | wait_for_completion | blk_execute_rq | scsi_execute | scsi_execute_req | sr_test_unit_ready | | | |--66.67%-- sr_media_change | | media_changed | | cdrom_media_changed | | sr_block_media_changed | | check_disk_change | | cdrom_open v2: Always build perf_arch_fetch_caller_regs() now that software events need that too. They don't need it from modules, unlike trace events, so we keep the EXPORT_SYMBOL in trace_event_perf.c Signed-off-by: NFrederic Weisbecker <fweisbec@gmail.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: David Miller <davem@davemloft.net>
-
- 30 3月, 2010 2 次提交
-
-
由 David S. Miller 提交于
For 32-bit processes, we save the full 64-bits of the regs in pt_regs. But unlike when the userspace actually does load and store instructions, the top 32-bits don't get automatically truncated by the cpu in kernel mode (because the kernel doesn't execute with PSTATE_AM address masking enabled). So we have to do it by hand. Reported-by: NFrederic Weisbecker <fweisbec@gmail.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Yinghai Lu 提交于
When CONFIG_NO_BOOTMEM=y, it could use memory more effiently, or in a more compact fashion. Example: Allocated new RAMDISK: 00ec2000 - 0248ce57 Move RAMDISK from 000000002ea04000 - 000000002ffcee56 to 00ec2000 - 0248ce56 The new RAMDISK's end is not page aligned. Last page could be shared with other users. When free_init_pages are called for initrd or .init, the page could be freed and we could corrupt other data. code segment in free_init_pages(): | for (; addr < end; addr += PAGE_SIZE) { | ClearPageReserved(virt_to_page(addr)); | init_page_count(virt_to_page(addr)); | memset((void *)(addr & ~(PAGE_SIZE-1)), | POISON_FREE_INITMEM, PAGE_SIZE); | free_page(addr); | totalram_pages++; | } last half page could be used as one whole free page. So page align the boundaries. -v2: make the original initramdisk to be aligned, according to Johannes, otherwise we have the chance to lose one page. we still need to keep initrd_end not aligned, otherwise it could confuse decompressor. -v3: change to WARN_ON instead, suggested by Johannes. -v4: use PAGE_ALIGN, suggested by Johannes. We may fix that macro name later to PAGE_ALIGN_UP, and PAGE_ALIGN_DOWN Add comments about assuming ramdisk start is aligned in relocate_initrd(), change to re get ramdisk_image instead of save it to make diff smaller. Add warning for wrong range, suggested by Johannes. -v6: remove one WARN() We need to align beginning in free_init_pages() do not copy more than ramdisk_size, noticed by Johannes Reported-by: NStanislaw Gruszka <sgruszka@redhat.com> Tested-by: NStanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: NYinghai Lu <yinghai@kernel.org> Acked-by: NJohannes Weiner <hannes@cmpxchg.org> Cc: David Miller <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> LKML-Reference: <1269830604-26214-3-git-send-email-yinghai@kernel.org> Signed-off-by: NIngo Molnar <mingo@elte.hu>
-