aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-04-01microblaze: Remove additional resr and rear loadingMichal Simek1-15/+3
RESR and REAR uses the same regs in whole file. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Change register usage for ESR and EARMichal Simek1-35/+35
This change synchronize register usage in code. ESR = R4 EAR = R3 Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Prepare work for optimization in exception codeMichal Simek1-6/+3
Any sync branch must follow mts instructions not mfs. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Add DEBUG optionMichal Simek1-0/+2
Disable debug option in asm code. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Support systems without lmb bramMichal Simek1-0/+6
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: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Sync strlen, strnlen, copy_to/from_userMichal Simek1-56/+32
Last sync. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Unify __copy_tofrom_userMichal Simek2-39/+22
Move to generic location. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Move functions to generic locationMichal Simek3-200/+61
noMMU and MMU use them. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Fix put_user for noMMUMichal Simek1-22/+56
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: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Fix get_user macro for noMMUMichal Simek1-23/+66
Use unified version. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: fix clear_user for noMMU kernelMichal Simek1-45/+36
Previous patches fixed only MMU version and this is the first patch for noMMU kernel Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: Fix strncpy_from_user functionMichal Simek1-3/+11
Generic implementation for noMMU and MMU version Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: fix copy_from_user macroMichal Simek1-9/+14
copy_from_user macro also use copy_tofrom_user function Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: copy_to_user unificationMichal Simek1-9/+16
noMMU and MMU kernel will use copy copy_tofrom_user asm implementation. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: sync put/get/clear_user macrosMichal Simek1-37/+69
Add macro description and resort. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: fix put_user and get_user macrosMichal Simek1-51/+49
Use FIXUP macros and resort them. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: fix __get_user_asm macroMichal Simek1-16/+17
It is used __FIXUP_SECTION and __EX_TABLE_SECTION macros. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: uaccess: fix clean user macroMichal Simek1-34/+55
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: Michal Simek <[email protected]>
2010-04-01microblaze: move noMMU __range_ok function to uaccess.hMichal Simek2-9/+6
The same noMMU and MMU functions should be placed in one file. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Move exception_table_entry upwardMichal Simek1-16/+15
Just sort to be able remove whole block. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Remove segment.hMichal Simek5-52/+34
I would like to use asm-generic uaccess.h where are segment macros defined. This is just first step. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Remove memset in free_init_pagesMichal Simek1-1/+0
We don't need to do it. Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Makefile cleanupsArun Bhanu1-4/+0
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: Arun Bhanu <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Fix Makefile to delete build generated filesArun Bhanu2-1/+3
'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/96 Signed-off-by: Arun Bhanu <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Add a missing single quote to make 'make help' happyArun Bhanu1-1/+1
'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: Arun Bhanu <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2010-04-01microblaze: Fix "kstack=" parsingSteven J. Magnani1-4/+2
The "kstack=" command line parameter is not parsed correctly. All proper values are interpreted as zero. Signed-off-by: Steven J. Magnani <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2010-04-01x86,kgdb: Always initialize the hw breakpoint attributeJason Wessel1-1/+1
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: Jason Wessel <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: 2.6.33 <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]>
2010-04-01perf: Use hot regs with software sched switch/migrate eventsFrederic Weisbecker3-12/+15
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: Frederic Weisbecker <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: David Miller <[email protected]>
2010-04-01perf: Correctly align perf event tracing bufferFrederic Weisbecker1-2/+9
The trace event buffer used by perf to record raw sample events is typed as an array of char and may then not be aligned to 8 by alloc_percpu(). But we need it to be aligned to 8 in sparc64 because we cast this buffer into a random structure type built by the TRACE_EVENT() macro to store the traces. So if a random 64 bits field is accessed inside, it may be not under an expected good alignment. Use an array of long instead to force the appropriate alignment, and perform a compile time check to ensure the size in byte of the buffer is a multiple of sizeof(long) so that its actual size doesn't get shrinked under us. This fixes unaligned accesses reported while using perf lock in sparc 64. Suggested-by: David Miller <[email protected]> Suggested-by: Tejun Heo <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: Paul Mackerras <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: David Miller <[email protected]> Cc: Steven Rostedt <[email protected]>
2010-04-01drm/radeon/kms: enable ACPI powermanagement mode on radeon gpus.Dave Airlie2-0/+8
Some GPUs have an APM/ACPI PM mode selection switch and some BIOSes set this to APM. We really want this in ACPI mode for Linux. Signed-off-by: Dave Airlie <[email protected]>
2010-04-01drm/radeon/kms: rs400/480 should set common registers.Dave Airlie1-0/+2
These GPUs should be setting these registers up also. Signed-off-by: Dave Airlie <[email protected]>
2010-04-01drm/radeon/kms: add sanity check to wptr.Dave Airlie1-0/+2
If we resume in a bad way, we'll get 0xffffffff in wptr, and then oops with no console. This just adds a sanity check so that we can avoid the oops and hopefully get more details out of people's systems. Signed-off-by: Dave Airlie <[email protected]>
2010-04-01drm/radeon/kms/evergreen: get DP workingAlex Deucher1-3/+12
Need to enable the VID stream after link training Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2010-03-31Merge branch 'master' of ↵David S. Miller14-31/+55
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
2010-03-31sparc: Fix regset register window handling.David S. Miller2-0/+8
We have to adjust 'reg_window' down by 16 becuase the 'pos' iterator we'll use to index into the stack slots will be between 16 and 32. Signed-off-by: David S. Miller <[email protected]>
2010-03-31x86: Make e820_remove_range to handle all covered caseYinghai Lu1-4/+20
Rusty found on lguest with trim_bios_range, max_pfn is not right anymore, and looks e820_remove_range does not work right. [ 0.000000] BIOS-provided physical RAM map: [ 0.000000] LGUEST: 0000000000000000 - 0000000004000000 (usable) [ 0.000000] Notice: NX (Execute Disable) protection missing in CPU or disabled in BIOS! [ 0.000000] DMI not present or invalid. [ 0.000000] last_pfn = 0x3fa0 max_arch_pfn = 0x100000 [ 0.000000] init_memory_mapping: 0000000000000000-0000000003fa0000 root cause is: the e820_remove_range doesn't handle the all covered case. e820_remove_range(BIOS_START, BIOS_END - BIOS_START, ...) produces a bogus range as a result. Make it match e820_update_range() by handling that case too. Reported-by: Rusty Russell <[email protected]> Signed-off-by: Yinghai Lu <[email protected]> Tested-by: Rusty Russell <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: H. Peter Anvin <[email protected]>
2010-03-31IB/cm: Fix device_create() return value checkJani Nikula1-1/+1
Use IS_ERR() instead of comparing to NULL. Signed-off-by: Jani Nikula <[email protected]> Signed-off-by: Roland Dreier <[email protected]>
2010-03-31eeepc-wmi: new driver for WMI based hotkeys on Eee PC laptopsYong Wang3-0/+168
Add a WMI driver for Eee PC laptops. Currently it only supports hotkeys. Signed-off-by: Yong Wang <[email protected]> Signed-off-by: Matthew Garrett <[email protected]> Acked-by: Dmitry Torokhov <[email protected]>
2010-03-31asus-laptop: fix warning in asus_handle_initCorentin Chary1-2/+2
In function 'asus_laptop_get_info': warning: passing argument 3 of 'asus_handle_init' from incompatible pointer type note: expected 'char **' but argument is of type 'const char **' Introduced by commit c21085108a02e1b838c34f3650c8cc9fbd178615 ("asus-laptop: fix style problems reported by checkpath.pl"). Signed-off-by: Corentin Chary <[email protected]> Signed-off-by: Matthew Garrett <[email protected]>
2010-03-31fat: fix buffer overflow in vfat_create_shortname()Nikolaus Schulz1-3/+3
When using the string representation of a random counter as part of the base name, ensure that it is no longer than 4 bytes. Since we are repeatedly decrementing the counter in a loop until we have found a unique base name, the counter may wrap around zero; therefore, it is not enough to mask its higher bits before entering the loop, this must be done inside the loop. [[email protected]: use snprintf()] Signed-off-by: Nikolaus Schulz <[email protected]> Cc: [email protected] Signed-off-by: OGAWA Hirofumi <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-03-31genirq: Force MSI irq handlers to run with interrupts disabledThomas Gleixner1-0/+10
Network folks reported that directing all MSI-X vectors of their multi queue NICs to a single core can cause interrupt stack overflows when enough interrupts fire at the same time. This is caused by the fact that we run interrupt handlers by default with interrupts enabled unless the driver reuqests the interrupt with the IRQF_DISABLED set. The NIC handlers do not set this flag, so simultaneous interrupts can nest unlimited and cause the stack overflow. The only safe counter measure is to run the interrupt handlers with interrupts disabled. We can't switch to this mode in general right now, but it is safe to do so for MSI interrupts. Force IRQF_DISABLED for MSI interrupt handlers. Signed-off-by: Thomas Gleixner <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Alan Cox <[email protected]> Cc: David Miller <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Arnaldo Carvalho de Melo <[email protected]> Cc: [email protected]
2010-03-31bonding: bond_xmit_roundrobin() fixEric Dumazet1-1/+1
Commit a2fd940f (bonding: fix broken multicast with round-robin mode) added a problem on litle endian machines. drivers/net/bonding/bond_main.c:4159: warning: comparison is always false due to limited range of data type Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-03-31ALSA: hda: Fix 0 dB offset for Lenovo Thinkpad models using AD1981Daniel T Chen1-0/+8
BugLink: https://launchpad.net/bugs/551606 The OR's hardware distorts at PCM 100% because it does not correspond to 0 dB. Fix this in patch_ad1981() for all models using the Thinkpad quirk. Reported-by: Jane Silber Cc: <[email protected]> Signed-off-by: Daniel T Chen <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2010-03-30drivers/net: Add missing unlockJulia Lawall1-1/+3
Unlock the lock before leaving the function. A simplified version of the semantic patch that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r exists@ expression E1; identifier f; @@ f (...) { <+... * spin_lock_irqsave (E1,...); ... when != E1 * return ...; ...+> } // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-03-30net: gianfar - align BD ring size console messagesKim Phillips1-2/+2
fix this: eth2: :RX BD ring size for Q[0]: 256 eth2:TX BD ring size for Q[0]: 256 to look like: eth2: RX BD ring size for Q[0]: 256 eth2: TX BD ring size for Q[0]: 256 Signed-off-by: Kim Phillips <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-03-30net: gianfar - initialize per-queue statisticsKim Phillips1-2/+2
Interfaces come up claiming having already received 3.0 GiB. Use kzalloc to properly initialize per-queue data. Signed-off-by: Kim Phillips <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-03-30gianfar: Fix a memory leak in gianfar close codeAndy Fleming1-2/+2
gianfar needed to ensure existence of the *skbuff arrays before freeing the skbs in them, rather than ensuring their nonexistence. Signed-off-by: Andy Fleming <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-03-31drm/radeon/kms: add hw_i2c module optionAlex Deucher3-3/+10
Turn off hw i2c by default except for mm i2c which is hw only until we sort out the remaining prescale issues on older chips. hw i2c can be enabled with hw_i2c=1. Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2010-03-31drm/radeon/kms: use new pre/post_xfer i2c bit algo hooksAlex Deucher3-79/+64
This allows us to remove the internal bit algo bus used by the radeon i2c algo. We now register a radeon algo adapter if the gpio line is hw capable and the hw inplementation is available, otherwise we register a bit algo adapter. Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2010-03-31Merge branch 'v2.6.34-rc2' into drm-linusDave Airlie7925-222275/+511802