Re: [PATCH] zsmalloc: use unsigned long instead of void *

From: Seth Jennings
Date: Tue May 22 2012 - 14:46:04 EST


On 05/22/2012 01:31 PM, Konrad Rzeszutek Wilk wrote:

> On Tue, May 22, 2012 at 08:42:10AM -0500, Seth Jennings wrote:
>> 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.
>
> That sounds like an Acked-by ?


Almost. I still need to know what the base is so I can apply the
patchset and at least build it before I add my Ack.

Thanks,
Seth

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/