Thread (1 message) 1 message, 1 author, 2012-09-05

Why exported const value modified by another driver not updated in original driver

From: Manavendra Nath Manav <hidden>
Date: 2012-09-05 08:27:33
Also in: lkml

On Tue, Sep 4, 2012 at 5:55 PM, Dan Carpenter [off-list ref] wrote:
On Tue, Sep 04, 2012 at 03:58:20PM +0530, Manavendra Nath Manav wrote:
quoted
Is the above a genuine kernel bug, or i am missing something out here. Pls help.
When you declare something as const then the compiler assumes it
really is const and uses a literal instead of reading from memory.
I'm surprised the compiler doesn't print a warning message.

It has to do with compilers, nothing to do with kernels.

regards,
dan carpenter
Thanks All,
I understood the problem and current gcc behaviour after looking at
output of objdump of driver.ko file when the variable is declared as
"const" and in second case as "const volatile". The compiler optimises
by directly passing the value in first case and the address of
variable in second case. Thanks for all the help and clarification.

push   $0x7b         // 123 in decimal
push   $0x0

-- 
Manavendra Nath Manav
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help