NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-xen/56328 (XEN3 DOM0 panic with bcount <= MAXPHYS in xbdback_xenbus.c)
The following reply was made to PR port-xen/56328; it has been noted by GNATS.
From: mlelstv%serpens.de@localhost (Michael van Elst)
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: port-xen/56328 (XEN3 DOM0 panic with bcount <= MAXPHYS in xbdback_xenbus.c)
Date: Sun, 25 Jul 2021 07:07:09 -0000 (UTC)
jdolecek%NetBSD.org@localhost writes:
>I'll check this. It's either Linux kernel not honoring max number of segments,
>or an off-by-one on our side setting it.
I'm not sure if there is a size limit to a segment, so one segment
could transfer up to 256 sectors (128kB, with optionally sectors larger
than 512 bytes even more). Linux uses a segment per 4k page though.
But there can also be more than BLKIF_MAX_SEGMENTS_PER_REQUEST=11 segments in
an indirect page. With 4k page size, it fits 256 descriptors (probably 255
since nr_segments is uint8_t).
We still accumulate the whole request into a single buffer.
The driver needs to learn to split requests into multiple I/O operations
and it probably shouldn't panic when it gets a request it doesn't support
but return an error to the frontend instead.
Home |
Main Index |
Thread Index |
Old Index