since the buffer (the 16 bit segmented to be used instead of the 32bit linear) has been allocated in the mapping function, I do think it's a bad idea to free it outside of the unmapping functionFreeing the header while unmapping the 16/32-bit message is an alien task for mapping functions IMO.
A+
--
Eric Pouech