gfs2: s64 cast for negative quota value
One-line fix to cast quota value to s64 before comparison. By default the quantity is treated as u64. Signed-off-by: Abhi Das <adas@redhat.com> Signed-off-by: Bob Peterson <rpeterso@redhat.com> Acked-by: Steven Whitehouse <swhiteho@redhat.com>
This commit is contained in:
Родитель
9cde2898d0
Коммит
1bdf45352e
|
@ -798,7 +798,7 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc,
|
||||||
loc -= sizeof(q); /* gfs2_internal_read would've advanced the loc ptr */
|
loc -= sizeof(q); /* gfs2_internal_read would've advanced the loc ptr */
|
||||||
err = -EIO;
|
err = -EIO;
|
||||||
be64_add_cpu(&q.qu_value, change);
|
be64_add_cpu(&q.qu_value, change);
|
||||||
if (be64_to_cpu(q.qu_value) < 0)
|
if (((s64)be64_to_cpu(q.qu_value)) < 0)
|
||||||
q.qu_value = 0; /* Never go negative on quota usage */
|
q.qu_value = 0; /* Never go negative on quota usage */
|
||||||
qd->qd_qb.qb_value = q.qu_value;
|
qd->qd_qb.qb_value = q.qu_value;
|
||||||
if (fdq) {
|
if (fdq) {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче