On 05/21/2012 09:19 AM, Seth Jennings wrote: > On 05/20/2012 09:23 PM, Minchan Kim wrote: > >> We should use unsigned long as handle instead of void * to avoid any >> confusion. Without this, users may just treat zs_malloc return value as >> a pointer and try to deference it. > > > I wouldn't have agreed with you about the need for this change as people > should understand a void * to be the address of some data with unknown > structure. > > However, I recently discussed with Dan regarding his RAMster project > where he assumed that the void * would be an address, and as such, > 4-byte aligned. So he has masked two bits into the two LSBs of the > handle for RAMster, which doesn't work with zsmalloc since the handle is > not an address. > > So really we do need to convey as explicitly as possible to the user > that the handle is an _opaque_ value about which no assumption can be made. Wasn't really clear here. All that to say, I think we do need this patch. Thanks, Seth -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>