sgi-gru: misc GRU cleanup
Misc trivial GRU drivers fixes: - fix long lines - eliminate extra whitespace - eliminate compiler warning - better validation of invalidate user parameters - bug fix for GRU TLB flush (not the cpu TLB flush) These changes are all internal to the SGI GRU driver and have no effect on the base kernel. Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
66666e50fc
commit
fe5bb6b00c
@ -19,8 +19,11 @@
|
||||
#ifndef __GRU_INSTRUCTIONS_H__
|
||||
#define __GRU_INSTRUCTIONS_H__
|
||||
|
||||
#define gru_flush_cache_hook(p)
|
||||
#define gru_emulator_wait_hook(p, w)
|
||||
extern int gru_check_status_proc(void *cb);
|
||||
extern int gru_wait_proc(void *cb);
|
||||
extern void gru_wait_abort_proc(void *cb);
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Architecture dependent functions
|
||||
@ -29,16 +32,16 @@
|
||||
#if defined(CONFIG_IA64)
|
||||
#include <linux/compiler.h>
|
||||
#include <asm/intrinsics.h>
|
||||
#define __flush_cache(p) ia64_fc(p)
|
||||
#define __flush_cache(p) ia64_fc((unsigned long)p)
|
||||
/* Use volatile on IA64 to ensure ordering via st4.rel */
|
||||
#define gru_ordered_store_int(p,v) \
|
||||
#define gru_ordered_store_int(p, v) \
|
||||
do { \
|
||||
barrier(); \
|
||||
*((volatile int *)(p)) = v; /* force st.rel */ \
|
||||
} while (0)
|
||||
#elif defined(CONFIG_X86_64)
|
||||
#define __flush_cache(p) clflush(p)
|
||||
#define gru_ordered_store_int(p,v) \
|
||||
#define gru_ordered_store_int(p, v) \
|
||||
do { \
|
||||
barrier(); \
|
||||
*(int *)p = v; \
|
||||
@ -558,20 +561,19 @@ extern int gru_get_cb_exception_detail(void *cb,
|
||||
|
||||
#define GRU_EXC_STR_SIZE 256
|
||||
|
||||
extern int gru_check_status_proc(void *cb);
|
||||
extern int gru_wait_proc(void *cb);
|
||||
extern void gru_wait_abort_proc(void *cb);
|
||||
|
||||
/*
|
||||
* Control block definition for checking status
|
||||
*/
|
||||
struct gru_control_block_status {
|
||||
unsigned int icmd :1;
|
||||
unsigned int unused1 :31;
|
||||
unsigned int ima :3;
|
||||
unsigned int reserved0 :4;
|
||||
unsigned int unused1 :24;
|
||||
unsigned int unused2 :24;
|
||||
unsigned int istatus :2;
|
||||
unsigned int isubstatus :4;
|
||||
unsigned int inused3 :2;
|
||||
unsigned int unused3 :2;
|
||||
};
|
||||
|
||||
/* Get CB status */
|
||||
|
Reference in New Issue
Block a user