summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2004-08-07 09:43:47 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-08-07 09:43:47 -0700
commitf7a4bc7ee10c8e39e80b3e84f227a5752b0092d9 (patch)
treed0ee302ad03fd56ef4df6af5dfee6e77c28932ea /include/linux
parent24e259799962e03efe3d1470346537ab1ce1b078 (diff)
Make sysctl pass the pos pointer around properly.
Nobody ever fixed the big FIXME in sysctl - but we really need to pass around the proper "loff_t *" to all the sysctl functions if we want them to be well-behaved wrt the file pointer position. This is all preparation for making direct f_pos accesses go away.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/coda_proc.h4
-rw-r--r--include/linux/hugetlb.h2
-rw-r--r--include/linux/mmzone.h4
-rw-r--r--include/linux/sysctl.h18
-rw-r--r--include/linux/writeback.h2
5 files changed, 15 insertions, 15 deletions
diff --git a/include/linux/coda_proc.h b/include/linux/coda_proc.h
index 5bf752163790..c061a22ed86d 100644
--- a/include/linux/coda_proc.h
+++ b/include/linux/coda_proc.h
@@ -82,10 +82,10 @@ void reset_coda_cache_inv_stats( void );
* data structure for /proc/sys/... files
*/
int do_reset_coda_vfs_stats( ctl_table * table, int write, struct file * filp,
- void __user * buffer, size_t * lenp );
+ void __user * buffer, size_t * lenp, loff_t * ppos );
int do_reset_coda_cache_inv_stats( ctl_table * table, int write,
struct file * filp, void __user * buffer,
- size_t * lenp );
+ size_t * lenp, loff_t * ppos );
/* these functions are called to form the content of /proc/fs/coda/... files */
int coda_vfs_stats_get_info( char * buffer, char ** start, off_t offset,
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 5e578c036157..954af9d82768 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -12,7 +12,7 @@ static inline int is_vm_hugetlb_page(struct vm_area_struct *vma)
return vma->vm_flags & VM_HUGETLB;
}
-int hugetlb_sysctl_handler(struct ctl_table *, int, struct file *, void __user *, size_t *);
+int hugetlb_sysctl_handler(struct ctl_table *, int, struct file *, void __user *, size_t *, loff_t *);
int copy_hugetlb_page_range(struct mm_struct *, struct mm_struct *, struct vm_area_struct *);
int follow_hugetlb_page(struct mm_struct *, struct vm_area_struct *, struct page **, struct vm_area_struct **, unsigned long *, int *, int);
void zap_hugepage_range(struct vm_area_struct *, unsigned long, unsigned long);
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
index 8958b0e6af06..8a23709fe18a 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -374,9 +374,9 @@ static inline int is_normal(struct zone *zone)
struct ctl_table;
struct file;
int min_free_kbytes_sysctl_handler(struct ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
int lower_zone_protection_sysctl_handler(struct ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
#include <linux/topology.h>
/* Returns the number of the current Node. */
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h
index 38acd5d4b691..70ac59e6a41f 100644
--- a/include/linux/sysctl.h
+++ b/include/linux/sysctl.h
@@ -762,24 +762,24 @@ typedef int ctl_handler (ctl_table *table, int __user *name, int nlen,
void **context);
typedef int proc_handler (ctl_table *ctl, int write, struct file * filp,
- void __user *buffer, size_t *lenp);
+ void __user *buffer, size_t *lenp, loff_t *ppos);
extern int proc_dostring(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_dointvec(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_dointvec_bset(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_dointvec_minmax(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_dointvec_jiffies(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_dointvec_userhz_jiffies(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_doulongvec_minmax(ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
extern int proc_doulongvec_ms_jiffies_minmax(ctl_table *table, int,
- struct file *, void __user *, size_t *);
+ struct file *, void __user *, size_t *, loff_t *);
extern int do_sysctl (int __user *name, int nlen,
void __user *oldval, size_t __user *oldlenp,
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
index f557b55e8b0a..e4450070ac78 100644
--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
@@ -86,7 +86,7 @@ extern int laptop_mode;
struct ctl_table;
struct file;
int dirty_writeback_centisecs_handler(struct ctl_table *, int, struct file *,
- void __user *, size_t *);
+ void __user *, size_t *, loff_t *);
void page_writeback_init(void);
void balance_dirty_pages_ratelimited(struct address_space *mapping);