diff options
| author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-20 16:45:53 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-20 16:45:53 -0400 |
| commit | ede13d81b4dda409a6d271b34b8e2ec9383e255d (patch) | |
| tree | 2e32142d5a8e076c64f1871f5ad162fffff5f357 /include/linux | |
| parent | 2008220879af095d00ca27eb168a55c8595fbc0b (diff) | |
| parent | 486acd4850dde6d2f8c7f431432f3914c4bfb5f5 (diff) | |
Merge branch 'for-2.6.23' of master.kernel.org:/pub/scm/linux/kernel/git/arnd/cell-2.6
* 'for-2.6.23' of master.kernel.org:/pub/scm/linux/kernel/git/arnd/cell-2.6: (37 commits)
[CELL] spufs: rework list management and associated locking
[CELL] oprofile: add support to OProfile for profiling CELL BE SPUs
[CELL] oprofile: enable SPU switch notification to detect currently active SPU tasks
[CELL] spu_base: locking cleanup
[CELL] cell: indexing of SPUs based on firmware vicinity properties
[CELL] spufs: integration of SPE affinity with the scheduller
[CELL] cell: add placement computation for scheduling of affinity contexts
[CELL] spufs: extension of spu_create to support affinity definition
[CELL] cell: add hardcoded spu vicinity information for QS20
[CELL] cell: add vicinity information on spus
[CELL] cell: add per BE structure with info about its SPUs
[CELL] spufs: use find_first_bit() instead of sched_find_first_bit()
[CELL] spufs: remove unused file argument from spufs_run_spu()
[CELL] spufs: change decrementer restore timing
[CELL] spufs: dont halt decrementer at restore step 47
[CELL] spufs: limit saving MFC_CNTL bits
[CELL] spufs: fix read and write for decr_status file
[CELL] spufs: fix decr_status meanings
[CELL] spufs: remove needless context save/restore code
[CELL] spufs: fix array size of channel index
...
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/dcookies.h | 1 | ||||
| -rw-r--r-- | include/linux/elf-em.h | 3 | ||||
| -rw-r--r-- | include/linux/oprofile.h | 35 | ||||
| -rw-r--r-- | include/linux/syscalls.h | 2 |
4 files changed, 39 insertions, 2 deletions
diff --git a/include/linux/dcookies.h b/include/linux/dcookies.h index 0fe7cdf326f7..98c69ab80c84 100644 --- a/include/linux/dcookies.h +++ b/include/linux/dcookies.h | |||
| @@ -12,6 +12,7 @@ | |||
| 12 | 12 | ||
| 13 | #ifdef CONFIG_PROFILING | 13 | #ifdef CONFIG_PROFILING |
| 14 | 14 | ||
| 15 | #include <linux/dcache.h> | ||
| 15 | #include <linux/types.h> | 16 | #include <linux/types.h> |
| 16 | 17 | ||
| 17 | struct dcookie_user; | 18 | struct dcookie_user; |
diff --git a/include/linux/elf-em.h b/include/linux/elf-em.h index 0311bad838b1..5834e843a946 100644 --- a/include/linux/elf-em.h +++ b/include/linux/elf-em.h | |||
| @@ -20,7 +20,8 @@ | |||
| 20 | #define EM_PARISC 15 /* HPPA */ | 20 | #define EM_PARISC 15 /* HPPA */ |
| 21 | #define EM_SPARC32PLUS 18 /* Sun's "v8plus" */ | 21 | #define EM_SPARC32PLUS 18 /* Sun's "v8plus" */ |
| 22 | #define EM_PPC 20 /* PowerPC */ | 22 | #define EM_PPC 20 /* PowerPC */ |
| 23 | #define EM_PPC64 21 /* PowerPC64 */ | 23 | #define EM_PPC64 21 /* PowerPC64 */ |
| 24 | #define EM_SPU 23 /* Cell BE SPU */ | ||
| 24 | #define EM_SH 42 /* SuperH */ | 25 | #define EM_SH 42 /* SuperH */ |
| 25 | #define EM_SPARCV9 43 /* SPARC v9 64-bit */ | 26 | #define EM_SPARCV9 43 /* SPARC v9 64-bit */ |
| 26 | #define EM_IA_64 50 /* HP/Intel IA-64 */ | 27 | #define EM_IA_64 50 /* HP/Intel IA-64 */ |
diff --git a/include/linux/oprofile.h b/include/linux/oprofile.h index 0d514b252454..041bb31100f4 100644 --- a/include/linux/oprofile.h +++ b/include/linux/oprofile.h | |||
| @@ -17,6 +17,26 @@ | |||
| 17 | #include <linux/spinlock.h> | 17 | #include <linux/spinlock.h> |
| 18 | #include <asm/atomic.h> | 18 | #include <asm/atomic.h> |
| 19 | 19 | ||
| 20 | /* Each escaped entry is prefixed by ESCAPE_CODE | ||
| 21 | * then one of the following codes, then the | ||
| 22 | * relevant data. | ||
| 23 | * These #defines live in this file so that arch-specific | ||
| 24 | * buffer sync'ing code can access them. | ||
| 25 | */ | ||
| 26 | #define ESCAPE_CODE ~0UL | ||
| 27 | #define CTX_SWITCH_CODE 1 | ||
| 28 | #define CPU_SWITCH_CODE 2 | ||
| 29 | #define COOKIE_SWITCH_CODE 3 | ||
| 30 | #define KERNEL_ENTER_SWITCH_CODE 4 | ||
| 31 | #define KERNEL_EXIT_SWITCH_CODE 5 | ||
| 32 | #define MODULE_LOADED_CODE 6 | ||
| 33 | #define CTX_TGID_CODE 7 | ||
| 34 | #define TRACE_BEGIN_CODE 8 | ||
| 35 | #define TRACE_END_CODE 9 | ||
| 36 | #define XEN_ENTER_SWITCH_CODE 10 | ||
| 37 | #define SPU_PROFILING_CODE 11 | ||
| 38 | #define SPU_CTX_SWITCH_CODE 12 | ||
| 39 | |||
| 20 | struct super_block; | 40 | struct super_block; |
| 21 | struct dentry; | 41 | struct dentry; |
| 22 | struct file_operations; | 42 | struct file_operations; |
| @@ -35,6 +55,14 @@ struct oprofile_operations { | |||
| 35 | int (*start)(void); | 55 | int (*start)(void); |
| 36 | /* Stop delivering interrupts. */ | 56 | /* Stop delivering interrupts. */ |
| 37 | void (*stop)(void); | 57 | void (*stop)(void); |
| 58 | /* Arch-specific buffer sync functions. | ||
| 59 | * Return value = 0: Success | ||
| 60 | * Return value = -1: Failure | ||
| 61 | * Return value = 1: Run generic sync function | ||
| 62 | */ | ||
| 63 | int (*sync_start)(void); | ||
| 64 | int (*sync_stop)(void); | ||
| 65 | |||
| 38 | /* Initiate a stack backtrace. Optional. */ | 66 | /* Initiate a stack backtrace. Optional. */ |
| 39 | void (*backtrace)(struct pt_regs * const regs, unsigned int depth); | 67 | void (*backtrace)(struct pt_regs * const regs, unsigned int depth); |
| 40 | /* CPU identification string. */ | 68 | /* CPU identification string. */ |
| @@ -56,6 +84,13 @@ int oprofile_arch_init(struct oprofile_operations * ops); | |||
| 56 | void oprofile_arch_exit(void); | 84 | void oprofile_arch_exit(void); |
| 57 | 85 | ||
| 58 | /** | 86 | /** |
| 87 | * Add data to the event buffer. | ||
| 88 | * The data passed is free-form, but typically consists of | ||
| 89 | * file offsets, dcookies, context information, and ESCAPE codes. | ||
| 90 | */ | ||
| 91 | void add_event_entry(unsigned long data); | ||
| 92 | |||
| 93 | /** | ||
| 59 | * Add a sample. This may be called from any context. Pass | 94 | * Add a sample. This may be called from any context. Pass |
| 60 | * smp_processor_id() as cpu. | 95 | * smp_processor_id() as cpu. |
| 61 | */ | 96 | */ |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 7a8b1e3322e0..61def7c8fbb3 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
| @@ -549,7 +549,7 @@ asmlinkage long sys_inotify_rm_watch(int fd, u32 wd); | |||
| 549 | asmlinkage long sys_spu_run(int fd, __u32 __user *unpc, | 549 | asmlinkage long sys_spu_run(int fd, __u32 __user *unpc, |
| 550 | __u32 __user *ustatus); | 550 | __u32 __user *ustatus); |
| 551 | asmlinkage long sys_spu_create(const char __user *name, | 551 | asmlinkage long sys_spu_create(const char __user *name, |
| 552 | unsigned int flags, mode_t mode); | 552 | unsigned int flags, mode_t mode, int fd); |
| 553 | 553 | ||
| 554 | asmlinkage long sys_mknodat(int dfd, const char __user * filename, int mode, | 554 | asmlinkage long sys_mknodat(int dfd, const char __user * filename, int mode, |
| 555 | unsigned dev); | 555 | unsigned dev); |
