mirror of
https://github.com/torvalds/linux.git
synced 2024-11-26 22:21:42 +00:00
new helper: fixed_size_llseek()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
0747fdb2bd
commit
1bf9d14dff
@ -144,6 +144,26 @@ loff_t generic_file_llseek(struct file *file, loff_t offset, int whence)
|
||||
}
|
||||
EXPORT_SYMBOL(generic_file_llseek);
|
||||
|
||||
/**
|
||||
* fixed_size_llseek - llseek implementation for fixed-sized devices
|
||||
* @file: file structure to seek on
|
||||
* @offset: file offset to seek to
|
||||
* @whence: type of seek
|
||||
* @size: size of the file
|
||||
*
|
||||
*/
|
||||
loff_t fixed_size_llseek(struct file *file, loff_t offset, int whence, loff_t size)
|
||||
{
|
||||
switch (whence) {
|
||||
case SEEK_SET: case SEEK_CUR: case SEEK_END:
|
||||
return generic_file_llseek_size(file, offset, whence,
|
||||
size, size);
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(fixed_size_llseek);
|
||||
|
||||
/**
|
||||
* noop_llseek - No Operation Performed llseek implementation
|
||||
* @file: file structure to seek on
|
||||
|
@ -2428,6 +2428,8 @@ extern loff_t no_llseek(struct file *file, loff_t offset, int whence);
|
||||
extern loff_t generic_file_llseek(struct file *file, loff_t offset, int whence);
|
||||
extern loff_t generic_file_llseek_size(struct file *file, loff_t offset,
|
||||
int whence, loff_t maxsize, loff_t eof);
|
||||
extern loff_t fixed_size_llseek(struct file *file, loff_t offset,
|
||||
int whence, loff_t size);
|
||||
extern int generic_file_open(struct inode * inode, struct file * filp);
|
||||
extern int nonseekable_open(struct inode * inode, struct file * filp);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user