15 Jul, 2013
1 commit
-
The __cpuinit type of throwaway sections might have made sense
some time ago when RAM was more constrained, but now the savings
do not offset the cost and complications. For example, the fix in
commit 5e427ec2d0 ("x86: Fix bit corruption at CPU resume time")
is a good example of the nasty type of bugs that can be created
with improper use of the various __init prefixes.After a discussion on LKML[1] it was decided that cpuinit should go
the way of devinit and be phased out. Once all the users are gone,
we can then finally remove the macros themselves from linux/init.h.Note that some harmless section mismatch warnings may result, since
notify_cpu_starting() and cpu_up() are arch independent (kernel/cpu.c)
are flagged as __cpuinit -- so if we remove the __cpuinit from
arch specific callers, we will also get section mismatch warnings.
As an intermediate step, we intend to turn the linux/init.h cpuinit
content into no-ops as early as possible, since that will get rid
of these warnings. In any case, they are temporary and harmless.This removes all the arch/hexagon uses of the __cpuinit macros from
all C files. Currently hexagon does not have any __CPUINIT used in
assembly files.[1] https://lkml.org/lkml/2013/5/20/589
Cc: Richard Kuo
Acked-by: Richard Kuo
Cc: linux-hexagon@vger.kernel.org
Signed-off-by: Paul Gortmaker
04 Jul, 2013
2 commits
-
Prepare for removing num_physpages and simplify mem_init().
Signed-off-by: Jiang Liu
Cc: Richard Kuo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Concentrate code to modify totalram_pages into the mm core, so the arch
memory initialized code doesn't need to take care of it. With these
changes applied, only following functions from mm core modify global
variable totalram_pages: free_bootmem_late(), free_all_bootmem(),
free_all_bootmem_node(), adjust_managed_page_count().With this patch applied, it will be much more easier for us to keep
totalram_pages and zone->managed_pages in consistence.Signed-off-by: Jiang Liu
Acked-by: David Howells
Cc: "H. Peter Anvin"
Cc: "Michael S. Tsirkin"
Cc:
Cc: Arnd Bergmann
Cc: Catalin Marinas
Cc: Chris Metcalf
Cc: Geert Uytterhoeven
Cc: Ingo Molnar
Cc: Jeremy Fitzhardinge
Cc: Jianguo Wu
Cc: Joonsoo Kim
Cc: Kamezawa Hiroyuki
Cc: Konrad Rzeszutek Wilk
Cc: Marek Szyprowski
Cc: Mel Gorman
Cc: Michel Lespinasse
Cc: Minchan Kim
Cc: Rik van Riel
Cc: Rusty Russell
Cc: Tang Chen
Cc: Tejun Heo
Cc: Thomas Gleixner
Cc: Wen Congyang
Cc: Will Deacon
Cc: Yasuaki Ishimatsu
Cc: Yinghai Lu
Cc: Russell King
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
29 Jun, 2013
1 commit
-
Signed-off-by: Al Viro
10 May, 2013
1 commit
-
Pull removal of GENERIC_GPIO from Grant Likely:
"GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any
valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
is possible to do so which has been causing confusion and breakage.
This branch does the work to completely eliminate GENERIC_GPIO."* tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
gpio: update gpio Chinese documentation
Remove GENERIC_GPIO config option
Convert selectors of GENERIC_GPIO to GPIOLIB
blackfin: force use of gpiolib
m68k: coldfire: use gpiolib
mips: pnx833x: remove requirement for GENERIC_GPIO
openrisc: default GENERIC_GPIO to false
avr32: default GENERIC_GPIO to false
xtensa: remove explicit selection of GENERIC_GPIO
sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
powerpc: remove redundant GENERIC_GPIO selection
unicore32: default GENERIC_GPIO to false
unicore32: remove unneeded select GENERIC_GPIO
arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
arm: remove redundant GENERIC_GPIO selection
mips: alchemy: require gpiolib
mips: txx9: change GENERIC_GPIO to GPIOLIB
mips: loongson: use GPIO driver on CONFIG_GPIOLIB
mips: remove redundant GENERIC_GPIO select
09 May, 2013
1 commit
-
Pull Hexagon fixes from Richard Kuo:
"A bug fix and a Kconfig cleanup"* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
HEXAGON: Remove non existent reference to GENERIC_KERNEL_EXECVE & GENERIC_KERNEL_THREAD
Hexagon: fix register used to call do_work_pending
08 May, 2013
2 commits
-
Signed-off-by: Alexander Shiyan
Signed-off-by: Richard Kuo -
ABI v2 callee saves start at R24.
Signed-off-by: Richard Kuo
01 May, 2013
32 commits
-
Pull Hexagon fixes from Richard Kuo:
"Changes for the Hexagon architecture (and one touching OpenRISC).They include various fixes to make use of additional arch features and
cleanups. The largest functional change is a cleanup of the signal
and event return paths"* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel: (32 commits)
Hexagon: add v4 CS regs to core copyout macro
Hexagon: use correct translation for VMALLOC_START
Hexagon: use correct translations for DMA mappings
Hexagon: fix return value for notify_resume case in do_work_pending
Hexagon: fix signal number for user mem faults
Hexagon: remove two Kconfig entries
arch: remove CONFIG_GENERIC_FIND_NEXT_BIT again
Hexagon: update copyright dates
Hexagon: add translation types for __vmnewmap
Hexagon: fix signal.c compile error
Hexagon: break up user fn/arg register setting
Hexagon: use generic sys_fork, sys_vfork, and sys_clone
Hexagon: fix psp/sp macro
Hexagon: fix up int enable/disable at ret_from_fork
Hexagon: add IOMEM and _relaxed IO macros
Hexagon: switch to using the device type for IO mappings
Hexagon: don't print info for offline CPU's
Hexagon: add support for single-stepping (v4+)
Hexagon: use correct work mask when checking for more work
Hexagon: add support for additional exceptions
... -
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
With physical offsets, pava translations aren't just based
on PAGE_OFFSET anymore.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
The Kconfig entries for HEXAGON_VM and HEXAGON_ANGEL_TRAPS were added,
together with the configuration and makefiles for the Hexagon
architecture, in v3.2. They have never been used. They can safely be
removed.Signed-off-by: Paul Bolle
[rkuo@codeaurora.org: adjust for line changes in Kconfig]
Signed-off-by: Richard Kuo -
CONFIG_GENERIC_FIND_NEXT_BIT was removed in v3.0, but reappeared in two
architectures. Remove it again.Signed-off-by: Paul Bolle
Acked-by: Jonas Bonn
Signed-off-by: Richard Kuo -
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Based on feedback from Al Viro; previous-stack-pointer and
user reg for same should always be kept consistent.Signed-off-by: Richard Kuo
-
Check return coming out of check_work_pending, and if copy_thread
passed us a function in r24, call it. Based on feedback from Al
Viro.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Uncached on our architecture can still have side effects
such as canceled/replayed transactions; device type prevents
this.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Hardware single-step is only available on v4 and later
architectures.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Add multi-reg-write and unaligned-PC exceptions.
Signed-off-by: Richard Kuo
-
Use the exact number of pages needed to be mapped pre-VA-jump,
then map 896MB afterwards, which the arch mem init will fix up.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
This fixes the return value of sigreturn and moves the work pending check
into a c routine for readability and fixes the loop for multiple pending
signals. Based on feedback from Al Viro.Signed-off-by: Richard Kuo
-
Add support for a couple new v4+ registers, along with
newer save/restore pt_regs.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo
-
Add support for loading the kernel at a physical offset. The
offset should still be 4M aligned.Signed-off-by: Richard Kuo
-
Signed-off-by: Richard Kuo