lkml.org 
[lkml]   [2017]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers
From
Date
On 20.09.2017 10:41, David Laight wrote:
> From: Helge Deller
>> Sent: 19 September 2017 21:08
> ...
>>> Using 'unsigned long' for any kind of pointer is an accident
>>> waiting do happen.
>>> It also makes it difficult to typecheck the function calls.
>>> Using 'void *' isn't any better.
>>> Either a pointer to an undefined struct, or a struct containing
>>> a single 'char' member, is likely to be safest.
>>
>> David, you might be right in most cases, but in this case I'd prefer
>> unsigned long too. I think this will create the least amount of
>> typecasts here.
>
> I've not looked at the specifics case...
>
> Another option is using a struct with a single member and
> passing it by value.

Actually, we do already have correct structs which could be referenced:
parisc: struct Elf64_Fdesc
ia64: struct fdesc
ppc64: struct ppc64_opd_entry

One could "#define platform_opd_entry" to each of those depending on the platform and use it.
It might be misleading though, because the pointer which is handed over to
dereference_function_descriptor() can be such a pointer but isn't necessary.
I'll leave it up to Sergey to decide.

Helge

\
 
 \ /
  Last update: 2017-09-20 12:22    [W:0.063 / U:0.388 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site