* H. Peter Anvin <h.peter.an...@intel.com> wrote:

> 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 *.

Mind explaining it to me a bit more verbosely, because I don't think I 
get your point? In my experience arithmetics on void * works just fine 
in the cases I tried.

Thanks,

        Ingo
--
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