KernelTestFramework / ktf

Kernel Test Framework
BSD 2-Clause "Simplified" License
139 stars 20 forks source link

Implement better vunmap() functionality; Enable NULL address (0 MFN) handling #312

Closed wipawel closed 1 year ago

wipawel commented 1 year ago

The semantical change regarding vmap*(), get_free_page*() is unfortunate, as now all callers need to take care of (and be audited to actually do so!) to test for MAP_FAILED before trying to access the returned pointer. :/

The NULL pointer test was much more intuitive.... Can't we special case where we want to really map address zero? Like, by passing yet another flag MAP_NULL.

Or, to make users more aware, change the return value to int to represent an error code only and return va as an output parameter?

Ok, I went with a shortcut and a middle ground. Since the mapping of NULL va is not used as of now and should be very rare, hopefully it would suffice.