summaryrefslogtreecommitdiff
path: root/lib/iomap.c
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2015-03-04 14:42:02 +0100
committerJan Kara <jack@suse.cz>2015-03-04 16:42:46 +0100
commit7e08da50cf706151f324349f9235ebd311226997 (patch)
tree3573b83be3cf4f8ee26c92b91d7aad3a4892ef5a /lib/iomap.c
parent781970240a56d1c15a9b8ee37d28987b8182f060 (diff)
quota: Fix maximum quota limit settings
Currently quota format that supports 64-bit usage sets maximum quota limit as 2^64-1. However quota core code uses signed numbers to track usage and even limits themselves are stored in long long. Checking of maximum allowable limits worked by luck until commit 14bf61ffe6ac (quota: Switch ->get_dqblk() and ->set_dqblk() to use bytes as space units) because variable we compared with was unsigned. After that commit the type we compared against changed to signed and thus checks for maximum limits with the newest VFS quota format started to refuse any non-negative value. Later the problem was inadvertedly fixed by commit b10a08194c2b (quota: Store maximum space limit in bytes) because we started to compare against unsigned type as well. Fix possible future problems of this kind by setting maximum limits to 2^63-1 to avoid overflow issues. Reported-by: Carlos Carvalho <carlos@fisica.ufpr.br> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'lib/iomap.c')
0 files changed, 0 insertions, 0 deletions