Re: [PATCH] Declare the file_operations struct as const

From: Bryan Brattlof
Date: Wed Sep 01 2021 - 16:29:12 EST


On this day, September 1, 2021, thus sayeth Krish Jain:
>
> Yes, lots of reading to do :) . I had a look at the book and it seems
> better than the documentation too, I don't know, maybe the writing
> style? Love it, Greg. Lastly just out of curiosity, Bryan, if this
> can only be built as a built-in object then how come "As for your
> patch, I built the driver using:
>
> $ make CCFLAGS=-Werror W=1 M=drivers/staging/android"
>
> got you the errors that I desired? Aren't you building as a module here?
>

That's a good question Krish!

The command I sent you does not build built-in modules or create the
output I sent you!

As Greg said, ASHMEM cannot be built as a loadable module!

It is odd, when retracing my steps just now, I must have known at some
point that ASHMEM was a built-in module as menuconfig will not let you
select the <M> or loadable module option. The only thing I can think I
did was build the module without using the M= option, copied the error
message, then retyped the wrong 'make' command I had used to produce it.

What is *very* embarrassing is I had multiple opportunities to catch my
mistake. Somewhere between building your patch and writing the email I
truly lost the critical piece "this is a built-in module".

Even the CCFLAGS command Greg talked about is not a great command to be
using! I should not have sent you CCFLAGS or the less worse KCFLAGS that
I should not be using. Both really have no need here in drivers/staging/
and only add to the confusion.

I will say, for your next patch that I am eagerly waiting for, the W=1
option is a good way to catch subtle errors that Greg may ask you to fix
and resend. I got one thing right :/

I don't know, I truly lost my marbles on this one.

I apologize again for my goof, it must have been very frustrating.
~Bryan