summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDave Jones <davej@tetrachloride.(none)>2003-05-15 20:48:08 +0100
committerDave Jones <davej@tetrachloride.(none)>2003-05-15 20:48:08 +0100
commit99ddca633742a3bb6a49fb410eeaa6e9a68261e0 (patch)
tree1d90b6c113916445bd6464bb6a4cb28f63948de2 /include
parent2b4363d94ff4a1b7febf3ceba3ac77c84f86b205 (diff)
parent77b3055a2a25b7ba9f5718651e7e89e5952d4912 (diff)
Merge tetrachloride.(none):/mnt/raid/src/kernel/2.5/bk-linus
into tetrachloride.(none):/mnt/raid/src/kernel/2.5/agpgart
Diffstat (limited to 'include')
-rw-r--r--include/asm-i386/mach-visws/mach_apic.h8
-rw-r--r--include/linux/mm.h3
-rw-r--r--include/linux/smp.h4
-rw-r--r--include/linux/spinlock.h10
4 files changed, 15 insertions, 10 deletions
diff --git a/include/asm-i386/mach-visws/mach_apic.h b/include/asm-i386/mach-visws/mach_apic.h
index 641c173d4f76..c2681d88b3be 100644
--- a/include/asm-i386/mach-visws/mach_apic.h
+++ b/include/asm-i386/mach-visws/mach_apic.h
@@ -19,6 +19,14 @@
#define check_apicid_used(bitmap, apicid) (bitmap & (1 << apicid))
#define check_apicid_present(bit) (phys_cpu_present_map & (1 << bit))
+#define APIC_ID_MASK (0xF<<24)
+
+static inline unsigned get_apic_id(unsigned long x)
+{
+ return (((x)>>24)&0xF);
+}
+#define GET_APIC_ID(x) get_apic_id(x)
+
static inline int apic_id_registered(void)
{
return (test_bit(GET_APIC_ID(apic_read(APIC_ID)),
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 51f5377ec8fc..45d2caa856ed 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -426,7 +426,8 @@ extern int handle_mm_fault(struct mm_struct *mm,struct vm_area_struct *vma, unsi
extern int make_pages_present(unsigned long addr, unsigned long end);
extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, int write);
extern long sys_remap_file_pages(unsigned long start, unsigned long size, unsigned long prot, unsigned long pgoff, unsigned long nonblock);
-
+void put_dirty_page(struct task_struct *tsk, struct page *page,
+ unsigned long address, pgprot_t prot);
int get_user_pages(struct task_struct *tsk, struct mm_struct *mm, unsigned long start,
int len, int write, int force, struct page **pages, struct vm_area_struct **vmas);
diff --git a/include/linux/smp.h b/include/linux/smp.h
index 81a906924efe..194d2f5ecb87 100644
--- a/include/linux/smp.h
+++ b/include/linux/smp.h
@@ -74,10 +74,6 @@ static inline int on_each_cpu(void (*func) (void *info), void *info,
*/
extern int smp_threads_ready;
-extern volatile unsigned long smp_msg_data;
-extern volatile int smp_src_cpu;
-extern volatile int smp_msg_id;
-
#define MSG_ALL_BUT_SELF 0x8000 /* Assume <32768 CPU's */
#define MSG_ALL 0x8001
diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h
index a16b041fee5b..e93dbee94d45 100644
--- a/include/linux/spinlock.h
+++ b/include/linux/spinlock.h
@@ -79,10 +79,10 @@ typedef struct {
do { \
CHECK_LOCK(x); \
if ((x)->lock&&(x)->babble) { \
+ (x)->babble--; \
printk("%s:%d: spin_lock(%s:%p) already locked by %s/%d\n", \
__FILE__,__LINE__, (x)->module, \
(x), (x)->owner, (x)->oline); \
- (x)->babble--; \
} \
(x)->lock = 1; \
(x)->owner = __FILE__; \
@@ -95,10 +95,10 @@ typedef struct {
({ \
CHECK_LOCK(x); \
if ((x)->lock&&(x)->babble) { \
+ (x)->babble--; \
printk("%s:%d: spin_is_locked(%s:%p) already locked by %s/%d\n", \
__FILE__,__LINE__, (x)->module, \
(x), (x)->owner, (x)->oline); \
- (x)->babble--; \
} \
0; \
})
@@ -109,10 +109,10 @@ typedef struct {
({ \
CHECK_LOCK(x); \
if ((x)->lock&&(x)->babble) { \
+ (x)->babble--; \
printk("%s:%d: spin_trylock(%s:%p) already locked by %s/%d\n", \
__FILE__,__LINE__, (x)->module, \
(x), (x)->owner, (x)->oline); \
- (x)->babble--; \
} \
(x)->lock = 1; \
(x)->owner = __FILE__; \
@@ -124,10 +124,10 @@ typedef struct {
do { \
CHECK_LOCK(x); \
if ((x)->lock&&(x)->babble) { \
+ (x)->babble--; \
printk("%s:%d: spin_unlock_wait(%s:%p) owned by %s/%d\n", \
__FILE__,__LINE__, (x)->module, (x), \
(x)->owner, (x)->oline); \
- (x)->babble--; \
}\
} while (0)
@@ -135,9 +135,9 @@ typedef struct {
do { \
CHECK_LOCK(x); \
if (!(x)->lock&&(x)->babble) { \
+ (x)->babble--; \
printk("%s:%d: spin_unlock(%s:%p) not locked\n", \
__FILE__,__LINE__, (x)->module, (x));\
- (x)->babble--; \
} \
(x)->lock = 0; \
} while (0)