diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2019-01-28 22:55:39 -0800 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2019-01-29 09:27:04 +0100 |
commit | 5c9408572406c8718a35931ecf74a5cf38632914 (patch) | |
tree | cfcbe96996cb41a46334cf76f6d51d48a694397f /fs | |
parent | 0c2431b5a15ca03e20ce3c698b8b708181db5fd9 (diff) | |
download | barebox-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.c | 1 | ||||
-rw-r--r-- | fs/devfs.c | 2 |
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; |