aboutsummaryrefslogtreecommitdiff
path: root/arch/um
AgeCommit message (Collapse)AuthorFilesLines
2008-02-05uml: tidy pgtable.hJeff Dike1-0/+1
Large pieces of include/asm/pgtable.h were unused cruft. This uncovered arch/um/kernel/trap.c needing skas.h in order to get ptrace_faultinfo. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: tidy kern_util.hJeff Dike25-173/+89
Tidy kern_util.h. It turns out that most of the function declarations aren't used, so they can go away. os.h no longer includes kern_util.h, so files which got it through os.h now need to include it directly. A number of other files never needed it, so these includes are deleted. The structure which was used to pass signal handlers from the kernel side to the userspace side is gone. Instead, the handlers are declared here, and used directly from libc code. This allows arch/um/os-Linux/trap.c to be deleted, with its remnants being moved to arch/um/os-Linux/skas/trap.c. arch/um/os-Linux/tty.c had its inclusions changed, and it needed some style attention, so it got tidied. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: allow LFLAGS on command lineJeff Dike1-1/+3
Allow LFLAGS to be given to make and have the expected effect. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: delete some unused headersJeff Dike3-39/+0
Robert Day noticed a few unused headers in UML, so this gets rid of them. Cc: "Robert P. J. Day" <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: borrow const.h techniquesJeff Dike3-21/+29
Suggested by Geert Uytterhoeven - use const.h to get constants that are usable in both C and assembly. I can't include it directly since this code can't include kernel headers. const.h is also for numeric constants that can be typed by tacking a "UL" or similar on the end. The constants here have to be typed by casting them. So, the relevant parts of const.h are copied here and modified in order to allow the constants to be uncasted in assembly and casted in C. Signed-off-by: Jeff Dike <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: clone.c tidyingJeff Dike1-14/+18
clone.c needed some style attention - updated copyright include trimming coding style Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: console driver cleanupsJeff Dike1-17/+2
Console driver cleanups - Changed an instance of foo = bar + foo to foo += bar Removed checks of tty->stopped - I don't think the low-level driver has any business looking at that Removed an annoying warning Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: GPROF needs to depend on FRAME_POINTERKarol Swietlicki1-1/+1
This is a short Kconfig fix for a problem in User Mode Linux. Frame pointers are required for gprof support to work. Signed-off-by: Karol Swietlicki <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: SMP needs to depend on BROKEN for nowJeff Dike1-2/+1
SMP still needs to depend on BROKEN for now. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: const and other tidyingWANG Cong7-13/+12
This patch also does some improvements for uml code. Improvements include dropping unnecessary cast, killing some unnecessary code and still some constifying for pointers etc.. Signed-off-by: WANG Cong <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: further bugs.c tidyingJeff Dike4-36/+24
bugs.c, for both i386 and x86_64, can undergo further cleaning - The i386 arch_check_bugs only does one thing, so we might as well inline the cmov checking. The i386 includes can be trimmed down a bit. arch_init_thread wasn't used, so it is deleted. The panics in arch_handle_signal are turned into printks because the process is about to get segfaulted anyway, so something is dying no matter what happens here. Also, the return value was always the same, so it contained no information, so it can be void instead. The name is changed to arch_examine_signal because it doesn't handle anything. The caller of arch_handle_signal, relay_signal, does things in a different order. The kernel-mode signal check is now first, which puts everything else together, making things a bit clearer conceptually. [[email protected]: coding-style fixes] Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: remove now unused codeKarol Swietlicki1-137/+0
This patch finishes what the previous one started. The code was not used after my first patch, and now can be removed with ease. [ jdike - also deleted the #if 0 lcall stuff ] Signed-off-by: Karol Swietlicki <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: improve detection of host cmovKarol Swietlicki2-9/+32
This patch introduces a new way of checking for the cmov instruction. I use signal handling instead of reading /proc/cpuinfo. [ jdike - Fiddled the asm to make it obvious that it didn't mess with any in-use registers and made test_for_host_cmov void ] [[email protected]: coding-style fixes] Signed-off-by: Karol Swietlicki <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: fix URLs in Kconfig and help stringsKarol Swietlicki5-11/+11
This patch updates links which broke during the transition to the new UML website. Signed-off-by: Karol Swietlicki <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: document new ubd flagJeff Dike1-1/+4
The ubd help message didn't document the 'c' flag. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: get rid of asmlinkageJeff Dike1-4/+5
Get rid of asmlinkage and remove some old cruft from asm/linkage.h. [[email protected]: coding-style fixes] Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: implement get_wchanJeff Dike1-0/+35
Implement get_wchan - the algorithm is similar to x86. It starts with the stack pointer of the process in question and looks above that for addresses that are kernel text. The second one which isn't in the scheduler is the one that's returned. The first one is ignored because that will be UML's own context switching routine. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: code tidying under arch/um/os-LinuxWANG Cong6-20/+28
This patch contains varied fixes and improvements for some files under arch/um/os-Linux/, such as a typo fix in a perror message, a missing argument fix for a printf, some constifying for pointers and so on. [ jdike - made sigprocmask failure return -errno instead of -1 ] Signed-off-by: WANG Cong <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: remove xmm checking on x86Karol Swietlicki1-3/+0
This patch removes some code which ran at every boot, but does not seem to do anything anymore. Please test. It works for me but mistakes can happen. Signed-off-by: Karol Swietlicki <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05uml: arch/um/include/init.h needs a definition of __usedJeff Dike1-11/+14
init.h started breaking now for some reason. It turns out that there wasn't a definition of __used. Fixed this by copying the relevant stuff from compiler.h in the userspace case, and including compiler.h in the kernel case. [[email protected]: added definition of __section] Signed-off-by: Jeff Dike <[email protected]> Cc: WANG Cong <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-05add mm argument to pte/pmd/pud/pgd_freeBenjamin Herrenschmidt2-5/+5
(with Martin Schwidefsky <[email protected]>) The pgd/pud/pmd/pte page table allocation functions get a mm_struct pointer as first argument. The free functions do not get the mm_struct argument. This is 1) asymmetrical and 2) to do mm related page table allocations the mm argument is needed on the free function as well. [[email protected]: i386 fix] [[email protected]: coding-syle fixes] Signed-off-by: Benjamin Herrenschmidt <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]> Cc: <[email protected]> Signed-off-by: Kamalesh Babulal <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2008-02-04Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivialLinus Torvalds1-1/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (79 commits) Jesper Juhl is the new trivial patches maintainer Documentation: mention email-clients.txt in SubmittingPatches fs/binfmt_elf.c: spello fix do_invalidatepage() comment typo fix Documentation/filesystems/porting fixes typo fixes in net/core/net_namespace.c typo fix in net/rfkill/rfkill.c typo fixes in net/sctp/sm_statefuns.c lib/: Spelling fixes kernel/: Spelling fixes include/scsi/: Spelling fixes include/linux/: Spelling fixes include/asm-m68knommu/: Spelling fixes include/asm-frv/: Spelling fixes fs/: Spelling fixes drivers/watchdog/: Spelling fixes drivers/video/: Spelling fixes drivers/ssb/: Spelling fixes drivers/serial/: Spelling fixes drivers/scsi/: Spelling fixes ...
2008-02-03arch/um: Spelling fixesJoe Perches1-1/+1
Signed-off-by: Joe Perches <[email protected]> Signed-off-by: Adrian Bunk <[email protected]>
2008-02-03Move Kconfig.instrumentation to arch/Kconfig and init/KconfigMathieu Desnoyers1-2/+0
Move the instrumentation Kconfig to arch/Kconfig for architecture dependent options - oprofile - kprobes and init/Kconfig for architecture independent options - profiling - markers Remove the "Instrumentation Support" menu. Everything moves to "General setup". Delete the kernel/Kconfig.instrumentation file. Signed-off-by: Mathieu Desnoyers <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]>
2008-01-30UML: remove remaining FASTCALL usesHarvey Harrison1-2/+2
With the x86 removal, FASTCALL is always empty now. Signed-off-by: Harvey Harrison <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2008-01-30UML: change sigcontext fields to match x86Jeff Dike2-60/+60
git-x86, in commit 70aa1bd3839e3ec74ce65316528a82570e8de666, changed a lot of the sigcontext field names. This patch changes UML usage to match. I also changed includes of generic headers from "" to <>. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2008-01-28remove __attribute_used__Adrian Bunk1-13/+13
Remove the deprecated __attribute_used__. [Introduce __section in a few places to silence checkpatch /sam] Signed-off-by: Adrian Bunk <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]>
2008-01-28all archs: consolidate init and exit sections in vmlinux.lds.hSam Ravnborg2-4/+4
This patch consolidate all definitions of .init.text, .init.data and .exit.text, .exit.data section definitions in the generic vmlinux.lds.h. This is a preparational patch - alone it does not buy us much good. Signed-off-by: Sam Ravnborg <[email protected]>
2008-01-28blk_end_request: changing um (take 4)Kiyoshi Ueda1-12/+4
This patch converts um to use blk_end_request interfaces. Related 'uptodate' arguments are converted to 'error'. As a result, the interface of internal function, ubd_end_request(), is changed. Cc: Jeff Dike <[email protected]> Signed-off-by: Kiyoshi Ueda <[email protected]> Signed-off-by: Jun'ichi Nomura <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2007-12-23uml: user of helper_wait() got missed when it got extra argumentsAl Viro1-2/+2
Signed-off-by: Al Viro <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-12-17uml: stop gdb from deleting breakpoints when running UMLStanislaw Gruszka12-56/+50
Sometimes when UML is debugged gdb miss breakpoints. When process traced by gdb do fork, debugger remove breakpoints from child address space. There is possibility to trace more than one fork, but this not work with UML, I guess (only guess) there is a deadlock - gdb waits for UML and UML waits for gdb. When clone() is called with SIGCHLD and CLONE_VM flags, gdb see this as PTRACE_EVENT_FORK not as PTRACE_EVENT_CLONE and remove breakpoints from child and at the same time from traced process, because either have the same address space. Maybe it is possible to do fix in gdb, but I'm not sure if there is easy way to find out if traced and child processes share memory. So I do fix for UML, it simply do not call clone() with both SIGCHLD and CLONE_VM flags together. Additionally __WALL flag is used for waitpid() to assure not miss clone and normal process events. [ jdike - checkpatch fixes ] Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-12-11[UM]: Fix use of skb after netif_rxJulia Lawall1-1/+1
Recently, Wang Chen submitted a patch (d30f53aeb31d453a5230f526bea592af07944564) to move a call to netif_rx(skb) after a subsequent reference to skb, because netif_rx may call kfree_skb on its argument. The same problem occurs in some other drivers as well. This was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ expression skb, e,e1; @@ ( netif_rx(skb); | netif_rx_ni(skb); ) ... when != skb = e ( skb = e1 | * skb ) // </smpl> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2007-12-05no need to mess with KBUILD_CFLAGS on uml-i386 anymoreAl Viro1-5/+0
Now that X86_32 is provided on Kconfig level for uml-i386, there's no need to play with it explicitly on Makefile level anymore. Signed-off-by: Al Viro <[email protected]> Acked-by: Jeff Dike <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-12-03uml: work around host tcsetattr bugJeff Dike1-1/+10
Under the conditions that UML uses it, tcgetattr is guaranteed to return -EINTR when the console is attached to /dev/ptmx, making generic_console_write hang because it loops, calling tcgetattr until it succeeds. This is a host bug - see http://marc.info/?l=linux-kernel&m=119618990807182&w=2 for the details. This patch works around it by blocking SIGIO while the terminal attributes are being fiddled. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-12-03uml: after_sleep_interval should return somethingJeff Dike1-0/+1
I forgot to have an int-returning function actually return something. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-12-03uml: keep UML Kconfig in sync with x86Jeff Dike1-0/+7
Fix a UML build breakage introduced by commit 1032c0ba9da5c5b53173ad2dcf8b2a2da78f8b17 - it introduces X86_32, with many things which UML needs depending on it. This patch adds definitions of X86_32 and RWSEM_XCHGADD_ALGORITHM to the UML/i386 Kconfig. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-29leak in do_ubd_requestMiklos Szeredi1-0/+1
Signed-off-by: Miklos Szeredi <[email protected]> Cc: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-29uml: fix !NO_HZ busy-loopJeff Dike1-3/+51
With NO_HZ disabled, the UML idle loop effectively becomes a busy loop, as it will sleep for no time. The cause was forgetting to restart the tick after waking up from sleep. It was disabled before sleeping, and the remaining time used as the interval to sleep. So, the tick needs to be restarted when nanosleep finishes. This is done by introducing after_sleep_interval, which is empty in the NO_HZ case, but which sets the tick starting in the !NO_HZ case. Signed-off-by: Jeff Dike <[email protected]> Cc: Miklos Szeredi <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-29UML: build fixWANG Cong1-1/+1
include/asm-um/arch points to the non-existed include/asm-i386 directory. Signed-off-by: WANG Cong <[email protected]> Cc: Jeff Dike <[email protected]> Cc: Sam Ravnborg <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: fix build for !CONFIG_PRINTKJeff Dike1-1/+12
Handle the case of CONFIG_PRINTK being disabled. This requires a do-nothing stub to be present in arch/um/include/user.h so that we don't get references to printk from libc code. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: fix build for !CONFIG_TCPJeff Dike1-2/+12
Make UML build in the absence of CONFIG_INET by making the inetaddr_notifier registration depend on it. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: remove last include of libc asm/page.hJeff Dike1-1/+0
asm/page.h is disappearing from the libc headers and we don't need it anyway. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: fix spurious IRQ testingJeff Dike1-6/+7
The spurious IRQ testing in request_irq is mishandled in um_request_irq, which sets the incoming file descriptors non-blocking only after request_irq succeeds. This results in the spurious irq calling read on a blocking descriptor, and a hang. Fixed by reversing the O_NONBLOCK setting and the request_irq call. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: fix recvmsg return value checkingJeff Dike1-2/+1
Stupid bug - we need to compare the return value of recvmsg to the value of iov_len, not its size. This caused port_helper processes not to be killed on shutdown on x86_64 because the pids weren't being passed out properly. Signed-off-by: Jeff Dike <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-14uml: fix symlink loopsJeff Dike1-3/+3
symlinks to directories in the non-O= case were lacking -n, which meant that, when the link already existed, a new link pointing at itself was created in the target directory. Signed-off-by: Jeff Dike <[email protected]> Cc: Sam Ravnborg <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-06UML: fix defconfig build againJeff Dike1-2/+2
Reported by Al Viro. This fixes it: [AC]FLAGS -> KBUILD_[AC]FLAGS conversion in Makefile-i386. Signed-off-by: Jeff Dike <[email protected]> Cc: Al Viro <[email protected]> Cc: Sam Ravnborg <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-05uml: correctly strip kernel defines from userspace CFLAGSJeff Dike1-2/+5
KERNEL_DEFINES needs whitespace trimmed, otherwise the whitespace crunching done by make fools the patsubst which is used to remove KERNEL_DEFINES from USER_CFLAGS. Signed-off-by: Jeff Dike <[email protected]> Cc: Sam Ravnborg <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-11-05uml: fix incompatible types warning in previous SG fixWANG Cong1-1/+1
Fix an incompatible-pointer warning. Signed-off-by: WANG Cong <[email protected]> Signed-off-by: Jeff Dike <[email protected]> Cc: Jens Axboe <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-10-29misc uml annotation and section fixesAl Viro3-7/+7
Signed-off-by: Al Viro <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2007-10-29more x86 merge fallout (uml, again)Al Viro2-2/+2
arch/i386/{Kconfig,Makefile}.cpu got moved Signed-off-by: Al Viro <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>