diff options
| author | 2019-05-06 12:04:12 +0200 | |
|---|---|---|
| committer | 2019-05-06 12:04:12 +0200 | |
| commit | fb4e0592654adb31bc6f3a738d6499b816a655d6 (patch) | |
| tree | e6edaf18cf3a7f49e93fb51de5a47f4b9e786f53 /fs/read_write.c | |
| parent | irq_work: Do not raise an IPI when queueing work on the local CPU (diff) | |
| parent | iommu/dma-iommu: Remove iommu_dma_map_msi_msg() (diff) | |
| download | wireguard-linux-fb4e0592654adb31bc6f3a738d6499b816a655d6.tar.xz wireguard-linux-fb4e0592654adb31bc6f3a738d6499b816a655d6.zip | |
Merge tag 'irqchip-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/core
Pull irqchip updates from Marc Zyngier
- The huge (and terrifying) TI INTR/INTA set of drivers
- Rewrite of the stm32mp1-exti driver as a platform driver
- Update the IOMMU MSI mapping API to be RT friendly
- A number of cleanups and other low impact fixes
Diffstat (limited to 'fs/read_write.c')
| -rw-r--r-- | fs/read_write.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/read_write.c b/fs/read_write.c index 177ccc3d405a..61b43ad7608e 100644 --- a/fs/read_write.c +++ b/fs/read_write.c @@ -560,12 +560,13 @@ ssize_t vfs_write(struct file *file, const char __user *buf, size_t count, loff_ static inline loff_t file_pos_read(struct file *file) { - return file->f_pos; + return file->f_mode & FMODE_STREAM ? 0 : file->f_pos; } static inline void file_pos_write(struct file *file, loff_t pos) { - file->f_pos = pos; + if ((file->f_mode & FMODE_STREAM) == 0) + file->f_pos = pos; } ssize_t ksys_read(unsigned int fd, char __user *buf, size_t count) |
