9pfs: Fix divide by zero bug
Some filesystems may return 0s in statfs (trivially, a FUSE filesystem can do so). QEMU should handle this gracefully and just behave the same as if statfs failed. Signed-off-by: Dan Schatzberg <dschatzberg@fb.com> Acked-by: Christian Schoenebeck <qemu_oss@crudebyte.com> Signed-off-by: Greg Kurz <groug@kaod.org>
This commit is contained in:
parent
2061735ff0
commit
68d654daee
@ -1834,8 +1834,10 @@ static int32_t coroutine_fn get_iounit(V9fsPDU *pdu, V9fsPath *path)
|
||||
* and as well as less than (client msize - P9_IOHDRSZ))
|
||||
*/
|
||||
if (!v9fs_co_statfs(pdu, path, &stbuf)) {
|
||||
iounit = stbuf.f_bsize;
|
||||
iounit *= (s->msize - P9_IOHDRSZ)/stbuf.f_bsize;
|
||||
if (stbuf.f_bsize) {
|
||||
iounit = stbuf.f_bsize;
|
||||
iounit *= (s->msize - P9_IOHDRSZ) / stbuf.f_bsize;
|
||||
}
|
||||
}
|
||||
if (!iounit) {
|
||||
iounit = s->msize - P9_IOHDRSZ;
|
||||
|
Loading…
Reference in New Issue
Block a user