aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-08-08 13:10:11 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-08 13:10:11 -0400
commit45d7f32c7a43cbb9592886d38190e379e2eb2226 (patch)
treeea68b67b1d2127527d856248c0485f2ed7e50088 /include
parent53bcef60633086ad73683d01a4ef9ca678484d2d (diff)
parentab11b487402f97975f3ac1eeea09c82f4431481e (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile
* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: arch/tile: check kmalloc() result arch/tile: catch up on various minor cleanups. arch/tile: avoid erroneous error return for PTRACE_POKEUSR. tile: set ARCH_KMALLOC_MINALIGN tile: remove homegrown L1_CACHE_ALIGN macro arch/tile: Miscellaneous cleanup changes. arch/tile: Split the icache flush code off to a generic <arch> header. arch/tile: Fix bug in support for atomic64_xx() ops. arch/tile: Shrink the tile-opcode files considerably. arch/tile: Add driver to enable access to the user dynamic network. arch/tile: Enable more sophisticated IRQ model for 32-bit chips. Move list types from <linux/list.h> to <linux/types.h>. Add wait4() back to the set of <asm-generic/unistd.h> syscalls. Revert adding some arch-specific signal syscalls to <linux/syscalls.h>. arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent(). Feedback from fujita.tomonori@lab.ntt.co.jp. arch/tile: core support for Tilera 32-bit chips. Fix up the "generic" unistd.h ABI to be more useful.
Diffstat (limited to 'include')
-rw-r--r--include/asm-generic/unistd.h33
-rw-r--r--include/linux/list.h13
-rw-r--r--include/linux/types.h12
3 files changed, 38 insertions, 20 deletions
diff --git a/include/asm-generic/unistd.h b/include/asm-generic/unistd.h
index 6a0b30f78a62..c17cebc49952 100644
--- a/include/asm-generic/unistd.h
+++ b/include/asm-generic/unistd.h
@@ -18,7 +18,7 @@
18#define __SYSCALL(x, y) 18#define __SYSCALL(x, y)
19#endif 19#endif
20 20
21#if __BITS_PER_LONG == 32 21#if __BITS_PER_LONG == 32 || defined(__SYSCALL_COMPAT)
22#define __SC_3264(_nr, _32, _64) __SYSCALL(_nr, _32) 22#define __SC_3264(_nr, _32, _64) __SYSCALL(_nr, _32)
23#else 23#else
24#define __SC_3264(_nr, _32, _64) __SYSCALL(_nr, _64) 24#define __SC_3264(_nr, _32, _64) __SYSCALL(_nr, _64)
@@ -241,8 +241,13 @@ __SYSCALL(__NR_sync, sys_sync)
241__SYSCALL(__NR_fsync, sys_fsync) 241__SYSCALL(__NR_fsync, sys_fsync)
242#define __NR_fdatasync 83 242#define __NR_fdatasync 83
243__SYSCALL(__NR_fdatasync, sys_fdatasync) 243__SYSCALL(__NR_fdatasync, sys_fdatasync)
244#ifdef __ARCH_WANT_SYNC_FILE_RANGE2
245#define __NR_sync_file_range2 84
246__SYSCALL(__NR_sync_file_range2, sys_sync_file_range2)
247#else
244#define __NR_sync_file_range 84 248#define __NR_sync_file_range 84
245__SYSCALL(__NR_sync_file_range, sys_sync_file_range) /* .long sys_sync_file_range2, */ 249__SYSCALL(__NR_sync_file_range, sys_sync_file_range)
250#endif
246 251
247/* fs/timerfd.c */ 252/* fs/timerfd.c */
248#define __NR_timerfd_create 85 253#define __NR_timerfd_create 85
@@ -580,7 +585,7 @@ __SYSCALL(__NR_execve, sys_execve) /* .long sys_execve_wrapper */
580__SC_3264(__NR3264_mmap, sys_mmap2, sys_mmap) 585__SC_3264(__NR3264_mmap, sys_mmap2, sys_mmap)
581/* mm/fadvise.c */ 586/* mm/fadvise.c */
582#define __NR3264_fadvise64 223 587#define __NR3264_fadvise64 223
583__SC_3264(__NR3264_fadvise64, sys_fadvise64_64, sys_fadvise64) 588__SYSCALL(__NR3264_fadvise64, sys_fadvise64_64)
584 589
585/* mm/, CONFIG_MMU only */ 590/* mm/, CONFIG_MMU only */
586#ifndef __ARCH_NOMMU 591#ifndef __ARCH_NOMMU
@@ -627,8 +632,17 @@ __SYSCALL(__NR_accept4, sys_accept4)
627#define __NR_recvmmsg 243 632#define __NR_recvmmsg 243
628__SYSCALL(__NR_recvmmsg, sys_recvmmsg) 633__SYSCALL(__NR_recvmmsg, sys_recvmmsg)
629 634
635/*
636 * Architectures may provide up to 16 syscalls of their own
637 * starting with this value.
638 */
639#define __NR_arch_specific_syscall 244
640
641#define __NR_wait4 260
642__SYSCALL(__NR_wait4, sys_wait4)
643
630#undef __NR_syscalls 644#undef __NR_syscalls
631#define __NR_syscalls 244 645#define __NR_syscalls 261
632 646
633/* 647/*
634 * All syscalls below here should go away really, 648 * All syscalls below here should go away really,
@@ -694,7 +708,8 @@ __SYSCALL(__NR_signalfd, sys_signalfd)
694#define __NR_syscalls (__NR_signalfd+1) 708#define __NR_syscalls (__NR_signalfd+1)
695#endif /* __ARCH_WANT_SYSCALL_NO_FLAGS */ 709#endif /* __ARCH_WANT_SYSCALL_NO_FLAGS */
696 710
697#if __BITS_PER_LONG == 32 && defined(__ARCH_WANT_SYSCALL_OFF_T) 711#if (__BITS_PER_LONG == 32 || defined(__SYSCALL_COMPAT)) && \
712 defined(__ARCH_WANT_SYSCALL_OFF_T)
698#define __NR_sendfile 1046 713#define __NR_sendfile 1046
699__SYSCALL(__NR_sendfile, sys_sendfile) 714__SYSCALL(__NR_sendfile, sys_sendfile)
700#define __NR_ftruncate 1047 715#define __NR_ftruncate 1047
@@ -740,6 +755,7 @@ __SYSCALL(__NR_getpgrp, sys_getpgrp)
740__SYSCALL(__NR_pause, sys_pause) 755__SYSCALL(__NR_pause, sys_pause)
741#define __NR_time 1062 756#define __NR_time 1062
742#define __ARCH_WANT_SYS_TIME 757#define __ARCH_WANT_SYS_TIME
758#define __ARCH_WANT_COMPAT_SYS_TIME
743__SYSCALL(__NR_time, sys_time) 759__SYSCALL(__NR_time, sys_time)
744#define __NR_utime 1063 760#define __NR_utime 1063
745#define __ARCH_WANT_SYS_UTIME 761#define __ARCH_WANT_SYS_UTIME
@@ -763,8 +779,8 @@ __SYSCALL(__NR_epoll_wait, sys_epoll_wait)
763__SYSCALL(__NR_ustat, sys_ustat) 779__SYSCALL(__NR_ustat, sys_ustat)
764#define __NR_vfork 1071 780#define __NR_vfork 1071
765__SYSCALL(__NR_vfork, sys_vfork) 781__SYSCALL(__NR_vfork, sys_vfork)
766#define __NR_wait4 1072 782#define __NR_oldwait4 1072
767__SYSCALL(__NR_wait4, sys_wait4) 783__SYSCALL(__NR_oldwait4, sys_wait4)
768#define __NR_recv 1073 784#define __NR_recv 1073
769__SYSCALL(__NR_recv, sys_recv) 785__SYSCALL(__NR_recv, sys_recv)
770#define __NR_send 1074 786#define __NR_send 1074
@@ -801,7 +817,7 @@ __SYSCALL(__NR_fork, sys_ni_syscall)
801 * Here we map the numbers so that both versions 817 * Here we map the numbers so that both versions
802 * use the same syscall table layout. 818 * use the same syscall table layout.
803 */ 819 */
804#if __BITS_PER_LONG == 64 820#if __BITS_PER_LONG == 64 && !defined(__SYSCALL_COMPAT)
805#define __NR_fcntl __NR3264_fcntl 821#define __NR_fcntl __NR3264_fcntl
806#define __NR_statfs __NR3264_statfs 822#define __NR_statfs __NR3264_statfs
807#define __NR_fstatfs __NR3264_fstatfs 823#define __NR_fstatfs __NR3264_fstatfs
@@ -848,6 +864,7 @@ __SYSCALL(__NR_fork, sys_ni_syscall)
848#endif 864#endif
849#define __ARCH_WANT_SYS_RT_SIGACTION 865#define __ARCH_WANT_SYS_RT_SIGACTION
850#define __ARCH_WANT_SYS_RT_SIGSUSPEND 866#define __ARCH_WANT_SYS_RT_SIGSUSPEND
867#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
851 868
852/* 869/*
853 * "Conditional" syscalls 870 * "Conditional" syscalls
diff --git a/include/linux/list.h b/include/linux/list.h
index 5d57a3a1fa1b..d167b5d7c0ac 100644
--- a/include/linux/list.h
+++ b/include/linux/list.h
@@ -1,6 +1,7 @@
1#ifndef _LINUX_LIST_H 1#ifndef _LINUX_LIST_H
2#define _LINUX_LIST_H 2#define _LINUX_LIST_H
3 3
4#include <linux/types.h>
4#include <linux/stddef.h> 5#include <linux/stddef.h>
5#include <linux/poison.h> 6#include <linux/poison.h>
6#include <linux/prefetch.h> 7#include <linux/prefetch.h>
@@ -16,10 +17,6 @@
16 * using the generic single-entry routines. 17 * using the generic single-entry routines.
17 */ 18 */
18 19
19struct list_head {
20 struct list_head *next, *prev;
21};
22
23#define LIST_HEAD_INIT(name) { &(name), &(name) } 20#define LIST_HEAD_INIT(name) { &(name), &(name) }
24 21
25#define LIST_HEAD(name) \ 22#define LIST_HEAD(name) \
@@ -566,14 +563,6 @@ static inline void list_splice_tail_init(struct list_head *list,
566 * You lose the ability to access the tail in O(1). 563 * You lose the ability to access the tail in O(1).
567 */ 564 */
568 565
569struct hlist_head {
570 struct hlist_node *first;
571};
572
573struct hlist_node {
574 struct hlist_node *next, **pprev;
575};
576
577#define HLIST_HEAD_INIT { .first = NULL } 566#define HLIST_HEAD_INIT { .first = NULL }
578#define HLIST_HEAD(name) struct hlist_head name = { .first = NULL } 567#define HLIST_HEAD(name) struct hlist_head name = { .first = NULL }
579#define INIT_HLIST_HEAD(ptr) ((ptr)->first = NULL) 568#define INIT_HLIST_HEAD(ptr) ((ptr)->first = NULL)
diff --git a/include/linux/types.h b/include/linux/types.h
index 331d8baabcf2..01a082f56ef4 100644
--- a/include/linux/types.h
+++ b/include/linux/types.h
@@ -200,6 +200,18 @@ typedef struct {
200} atomic64_t; 200} atomic64_t;
201#endif 201#endif
202 202
203struct list_head {
204 struct list_head *next, *prev;
205};
206
207struct hlist_head {
208 struct hlist_node *first;
209};
210
211struct hlist_node {
212 struct hlist_node *next, **pprev;
213};
214
203struct ustat { 215struct ustat {
204 __kernel_daddr_t f_tfree; 216 __kernel_daddr_t f_tfree;
205 __kernel_ino_t f_tinode; 217 __kernel_ino_t f_tinode;