Page MenuHomeFreeBSD

memdesc: Retire MEMDESC_BIO.
ClosedPublic

Authored by jhb on Jul 13 2023, 9:45 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Jun 15, 1:54 PM
Unknown Object (File)
Wed, Jun 5, 12:03 AM
Unknown Object (File)
Tue, Jun 4, 9:29 PM
Unknown Object (File)
May 26 2024, 6:28 AM
Unknown Object (File)
May 2 2024, 12:47 PM
Unknown Object (File)
May 2 2024, 11:21 AM
Unknown Object (File)
May 2 2024, 11:08 AM
Unknown Object (File)
May 2 2024, 10:37 AM
Subscribers
None

Details

Summary

Instead, change memdesc_bio to examine the bio and return a memdesc of
a more generic type describing the data buffer.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jhb requested review of this revision.Jul 13 2023, 9:45 PM
jhb created this revision.
This revision is now accepted and ready to land.Jul 13 2023, 11:12 PM
sys/kern/subr_msan.c
550

This function is used externally, currently just by vtblk_bio_done(). In fact that might no longer be necessary now that virtio-blk uses busdma, but we should keep it anyway IMO; kmsan_mark*() is intended to be called externally.

572

Same here, used by GEOM.

sys/kern/subr_msan.c
550

I will leave the functions, though arguably they need updating for unmapped bios at some point.

sys/kern/subr_msan.c
550

That case is handled implicitly: unmapped BIOs have bio_data == unmapped_buf. In general kmsan_mark()/kmsan_check() are simply no-ops if the address passed in doesn't lie within the kernel map, so even bio_data == NULL would be fine.

This revision was automatically updated to reflect the committed changes.