xfs: cap the length of deduplication requests
authorDarrick J. Wong <darrick.wong@oracle.com>
Tue, 17 Apr 2018 06:07:36 +0000 (23:07 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Wed, 2 May 2018 16:21:33 +0000 (09:21 -0700)
commit021ba8e98fe5c6691b3cc3669faafa02403aa211
tree9b4b92b15794cb1e2c7a70f7dae329b3923679b2
parent7b38460dc8e4eafba06c78f8e37099d3b34d473c
xfs: cap the length of deduplication requests

Since deduplication potentially has to read in all the pages in both
files in order to compare the contents, cap the deduplication request
length at MAX_RW_COUNT/2 (roughly 1GB) so that we have /some/ upper bound
on the request length and can't just lock up the kernel forever.  Found
by running generic/304 after commit 1ddae54555b62 ("common/rc: add
missing 'local' keywords").

Reported-by: matorola@gmail.com
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
fs/xfs/xfs_file.c