virtio: Explicitly request queue sizes where needed.Ensure that allocated queues can hold the amount of descriptors thatwere previously communicated to DMAResources in virtio_block andvirtio_scsi
virtio: Explicitly request queue sizes where needed.Ensure that allocated queues can hold the amount of descriptors thatwere previously communicated to DMAResources in virtio_block andvirtio_scsi. The queue allocations will now fail with B_BUFFER_OVERFLOWif the requested size cannot be provided.When requestedSizes are set to 0, no requirement is placed and the queueis sized to its advertised maximum. The requestedSizes argument can beNULL which implies all 0.Change-Id: Ifb1e032d48f8c07aedfe2bf941f32783842c8c12Reviewed-on: https://review.haiku-os.org/c/haiku/+/8220Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
show more ...
virtio_rng: Use local ConditionVariableEntry.In case the queue operation failed, the entry would stay attached to theConditionVariable and eventually trigger an assert when re-added on thenext it
virtio_rng: Use local ConditionVariableEntry.In case the queue operation failed, the entry would stay attached to theConditionVariable and eventually trigger an assert when re-added on thenext iteration.Change-Id: I347b5b1c86a7cabc12a6052f85266ef1c584c415Reviewed-on: https://review.haiku-os.org/c/haiku/+/8187Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>Reviewed-by: waddlesplash <waddlesplash@gmail.com>Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
ccp: add new IDsChange-Id: Id9b2512d9f3b44d6ea25cb939dfd3054fe07600aReviewed-on: https://review.haiku-os.org/c/haiku/+/7338Reviewed-by: waddlesplash <waddlesplash@gmail.com>
random: move virtio in a subdirChange-Id: Idd776d6599613807c611cc6f72d8c1d2b9234946Reviewed-on: https://review.haiku-os.org/c/haiku/+/7337Reviewed-by: waddlesplash <waddlesplash@gmail.com>
virtio: support modern devicesfixes #17239 #17238Change-Id: Ia5b6347110a60fab18852079b30dca6301010474Reviewed-on: https://review.haiku-os.org/c/haiku/+/6995Reviewed-by: Jérôme Duval <jerome.duv
virtio: support modern devicesfixes #17239 #17238Change-Id: Ia5b6347110a60fab18852079b30dca6301010474Reviewed-on: https://review.haiku-os.org/c/haiku/+/6995Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
busses: remove unneeded PCI_x86.hChange-Id: Ia231eadc02856f68daa0184c12e7d54853ac9322Reviewed-on: https://review.haiku-os.org/c/haiku/+/6326Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
kernel: Drop non-standard GNU inline assignment syntax* We needed this previously due to our gcc2 compiled kernel.* Now that our kernel is always latest gcc, we can move to the c++20 syntax for
kernel: Drop non-standard GNU inline assignment syntax* We needed this previously due to our gcc2 compiled kernel.* Now that our kernel is always latest gcc, we can move to the c++20 syntax for inline assignment.* Improves compatibility with clang, less GNU-specific stuffChange-Id: Ib7272a0a52554a31e9a0e788fd3f031db9049795Reviewed-on: https://review.haiku-os.org/c/haiku/+/5898Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
ccp: driver for the RNG part of CCP on AMDthe entropy source is read every second and pushed to the PRNG.the PCI device is tested, not the ACPI.Change-Id: I9bb6b21c7189b28a1d8a624d83b33ff6682152
ccp: driver for the RNG part of CCP on AMDthe entropy source is read every second and pushed to the PRNG.the PCI device is tested, not the ACPI.Change-Id: I9bb6b21c7189b28a1d8a624d83b33ff6682152dcReviewed-on: https://review.haiku-os.org/c/haiku/+/5825Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
random: always use the PRNG, and use entropy sources to feed itremove the yarrow module. the hardware modules can push entropy with queue_randomness().virtio_rng will now push entropy every 300 se
random: always use the PRNG, and use entropy sources to feed itremove the yarrow module. the hardware modules can push entropy with queue_randomness().virtio_rng will now push entropy every 300 seconds.helps with #14937Change-Id: If76c5deabf61dc616a0e051332f44b89deb6b8a1Reviewed-on: https://review.haiku-os.org/c/haiku/+/5824Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>Reviewed-by: waddlesplash <waddlesplash@gmail.com>
virtio RNG: fix SMAP violationChange-Id: I82fadcef6d3f402b10273b6f378d5357f3c835c3Reviewed-on: https://review.haiku-os.org/c/haiku/+/3716Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
virtio: Rework queue_dequeue to return a boolean.It previously returned the cookie directly, which made it impossibleto distinguish between a NULL cookie and the function not havinganything to de
virtio: Rework queue_dequeue to return a boolean.It previously returned the cookie directly, which made it impossibleto distinguish between a NULL cookie and the function not havinganything to dequeue. This lead to some code setting a cookie that wasnot actually used.Return the dequeue status as a boolean and provide the cookie with anoptionally handed in pointer instead and adjust all users.Change-Id: Iaac1726ac4bc7ae42bb96b8f0915852b6def5822Reviewed-on: https://review.haiku-os.org/c/haiku/+/1814Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>Reviewed-by: waddlesplash <waddlesplash@gmail.com>
virtio: refactor to have a handler per queue.* enable to iterate on available entries in one interrupt call.* negociate -> negotiate, (void *) -> (void* ), thanks axel and philippe!Change-Id: Ie
virtio: refactor to have a handler per queue.* enable to iterate on available entries in one interrupt call.* negociate -> negotiate, (void *) -> (void* ), thanks axel and philippe!Change-Id: Ie2d290797abcbf4c0f3cb5bfff71d091bb800fa6
CID 1108447 Uninitialized scalar field
random: add a Virtio RNG module* The default module is replaced by the Virtio RNG module when found.* This can have the undesired effect of rendering /dev/urandom slow.* Tested with the following
random: add a Virtio RNG module* The default module is replaced by the Virtio RNG module when found.* This can have the undesired effect of rendering /dev/urandom slow.* Tested with the following QEmu command line option:-device virtio-rng-pci,rng=rng0 -object rng-random,filename=/dev/random,id=rng0* moved random.h to private/drivers headers.