Re: [PATCH] staging: rtl*: Remove tasklet callback casts

From: Dan Carpenter
Date: Fri Nov 15 2019 - 02:44:06 EST


On Fri, Nov 15, 2019 at 10:40:03AM +0300, Dan Carpenter wrote:
> On Thu, Nov 14, 2019 at 09:39:00PM -0800, Kees Cook wrote:
> > In order to make the entire kernel usable under Clang's Control Flow
> > Integrity protections, function prototype casts need to be avoided
> > because this will trip CFI checks at runtime (i.e. a mismatch between
> > the caller's expected function prototype and the destination function's
> > prototype). Many of these cases can be found with -Wcast-function-type,
> > which found that the rtl wifi drivers had a bunch of needless function
> > casts. Remove function casts for tasklet callbacks in the various drivers.
> >
> > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
>
> Clang should treat void pointers as a special case. If void pointers
> are bad, surely replacing them with unsigned long is even more ambigous
> and worse.

Wow... Never mind. I completely misread this patch. I am ashamed.

The patch is fine.

Reviewed-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

regards,
dan carpenter