diff options
author | David Woodhouse <dwmw2@shinybook.infradead.org> | 2006-04-28 20:42:26 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@infradead.org> | 2006-04-28 20:42:26 -0400 |
commit | d6754b401a15eaa16492ea5dbaa4826361d3f411 (patch) | |
tree | 032f067d3af458527d903a7653885404ed82431e /include/linux | |
parent | acc429a517bd11fdcac9bea97d082d26231beb92 (diff) | |
parent | 693f7d362055261882659475d2ef022e32edbff1 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/debugfs.h | 5 | ||||
-rw-r--r-- | include/linux/kobject.h | 3 | ||||
-rw-r--r-- | include/linux/netdevice.h | 18 | ||||
-rw-r--r-- | include/linux/pagemap.h | 2 | ||||
-rw-r--r-- | include/linux/pipe_fs_i.h | 17 | ||||
-rw-r--r-- | include/linux/signal.h | 4 | ||||
-rw-r--r-- | include/linux/syscalls.h | 3 |
7 files changed, 38 insertions, 14 deletions
diff --git a/include/linux/debugfs.h b/include/linux/debugfs.h index 176e2d371577..047567d34ca7 100644 --- a/include/linux/debugfs.h +++ b/include/linux/debugfs.h | |||
@@ -58,9 +58,8 @@ struct dentry *debugfs_create_blob(const char *name, mode_t mode, | |||
58 | */ | 58 | */ |
59 | 59 | ||
60 | static inline struct dentry *debugfs_create_file(const char *name, mode_t mode, | 60 | static inline struct dentry *debugfs_create_file(const char *name, mode_t mode, |
61 | struct dentry *parent, | 61 | struct dentry *parent, void *data, |
62 | void *data, | 62 | const struct file_operations *fops) |
63 | struct file_operations *fops) | ||
64 | { | 63 | { |
65 | return ERR_PTR(-ENODEV); | 64 | return ERR_PTR(-ENODEV); |
66 | } | 65 | } |
diff --git a/include/linux/kobject.h b/include/linux/kobject.h index dcd0623be892..c187c53cecd0 100644 --- a/include/linux/kobject.h +++ b/include/linux/kobject.h | |||
@@ -257,9 +257,8 @@ struct subsys_attribute { | |||
257 | }; | 257 | }; |
258 | 258 | ||
259 | extern int subsys_create_file(struct subsystem * , struct subsys_attribute *); | 259 | extern int subsys_create_file(struct subsystem * , struct subsys_attribute *); |
260 | extern void subsys_remove_file(struct subsystem * , struct subsys_attribute *); | ||
261 | 260 | ||
262 | #if defined(CONFIG_HOTPLUG) && defined(CONFIG_NET) | 261 | #if defined(CONFIG_HOTPLUG) |
263 | void kobject_uevent(struct kobject *kobj, enum kobject_action action); | 262 | void kobject_uevent(struct kobject *kobj, enum kobject_action action); |
264 | 263 | ||
265 | int add_uevent_var(char **envp, int num_envp, int *cur_index, | 264 | int add_uevent_var(char **envp, int num_envp, int *cur_index, |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index c81aa0f76642..5128dd7634cb 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -828,19 +828,21 @@ static inline void netif_rx_schedule(struct net_device *dev) | |||
828 | __netif_rx_schedule(dev); | 828 | __netif_rx_schedule(dev); |
829 | } | 829 | } |
830 | 830 | ||
831 | /* Try to reschedule poll. Called by dev->poll() after netif_rx_complete(). | 831 | |
832 | * Do not inline this? | 832 | static inline void __netif_rx_reschedule(struct net_device *dev, int undo) |
833 | */ | 833 | { |
834 | dev->quota += undo; | ||
835 | list_add_tail(&dev->poll_list, &__get_cpu_var(softnet_data).poll_list); | ||
836 | __raise_softirq_irqoff(NET_RX_SOFTIRQ); | ||
837 | } | ||
838 | |||
839 | /* Try to reschedule poll. Called by dev->poll() after netif_rx_complete(). */ | ||
834 | static inline int netif_rx_reschedule(struct net_device *dev, int undo) | 840 | static inline int netif_rx_reschedule(struct net_device *dev, int undo) |
835 | { | 841 | { |
836 | if (netif_rx_schedule_prep(dev)) { | 842 | if (netif_rx_schedule_prep(dev)) { |
837 | unsigned long flags; | 843 | unsigned long flags; |
838 | |||
839 | dev->quota += undo; | ||
840 | |||
841 | local_irq_save(flags); | 844 | local_irq_save(flags); |
842 | list_add_tail(&dev->poll_list, &__get_cpu_var(softnet_data).poll_list); | 845 | __netif_rx_reschedule(dev, undo); |
843 | __raise_softirq_irqoff(NET_RX_SOFTIRQ); | ||
844 | local_irq_restore(flags); | 846 | local_irq_restore(flags); |
845 | return 1; | 847 | return 1; |
846 | } | 848 | } |
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h index 9539efd4f7e6..7a1af574dedf 100644 --- a/include/linux/pagemap.h +++ b/include/linux/pagemap.h | |||
@@ -78,6 +78,8 @@ extern struct page * find_or_create_page(struct address_space *mapping, | |||
78 | unsigned long index, gfp_t gfp_mask); | 78 | unsigned long index, gfp_t gfp_mask); |
79 | unsigned find_get_pages(struct address_space *mapping, pgoff_t start, | 79 | unsigned find_get_pages(struct address_space *mapping, pgoff_t start, |
80 | unsigned int nr_pages, struct page **pages); | 80 | unsigned int nr_pages, struct page **pages); |
81 | unsigned find_get_pages_contig(struct address_space *mapping, pgoff_t start, | ||
82 | unsigned int nr_pages, struct page **pages); | ||
81 | unsigned find_get_pages_tag(struct address_space *mapping, pgoff_t *index, | 83 | unsigned find_get_pages_tag(struct address_space *mapping, pgoff_t *index, |
82 | int tag, unsigned int nr_pages, struct page **pages); | 84 | int tag, unsigned int nr_pages, struct page **pages); |
83 | 85 | ||
diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h index ef7f33c0be19..0008d4bd4059 100644 --- a/include/linux/pipe_fs_i.h +++ b/include/linux/pipe_fs_i.h | |||
@@ -61,4 +61,21 @@ void __free_pipe_info(struct pipe_inode_info *); | |||
61 | /* from/to, of course */ | 61 | /* from/to, of course */ |
62 | #define SPLICE_F_MORE (0x04) /* expect more data */ | 62 | #define SPLICE_F_MORE (0x04) /* expect more data */ |
63 | 63 | ||
64 | /* | ||
65 | * Passed to the actors | ||
66 | */ | ||
67 | struct splice_desc { | ||
68 | unsigned int len, total_len; /* current and remaining length */ | ||
69 | unsigned int flags; /* splice flags */ | ||
70 | struct file *file; /* file to read/write */ | ||
71 | loff_t pos; /* file position */ | ||
72 | }; | ||
73 | |||
74 | typedef int (splice_actor)(struct pipe_inode_info *, struct pipe_buffer *, | ||
75 | struct splice_desc *); | ||
76 | |||
77 | extern ssize_t splice_from_pipe(struct pipe_inode_info *, struct file *, | ||
78 | loff_t *, size_t, unsigned int, | ||
79 | splice_actor *); | ||
80 | |||
64 | #endif | 81 | #endif |
diff --git a/include/linux/signal.h b/include/linux/signal.h index 4b42df3860ed..1e4ce7225eee 100644 --- a/include/linux/signal.h +++ b/include/linux/signal.h | |||
@@ -14,10 +14,12 @@ | |||
14 | * | 14 | * |
15 | * SA_INTERRUPT is also used by the irq handling routines. | 15 | * SA_INTERRUPT is also used by the irq handling routines. |
16 | * SA_SHIRQ is for shared interrupt support on PCI and EISA. | 16 | * SA_SHIRQ is for shared interrupt support on PCI and EISA. |
17 | * SA_PROBEIRQ is set by callers when they expect sharing mismatches to occur | ||
17 | */ | 18 | */ |
18 | #define SA_PROBE SA_ONESHOT | ||
19 | #define SA_SAMPLE_RANDOM SA_RESTART | 19 | #define SA_SAMPLE_RANDOM SA_RESTART |
20 | #define SA_SHIRQ 0x04000000 | 20 | #define SA_SHIRQ 0x04000000 |
21 | #define SA_PROBEIRQ 0x08000000 | ||
22 | |||
21 | /* | 23 | /* |
22 | * As above, these correspond to the IORESOURCE_IRQ_* defines in | 24 | * As above, these correspond to the IORESOURCE_IRQ_* defines in |
23 | * linux/ioport.h to select the interrupt line behaviour. When | 25 | * linux/ioport.h to select the interrupt line behaviour. When |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 3bdc1970f8bd..70c64dbe4b8a 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
@@ -573,6 +573,9 @@ asmlinkage long sys_splice(int fd_in, loff_t __user *off_in, | |||
573 | int fd_out, loff_t __user *off_out, | 573 | int fd_out, loff_t __user *off_out, |
574 | size_t len, unsigned int flags); | 574 | size_t len, unsigned int flags); |
575 | 575 | ||
576 | asmlinkage long sys_vmsplice(int fd, const struct iovec __user *iov, | ||
577 | unsigned long nr_segs, unsigned int flags); | ||
578 | |||
576 | asmlinkage long sys_tee(int fdin, int fdout, size_t len, unsigned int flags); | 579 | asmlinkage long sys_tee(int fdin, int fdout, size_t len, unsigned int flags); |
577 | 580 | ||
578 | asmlinkage long sys_sync_file_range(int fd, loff_t offset, loff_t nbytes, | 581 | asmlinkage long sys_sync_file_range(int fd, loff_t offset, loff_t nbytes, |