Hi Kumar Amit,
These function are define in
The ## (double number sign) operator concatenates two tokens in a macro invocation (text and/or arguments) given in a macro definition
/*
* Emit the buffer bitops functions. Note that there are also functions
* of the form "mark_buffer_foo()". These are higher-level functions which
* do something in addition to setting a b_state bit.
*/
BUFFER_FNS(Uptodate, uptodate)
BUFFER_FNS(Dirty, dirty)
TAS_BUFFER_FNS(Dirty, dirty)
BUFFER_FNS(Lock, locked)
BUFFER_FNS(Req, req)
TAS_BUFFER_FNS(Req, req)
BUFFER_FNS(Mapped, mapped)
BUFFER_FNS(New, new)
BUFFER_FNS(Async_Read, async_read)
BUFFER_FNS(Async_Write, async_write)
BUFFER_FNS(Delay, delay)
BUFFER_FNS(Boundary, boundary)
BUFFER_FNS(Write_EIO, write_io_error)
BUFFER_FNS(Unwritten, unwritten)
BUFFER_FNS(Meta, meta)
BUFFER_FNS(Prio, prio)
* Emit the buffer bitops functions. Note that there are also functions
* of the form "mark_buffer_foo()". These are higher-level functions which
* do something in addition to setting a b_state bit.
*/
BUFFER_FNS(Uptodate, uptodate)
BUFFER_FNS(Dirty, dirty)
TAS_BUFFER_FNS(Dirty, dirty)
BUFFER_FNS(Lock, locked)
BUFFER_FNS(Req, req)
TAS_BUFFER_FNS(Req, req)
BUFFER_FNS(Mapped, mapped)
BUFFER_FNS(New, new)
BUFFER_FNS(Async_Read, async_read)
BUFFER_FNS(Async_Write, async_write)
BUFFER_FNS(Delay, delay)
BUFFER_FNS(Boundary, boundary)
BUFFER_FNS(Write_EIO, write_io_error)
BUFFER_FNS(Unwritten, unwritten)
BUFFER_FNS(Meta, meta)
BUFFER_FNS(Prio, prio)
These function get expanded before we compile the kernel.
-Anand Moon
From: Kumar amit mehta <gmate.amit@xxxxxxxxx>
To: kernelnewbies@xxxxxxxxxxxxxxxxx
Sent: Tuesday, July 9, 2013 7:51 AM
Subject: Where are these buffer_xxx macros/fucntion defined?
To: kernelnewbies@xxxxxxxxxxxxxxxxx
Sent: Tuesday, July 9, 2013 7:51 AM
Subject: Where are these buffer_xxx macros/fucntion defined?
Hi,
I see that a lot of FS code is using buffer_invalidate(), buffer_req()
etc, but I could not find the definition of these anywhere in the tree.
What am i missing? For example, see ext3 code using buffer_invalidate()
here[1].
For building cscope and tags database, I invoke the following command
from the top of the tree:
$ make cscope tags
[1] http://lxr.linux.no/#linux+v3.10/fs/ext3/namei.c#L926
Thanks,
Amit
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies