lkml.org 
[lkml]   [2012]   [May]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRE: [PATCH] zsmalloc: use unsigned long instead of void *
    > From: Seth Jennings [mailto:sjenning@linux.vnet.ibm.com]
    > Subject: Re: [PATCH] zsmalloc: use unsigned long instead of void *
    >
    > 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.

    Someone once said: "Opaque is a computer science term and has no
    meaning in system software and computer engineering." ;-)


    \
     
     \ /
      Last update: 2012-05-21 17:41    [W:0.037 / U:60.372 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site