summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorAndrey Smirnov <andrew.smirnov@gmail.com>2019-01-28 22:55:39 -0800
committerSascha Hauer <s.hauer@pengutronix.de>2019-01-29 09:27:04 +0100
commit5c9408572406c8718a35931ecf74a5cf38632914 (patch)
treecfcbe96996cb41a46334cf76f6d51d48a694397f /fs
parent0c2431b5a15ca03e20ce3c698b8b708181db5fd9 (diff)
downloadbarebox-5c9408572406c8718a35931ecf74a5cf38632914.tar.gz
barebox-5c9408572406c8718a35931ecf74a5cf38632914.tar.xz
devfs: Drop dev_lseek_default()
Only the following cdevs do not declare an .lseek() operation: - Console devices in common/console.c - Firmware framework in common/firmware.c - JTAG driver in drivers/misc/jtag.c - UBI in drivers/mtd/ubi/barebox.c Of those four, first two are marked DEVFS_IS_CHARACTER_DEV and implement only .write() operation and the last two don't implement anything but .ioctl(). While there's probably no meaningful way to use lseek() against any of those devices, there doesn't seem to be any harm in allowing it either. Change devfs_lseek() to ignore absense of .lseek() callback and drop dev_lseek_default() and all references to it in the codebase. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'fs')
-rw-r--r--fs/devfs-core.c1
-rw-r--r--fs/devfs.c2
2 files changed, 0 insertions, 3 deletions
diff --git a/fs/devfs-core.c b/fs/devfs-core.c
index f017e1c55d..522ef91752 100644
--- a/fs/devfs-core.c
+++ b/fs/devfs-core.c
@@ -459,7 +459,6 @@ static const struct cdev_operations loop_ops = {
.read = loop_read,
.write = loop_write,
.memmap = generic_memmap_rw,
- .lseek = dev_lseek_default,
};
struct cdev *cdev_create_loop(const char *path, ulong flags, loff_t offset)
diff --git a/fs/devfs.c b/fs/devfs.c
index 6acbbd7adb..5599f39e8c 100644
--- a/fs/devfs.c
+++ b/fs/devfs.c
@@ -66,8 +66,6 @@ static loff_t devfs_lseek(struct device_d *_dev, FILE *f, loff_t pos)
ret = cdev->ops->lseek(cdev, pos + cdev->offset);
if (ret < 0)
return ret;
- } else {
- return -ENOSYS;
}
return pos;