Temporarily revert r282922 which bumped the max descriptors.
While there is no issued with the number of descriptors in a virtio indirect descriptor, it's a guest's choice as to whether indirect descriptors are used. For the case where they aren't, the virtio block ring size is still 64 which is less than the now reported max_segs of 67. This results in an assertion in recent Linux guests even though it was benign since they were using indirect descs. The intertwined relationship between virtio ring size, max seg size and blockif queue size will be addressed in an upcoming commit, at which point the max descriptors will again be bumped up to 67.
This commit is contained in:
parent
04017fc7a4
commit
fd19881492
@ -39,7 +39,7 @@
|
|||||||
#include <sys/uio.h>
|
#include <sys/uio.h>
|
||||||
#include <sys/unistd.h>
|
#include <sys/unistd.h>
|
||||||
|
|
||||||
#define BLOCKIF_IOV_MAX 67 /* not practical to be IOV_MAX */
|
#define BLOCKIF_IOV_MAX 33 /* not practical to be IOV_MAX */
|
||||||
|
|
||||||
struct blockif_req {
|
struct blockif_req {
|
||||||
struct iovec br_iov[BLOCKIF_IOV_MAX];
|
struct iovec br_iov[BLOCKIF_IOV_MAX];
|
||||||
|
Loading…
Reference in New Issue
Block a user