hw/usb/dev-mtp: Correctly report free space
In order to compute the amount of free space (in bytes), the number of available blocks (f_bavail) should be multiplied by the block size (f_frsize) instead of the total number of blocks (f_blocks). Signed-off-by: Fabio D'Urso <fdurso@google.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20240618003657.3344685-1-fdurso@google.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
parent
ce5311c476
commit
283720489f
@ -886,7 +886,7 @@ static MTPData *usb_mtp_get_storage_info(MTPState *s, MTPControl *c)
|
||||
rc = statvfs(s->root, &buf);
|
||||
if (rc == 0) {
|
||||
usb_mtp_add_u64(d, (uint64_t)buf.f_frsize * buf.f_blocks);
|
||||
usb_mtp_add_u64(d, (uint64_t)buf.f_bavail * buf.f_blocks);
|
||||
usb_mtp_add_u64(d, (uint64_t)buf.f_frsize * buf.f_bavail);
|
||||
usb_mtp_add_u32(d, buf.f_ffree);
|
||||
} else {
|
||||
usb_mtp_add_u64(d, 0xffffffff);
|
||||
|
Loading…
Reference in New Issue
Block a user