- 04 8月, 2010 40 次提交
-
-
由 Michal Simek 提交于
This is the first patch which add support for user application debugging through brki rX, 0x18 vector. This patch has side effect which also remove security issue to use brki rX, 0x18 to freeze kernel. Support for old gdb support via priviledged exception (brk r0, r0) is still there. It will be remove in future. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We need to save instruction and the latest Microblaze shouldn't have any problem with it. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Syscall can be called only from userspace that's why we don't need to check which space kernel come from. Kernel syscall calling is not check and shouldn't come throught this part of code. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We can save one more instruction if PT_MODE is saved in delay slot Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Save instructions by using delay slot and clear UMS only if kernel comes from user space. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Saving some instructions. Clear VMS bit if kernel comes from kernel space. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Saving instructions by adding 2/3 addik instructions to one. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Saving instruction with delay slot usage. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
This change save one instruction if kernel comes from kernel space. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Separate reg saving and mode setting. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
SAVE_STATE macro could be used by other rutines too. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We are not working with values from MSR that's why we can discard it and use r11 for different purpose without saving/restoring. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Remove set_vms because UMS is cleared and VMS is already setup. Optimize function calling which save one additional instruction. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
VMS is always setup because VM mode was before exception/syscall/interrupt. Kernel continues in kernel mode that's why we have to clear UMS bit if kernel comes from user space. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
PT_MODE stores information if kernel comes from user or kernel space. If come from user space, PT_MODE contains 0. If come from kernel store, PT_MODE contains non zero value. We don't need to save value 1. I am using r1 register which contains non zero value. This change save one additional instruction. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
SAVE_STATE macro could be used for user_exception or interrupt functions. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We don't need to save r0 to PT_R0. It could be additional operation. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We don't need to save R11 register. There is easy way to use only R1 which is saved and restore later. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
BIP is already setup. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Keep together all arguments for send_sig function. Move returning address to delay slot which is executed. Remove additional send_sig loading. I am using IMM part of rtbd instruction with r0. old solution: addik r11, r0, send_sig rtbd r11, 0 nop new solution: rtbd r0, send_sig nop There is one instruction saving. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
It is necessary to setup BIP and EE and clear EIP only for unaligned exception handler. The rest of hw exception handlers don't require it. HW exception occured and we are not in virtual mode. That's why we can do operations protected by EIP. Interrupt, next hw exception or syscall can't occur. EIP is cleared by rted. This change speedup page_fault hw exception handler which is critical path. There is also necessary to save R11 content before flag setup for unaligned exception. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
la is translated to addik by toolchain. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
SAVE_STATE macro is used in hw exceptions high level handling functions. Hw exception doesn't disable IRQ that's why we don't need to reenable it. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Remove code duplicity and move it to SAVE_STATE macro. There is no impact on performance. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We don't need to protect by BIP whole ret_from_trap/ret_from_exc code. Only restoring from user/hw exception should be covered. If BIP is setup, IRQ can't occur. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
There is a way howto remove Kernel Mode variable. It is easier to parse UMS bit in MSR to find out if I come from kernel or user space. Loading MSR content should be in one cycle and loading PER_CPU variable depends on memory state. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
We can save two instruction when MSR_VMS and MSR_UMS are setup in one instruction. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Save and restore R3/R4 registers in macros. This change help to cleanup entry.S. In ret_from_trap function we are saving returning value from syscall to pt_regs on stack that's why we don't need to save and restore these values before kernel functions (schedule, do_signal). Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Jump behind macro. We don't want to execute nop instruction again. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
_start symbol stores physical address where kernel is. Gdb uses this symbol for their purpose that's why we have to rename it. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Remove spaces and use tabs instead. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Microblaze has only 11 pvr regs according manual. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Lower shifting values ensure that shifted 32bit counter value doesn't exceed 64bit cycle variable too fast. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Microblaze has support for early printk. The second serial driver (uart16550/8250) has no microblaze support for early printk. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 FUJITA Tomonori 提交于
HAVE_ARCH_PCI_SET_DMA_MASK was removed in 2.6.34 (no architecture has the own implementation of pci_set_dma_mask). Signed-off-by: NFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
IRQsoff tracer requires to protect cpu_idle function to get correct timing report. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
I had to comment sched_clock generic function because of broken toolchain. It is fine grain timing. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Steven J. Magnani 提交于
Implement intelligent backtracing by searching for stack frame creation, and emitting only return addresses. Use print_hex_dump() to display the entire binary kernel stack. Limitation: MMU kernels are not currently able to trace beyond a system trap (interrupt, syscall, etc.). It is the intent of this patch to provide infrastructure that can be extended to add this capability later. Changes from V1: * Removed checks in find_frame_creation() that prevented location of the frame creation instruction in heavily optimized code * Various formatting/commenting/file location tweaks per review comments * Dropped Kconfig option to enable STACKTRACE as something logically separate Signed-off-by: NSteven J. Magnani <steve@digidescorp.com>
-
由 Steven J. Magnani 提交于
Allow developer to configure memory page size at compile time. Larger pages can improve performance on some workloads. Based on PowerPC code. Signed-off-by: NSteven J. Magnani <steve@digidescorp.com> Signed-off-by: NMichal Simek <monstr@monstr.eu>
-
由 Michal Simek 提交于
Add trace_hardirqs_off and trace_hardirqs_on to do_IRQ function. Signed-off-by: NMichal Simek <monstr@monstr.eu>
-