* [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
@ 2017-08-11 15:18 Christoph Hellwig
2017-08-11 16:04 ` Darrick J. Wong
2017-08-12 9:00 ` Paul Menzel
0 siblings, 2 replies; 8+ messages in thread
From: Christoph Hellwig @ 2017-08-11 15:18 UTC (permalink / raw)
To: linux-xfs; +Cc: pmenzel, stockhausen
Fix the min_t calls in the zeroing and dirtying helpers to perform the
comparisms on 64-bit types, which prevents them from incorrectly
being truncated, and larger zeroing operations being stuck in a never
ending loop.
Special thanks to Markus Stockhausen for spotting the bug.
Reported-by: Paul Menzel <pmenzel@molgen.mpg.de>
Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
---
fs/iomap.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/iomap.c b/fs/iomap.c
index 039266128b7f..59cc98ad7577 100644
--- a/fs/iomap.c
+++ b/fs/iomap.c
@@ -278,7 +278,7 @@ iomap_dirty_actor(struct inode *inode, loff_t pos, loff_t length, void *data,
unsigned long bytes; /* Bytes to write to page */
offset = (pos & (PAGE_SIZE - 1));
- bytes = min_t(unsigned long, PAGE_SIZE - offset, length);
+ bytes = min_t(loff_t, PAGE_SIZE - offset, length);
rpage = __iomap_read_page(inode, pos);
if (IS_ERR(rpage))
@@ -373,7 +373,7 @@ iomap_zero_range_actor(struct inode *inode, loff_t pos, loff_t count,
unsigned offset, bytes;
offset = pos & (PAGE_SIZE - 1); /* Within page */
- bytes = min_t(unsigned, PAGE_SIZE - offset, count);
+ bytes = min_t(loff_t, PAGE_SIZE - offset, count);
if (IS_DAX(inode))
status = iomap_dax_zero(pos, offset, bytes, iomap);
--
2.11.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-11 15:18 [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers Christoph Hellwig
@ 2017-08-11 16:04 ` Darrick J. Wong
2017-08-11 16:06 ` Christoph Hellwig
2017-08-12 9:00 ` Paul Menzel
1 sibling, 1 reply; 8+ messages in thread
From: Darrick J. Wong @ 2017-08-11 16:04 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-xfs, pmenzel, stockhausen
On Fri, Aug 11, 2017 at 05:18:05PM +0200, Christoph Hellwig wrote:
> Fix the min_t calls in the zeroing and dirtying helpers to perform the
> comparisms on 64-bit types, which prevents them from incorrectly
> being truncated, and larger zeroing operations being stuck in a never
> ending loop.
>
> Special thanks to Markus Stockhausen for spotting the bug.
>
> Reported-by: Paul Menzel <pmenzel@molgen.mpg.de>
> Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
Looks fine to me,
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
(Are you going to push this to Al yourself, or do you want me to drag it
through the xfs tree?)
> ---
> fs/iomap.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fs/iomap.c b/fs/iomap.c
> index 039266128b7f..59cc98ad7577 100644
> --- a/fs/iomap.c
> +++ b/fs/iomap.c
> @@ -278,7 +278,7 @@ iomap_dirty_actor(struct inode *inode, loff_t pos, loff_t length, void *data,
> unsigned long bytes; /* Bytes to write to page */
>
> offset = (pos & (PAGE_SIZE - 1));
> - bytes = min_t(unsigned long, PAGE_SIZE - offset, length);
> + bytes = min_t(loff_t, PAGE_SIZE - offset, length);
>
> rpage = __iomap_read_page(inode, pos);
> if (IS_ERR(rpage))
> @@ -373,7 +373,7 @@ iomap_zero_range_actor(struct inode *inode, loff_t pos, loff_t count,
> unsigned offset, bytes;
>
> offset = pos & (PAGE_SIZE - 1); /* Within page */
> - bytes = min_t(unsigned, PAGE_SIZE - offset, count);
> + bytes = min_t(loff_t, PAGE_SIZE - offset, count);
>
> if (IS_DAX(inode))
> status = iomap_dax_zero(pos, offset, bytes, iomap);
> --
> 2.11.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-11 16:04 ` Darrick J. Wong
@ 2017-08-11 16:06 ` Christoph Hellwig
2017-08-16 21:52 ` Darrick J. Wong
0 siblings, 1 reply; 8+ messages in thread
From: Christoph Hellwig @ 2017-08-11 16:06 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: Christoph Hellwig, linux-xfs, pmenzel, stockhausen
On Fri, Aug 11, 2017 at 09:04:43AM -0700, Darrick J. Wong wrote:
> Looks fine to me,
> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
>
> (Are you going to push this to Al yourself, or do you want me to drag it
> through the xfs tree?)
In general we've maintained iomap.c through the XFS tree so far.
I think it's easiest to stick to that.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-11 15:18 [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers Christoph Hellwig
2017-08-11 16:04 ` Darrick J. Wong
@ 2017-08-12 9:00 ` Paul Menzel
2017-08-13 9:08 ` Christoph Hellwig
1 sibling, 1 reply; 8+ messages in thread
From: Paul Menzel @ 2017-08-12 9:00 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-xfs, stockhausen, it+linux-nfs
Dear Christoph,
On 2017-08-11 17:18, Christoph Hellwig wrote:
> Fix the min_t calls in the zeroing and dirtying helpers to perform the
> comparisms on 64-bit types, which prevents them from incorrectly
> being truncated, and larger zeroing operations being stuck in a never
> ending loop.
>
> Special thanks to Markus Stockhausen for spotting the bug.
>
> Reported-by: Paul Menzel <pmenzel@molgen.mpg.de>
> Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
Thank you very much for providing the fix that quickly.
Please don’t forget to tag it for the stable series (4.8+).
Cc: stable@vger.kernel.org
Kind regards,
Paul
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-12 9:00 ` Paul Menzel
@ 2017-08-13 9:08 ` Christoph Hellwig
2017-09-11 14:50 ` Paul Menzel
0 siblings, 1 reply; 8+ messages in thread
From: Christoph Hellwig @ 2017-08-13 9:08 UTC (permalink / raw)
To: Paul Menzel; +Cc: Christoph Hellwig, linux-xfs, stockhausen, it+linux-nfs
Hi Paul,
I'm overdue doing another XFS stable backport batch, and I will
include this patch.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-11 16:06 ` Christoph Hellwig
@ 2017-08-16 21:52 ` Darrick J. Wong
2017-08-17 7:05 ` Christoph Hellwig
0 siblings, 1 reply; 8+ messages in thread
From: Darrick J. Wong @ 2017-08-16 21:52 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-xfs, pmenzel, stockhausen
On Fri, Aug 11, 2017 at 06:06:58PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 09:04:43AM -0700, Darrick J. Wong wrote:
> > Looks fine to me,
> > Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
> >
> > (Are you going to push this to Al yourself, or do you want me to drag it
> > through the xfs tree?)
>
> In general we've maintained iomap.c through the XFS tree so far.
> I think it's easiest to stick to that.
Needs signed-off-by. :(
--D
> --
> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-16 21:52 ` Darrick J. Wong
@ 2017-08-17 7:05 ` Christoph Hellwig
0 siblings, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2017-08-17 7:05 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: Christoph Hellwig, linux-xfs, pmenzel, stockhausen
On Wed, Aug 16, 2017 at 02:52:55PM -0700, Darrick J. Wong wrote:
> On Fri, Aug 11, 2017 at 06:06:58PM +0200, Christoph Hellwig wrote:
> > On Fri, Aug 11, 2017 at 09:04:43AM -0700, Darrick J. Wong wrote:
> > > Looks fine to me,
> > > Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
> > >
> > > (Are you going to push this to Al yourself, or do you want me to drag it
> > > through the xfs tree?)
> >
> > In general we've maintained iomap.c through the XFS tree so far.
> > I think it's easiest to stick to that.
>
> Needs signed-off-by. :(
Feel free to add it:
Reviewed-by: Christoph Hellwig <hch@lst.de>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers
2017-08-13 9:08 ` Christoph Hellwig
@ 2017-09-11 14:50 ` Paul Menzel
0 siblings, 0 replies; 8+ messages in thread
From: Paul Menzel @ 2017-09-11 14:50 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-xfs, stockhausen, it+linux-nfs
Dear Christoph,
On 08/13/17 11:08, Christoph Hellwig wrote:
> I'm overdue doing another XFS stable backport batch, and I will
> include this patch.
If I am not mistaken, this has not been picked up yet for the stable series.
```
$ git tag --contains e28ae8e428fefe2facd72cea9f29906ecb9c861d
v4.13
v4.13-rc6
v4.13-rc7
v4.13.1
$ git log --grep e28ae8e428fefe2facd72cea9f29906ecb9c861d v4.9.48
$
```
Do you want me to submit it for inclusion?
Kind regards,
Paul
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-09-11 14:50 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-11 15:18 [PATCH] iomap: fix integer truncation issues in the zeroing and dirtying helpers Christoph Hellwig
2017-08-11 16:04 ` Darrick J. Wong
2017-08-11 16:06 ` Christoph Hellwig
2017-08-16 21:52 ` Darrick J. Wong
2017-08-17 7:05 ` Christoph Hellwig
2017-08-12 9:00 ` Paul Menzel
2017-08-13 9:08 ` Christoph Hellwig
2017-09-11 14:50 ` Paul Menzel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox