diff options
| author | Patrick Mochel <mochel@osdl.org> | 2003-09-02 00:07:50 -0700 |
|---|---|---|
| committer | Patrick Mochel <mochel@osdl.org> | 2003-09-02 00:07:50 -0700 |
| commit | 8cc21ee6057eb7c87d96cbf9f3b9de4e8170df87 (patch) | |
| tree | 525a8a78adde68dc5254c64353385c5057a7106d /include | |
| parent | 69bbc27f432245a5496c9a245af4125f13e5e7ac (diff) | |
| parent | af8b3563be2cc46bab716c5842a2fbae5668c742 (diff) | |
Merge osdl.org:/home/mochel/src/kernel/linux-2.5-virgin
into osdl.org:/home/mochel/src/kernel/linux-2.5-core
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-i386/i387.h | 39 | ||||
| -rw-r--r-- | include/linux/ide.h | 3 | ||||
| -rw-r--r-- | include/linux/net.h | 3 | ||||
| -rw-r--r-- | include/linux/pci_ids.h | 1 | ||||
| -rw-r--r-- | include/net/ipv6.h | 2 |
5 files changed, 37 insertions, 11 deletions
diff --git a/include/asm-i386/i387.h b/include/asm-i386/i387.h index 408b16afeddc..adc63f6e7244 100644 --- a/include/asm-i386/i387.h +++ b/include/asm-i386/i387.h @@ -26,7 +26,9 @@ extern void restore_fpu( struct task_struct *tsk ); extern void kernel_fpu_begin(void); #define kernel_fpu_end() do { stts(); preempt_enable(); } while(0) - +/* + * These must be called with preempt disabled + */ static inline void __save_init_fpu( struct task_struct *tsk ) { if ( cpu_has_fxsr ) { @@ -39,19 +41,12 @@ static inline void __save_init_fpu( struct task_struct *tsk ) tsk->thread_info->status &= ~TS_USEDFPU; } -static inline void save_init_fpu( struct task_struct *tsk ) -{ - __save_init_fpu(tsk); - stts(); -} - - -#define unlazy_fpu( tsk ) do { \ +#define __unlazy_fpu( tsk ) do { \ if ((tsk)->thread_info->status & TS_USEDFPU) \ save_init_fpu( tsk ); \ } while (0) -#define clear_fpu( tsk ) \ +#define __clear_fpu( tsk ) \ do { \ if ((tsk)->thread_info->status & TS_USEDFPU) { \ asm volatile("fwait"); \ @@ -60,6 +55,30 @@ do { \ } \ } while (0) + +/* + * These disable preemption on their own and are safe + */ +static inline void save_init_fpu( struct task_struct *tsk ) +{ + preempt_disable(); + __save_init_fpu(tsk); + stts(); + preempt_enable(); +} + +#define unlazy_fpu( tsk ) do { \ + preempt_disable(); \ + __unlazy_fpu(tsk); \ + preempt_enable(); \ +} while (0) + +#define clear_fpu( tsk ) do { \ + preempt_disable(); \ + __clear_fpu( tsk ); \ + preempt_enable(); \ +} while (0) + \ /* * FPU state interaction... */ diff --git a/include/linux/ide.h b/include/linux/ide.h index 98a1a968ad93..4664fd44a986 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h @@ -22,6 +22,7 @@ #include <asm/system.h> #include <asm/hdreg.h> #include <asm/io.h> +#include <asm/semaphore.h> #define DEBUG_PM @@ -774,6 +775,7 @@ typedef struct ide_drive_s { int crc_count; /* crc counter to reduce drive speed */ struct list_head list; struct device gendev; + struct semaphore gendev_rel_sem; /* to deal with device release() */ struct gendisk *disk; } ide_drive_t; @@ -1040,6 +1042,7 @@ typedef struct hwif_s { unsigned auto_poll : 1; /* supports nop auto-poll */ struct device gendev; + struct semaphore gendev_rel_sem; /* To deal with device release() */ void *hwif_data; /* extra hwif data */ diff --git a/include/linux/net.h b/include/linux/net.h index 9101b7dcec92..6f9a0992e578 100644 --- a/include/linux/net.h +++ b/include/linux/net.h @@ -20,6 +20,7 @@ #include <linux/config.h> #include <linux/wait.h> +#include <linux/stringify.h> struct poll_table_struct; struct inode; @@ -243,6 +244,8 @@ static struct proto_ops name##_ops = { \ }; #endif +#define MODULE_ALIAS_NETPROTO(proto) \ + MODULE_ALIAS("net-pf-" __stringify(proto)) #endif /* __KERNEL__ */ #endif /* _LINUX_NET_H */ diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 4fc931b4e76f..6e6ff10ef587 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -878,6 +878,7 @@ #define PCI_DEVICE_ID_SII_680 0x0680 #define PCI_DEVICE_ID_SII_3112 0x3112 +#define PCI_DEVICE_ID_SII_1210SA 0x0240 #define PCI_VENDOR_ID_VISION 0x1098 #define PCI_DEVICE_ID_VISION_QD8500 0x0001 diff --git a/include/net/ipv6.h b/include/net/ipv6.h index 8aeb974d8592..18020987d369 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h @@ -193,7 +193,7 @@ struct ip6_flowlabel struct in6_addr dst; struct ipv6_txoptions *opt; atomic_t users; - u32 linger; + unsigned long linger; u8 share; u32 owner; unsigned long lastuse; |
