Page MenuHomeFreeBSD

memdesc: Retire MEMDESC_BIO.
ClosedPublic

Authored by jhb on Jul 13 2023, 9:45 PM.
Tags
None
Referenced Files
F87345292: D41029.diff
Mon, Jul 1, 10:32 PM
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
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 Skipped
Unit
Tests Skipped
Build Status
Buildable 52631
Build 49522: arc lint + arc unit

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.