summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorValentine Sinitsyn <valesini@yandex-team.ru>2023-09-25 11:40:12 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-10-05 13:42:11 +0200
commit0fedefd4c4e33dd24f726b13b5d7c143e2b483be (patch)
treecf84459a4ef3e035265bd133847b1ea202d963ff /drivers
parent7360a48bd0f5e62b2d00c387d5d3f2821eb290ce (diff)
downloadlinux-stable-0fedefd4c4e33dd24f726b13b5d7c143e2b483be.tar.gz
linux-stable-0fedefd4c4e33dd24f726b13b5d7c143e2b483be.tar.bz2
linux-stable-0fedefd4c4e33dd24f726b13b5d7c143e2b483be.zip
kernfs: sysfs: support custom llseek method for sysfs entries
As of now, seeking in sysfs files is handled by generic_file_llseek(). There are situations where one may want to customize seeking logic: - Many sysfs entries are fixed files while generic_file_llseek() accepts past-the-end positions. Not only being useless by itself, this also means a bug in userspace code will trigger not at lseek(), but at some later point making debugging harder. - generic_file_llseek() relies on f_mapping->host to get the file size which might not be correct for all sysfs entries. See commit 636b21b50152 ("PCI: Revoke mappings like devmem") as an example. Implement llseek method to override this behavior at sysfs attribute level. The method is optional, and if it is absent, generic_file_llseek() is called to preserve backwards compatibility. Signed-off-by: Valentine Sinitsyn <valesini@yandex-team.ru> Link: https://lore.kernel.org/r/20230925084013.309399-1-valesini@yandex-team.ru Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions