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 ...
This commit is contained in:
commit
ede13d81b4
55 changed files with 4330 additions and 941 deletions
|
|
@ -12,6 +12,7 @@
|
|||
|
||||
#ifdef CONFIG_PROFILING
|
||||
|
||||
#include <linux/dcache.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
struct dcookie_user;
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@
|
|||
#define EM_PARISC 15 /* HPPA */
|
||||
#define EM_SPARC32PLUS 18 /* Sun's "v8plus" */
|
||||
#define EM_PPC 20 /* PowerPC */
|
||||
#define EM_PPC64 21 /* PowerPC64 */
|
||||
#define EM_PPC64 21 /* PowerPC64 */
|
||||
#define EM_SPU 23 /* Cell BE SPU */
|
||||
#define EM_SH 42 /* SuperH */
|
||||
#define EM_SPARCV9 43 /* SPARC v9 64-bit */
|
||||
#define EM_IA_64 50 /* HP/Intel IA-64 */
|
||||
|
|
|
|||
|
|
@ -17,6 +17,26 @@
|
|||
#include <linux/spinlock.h>
|
||||
#include <asm/atomic.h>
|
||||
|
||||
/* Each escaped entry is prefixed by ESCAPE_CODE
|
||||
* then one of the following codes, then the
|
||||
* relevant data.
|
||||
* These #defines live in this file so that arch-specific
|
||||
* buffer sync'ing code can access them.
|
||||
*/
|
||||
#define ESCAPE_CODE ~0UL
|
||||
#define CTX_SWITCH_CODE 1
|
||||
#define CPU_SWITCH_CODE 2
|
||||
#define COOKIE_SWITCH_CODE 3
|
||||
#define KERNEL_ENTER_SWITCH_CODE 4
|
||||
#define KERNEL_EXIT_SWITCH_CODE 5
|
||||
#define MODULE_LOADED_CODE 6
|
||||
#define CTX_TGID_CODE 7
|
||||
#define TRACE_BEGIN_CODE 8
|
||||
#define TRACE_END_CODE 9
|
||||
#define XEN_ENTER_SWITCH_CODE 10
|
||||
#define SPU_PROFILING_CODE 11
|
||||
#define SPU_CTX_SWITCH_CODE 12
|
||||
|
||||
struct super_block;
|
||||
struct dentry;
|
||||
struct file_operations;
|
||||
|
|
@ -35,6 +55,14 @@ struct oprofile_operations {
|
|||
int (*start)(void);
|
||||
/* Stop delivering interrupts. */
|
||||
void (*stop)(void);
|
||||
/* Arch-specific buffer sync functions.
|
||||
* Return value = 0: Success
|
||||
* Return value = -1: Failure
|
||||
* Return value = 1: Run generic sync function
|
||||
*/
|
||||
int (*sync_start)(void);
|
||||
int (*sync_stop)(void);
|
||||
|
||||
/* Initiate a stack backtrace. Optional. */
|
||||
void (*backtrace)(struct pt_regs * const regs, unsigned int depth);
|
||||
/* CPU identification string. */
|
||||
|
|
@ -55,6 +83,13 @@ int oprofile_arch_init(struct oprofile_operations * ops);
|
|||
*/
|
||||
void oprofile_arch_exit(void);
|
||||
|
||||
/**
|
||||
* Add data to the event buffer.
|
||||
* The data passed is free-form, but typically consists of
|
||||
* file offsets, dcookies, context information, and ESCAPE codes.
|
||||
*/
|
||||
void add_event_entry(unsigned long data);
|
||||
|
||||
/**
|
||||
* Add a sample. This may be called from any context. Pass
|
||||
* smp_processor_id() as cpu.
|
||||
|
|
|
|||
|
|
@ -549,7 +549,7 @@ asmlinkage long sys_inotify_rm_watch(int fd, u32 wd);
|
|||
asmlinkage long sys_spu_run(int fd, __u32 __user *unpc,
|
||||
__u32 __user *ustatus);
|
||||
asmlinkage long sys_spu_create(const char __user *name,
|
||||
unsigned int flags, mode_t mode);
|
||||
unsigned int flags, mode_t mode, int fd);
|
||||
|
||||
asmlinkage long sys_mknodat(int dfd, const char __user * filename, int mode,
|
||||
unsigned dev);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue