With kernel 2.6.37 it is now mandatory to define the llseek operation
for files and directories. If these are not defined, no_llseek is
called, and any attempt to seek returns ESPIPE.
Most file systems use generic_file_llseek, but it seems safer to use
default_llseek which is what the vfs used to call for us by default.
In 2.6.37 these two functions are actually functionally identical.
Reviewed-on: http://gerrit.openafs.org/3292
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry-picked from commit
fb6b22cf77039962f22f462ee602f0e4a8153817)
Reviewed-on: http://gerrit.openafs.org/3512
Tested-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit
d0e31ec418555354ac30516269a9748ee01fc36f)
Change-Id: If90a5ac65a9ccd1d1301884065e9583ad25f5af4
Reviewed-on: http://gerrit.openafs.org/3527
#endif
.open = afs_linux_open,
.release = afs_linux_release,
+ .llseek = default_llseek,
};
struct file_operations afs_file_fops = {
#ifdef STRUCT_FILE_OPERATIONS_HAS_FLOCK
.flock = afs_linux_flock,
#endif
+ .llseek = default_llseek,
};