On 03/16/2015 01:35 AM, Ingo Molnar wrote:
> 
> :-/
> 
> Not sure what hpa's problem with 'void *' was: especially in MM code 
> we are using 'void *' rather widely.
> 
> All compilers that aim for being able to build the Linux kernel 
> implement 'void *' as well, so that 'standard C' argument is pretty 
> weak IMHO - unlike some of the more esoteric GCC extensions, this one 
> is actually pretty well done and widely used in and outside of the 
> kernel.
> 
>> It seems like both have arguments for them.  Char pointer arithmetic 
>> has the advantage that its behavior is standard in C, so it's not 
>> specific to gcc.  I agree that void* has the advantage that it fits 
>> more naturally with the types of the parameters passed in, requiring 
>> no casting.
> 
> It's also a bonus property of 'void *' that unlike 'char *' it cannot 
> be dereferenced. So we use it for opaque buffers wherever we can.
> 

The issue isn't void *, it is doing arithmetic on void *.

        -hpa

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

Reply via email to