Manish,

It all looks pretty clear to me. In the first case  the 'get_block_t'
structure is passed as an argument to the function. In the other case the
pointer to the structure (get_block_t*) is passed as a function argument. I
hope you know the difference between the 2. If not the following link would
help.

http://www2.its.strath.ac.uk/courses/c/subsection3_12_3.html#SECTION00012300000000000000

-
Rahul Pydimukkala



On Sun, Aug 3, 2008 at 1:53 PM, Daniel Baluta <[EMAIL PROTECTED]>wrote:

> See the definition of get_block_t
>
> typedef int (get_block_t)(struct inode *inode, sector_t iblock,
>                         struct buffer_head *bh_result, int create);
>
>
>
> On 8/3/08, Manish Katiyar <[EMAIL PROTECTED]> wrote:
> > ok... I know i am going to be embarrassed but I am confused by the
> > below function. The last parameter in do_mpage_readpage() is of type
> > get_block_t, but when passed to block_read_full_page() it gets passed
> > as get_block_t *.
> >
> >
> > static struct bio * do_mpage_readpage(............., get_block_t
> get_block)
> > {
> >        ................
> >        ................
> >               if (page_has_buffers(page))
> >               goto confused;
> >         .................
> > confused:
> >               if (!PageUptodate(page))
> >               block_read_full_page(page, get_block);
> >        .........
> > }
> >
> > int block_read_full_page(struct page *page, get_block_t *get_block) {
> >         .........
> >        ..........
> > }
> >
> >
> > How does this work ? :-( ....... Isn't gcc supposed to catch this and
> > flag warning unless I am missing something very obvious.
> >
> > Thanks -
> > Manish
> >
> > --
> > To unsubscribe from this list: send an email with
> > "unsubscribe kernelnewbies" to [EMAIL PROTECTED]
> > Please read the FAQ at http://kernelnewbies.org/FAQ
> >
> >
>
> --
> To unsubscribe from this list: send an email with
> "unsubscribe kernelnewbies" to [EMAIL PROTECTED]
> Please read the FAQ at http://kernelnewbies.org/FAQ
>
>


-- 
Smart data structures and dumb code works a lot better than the other way
around. -Eric S Raymond

Reply via email to