• Linus Walleij's avatar
    mmc: card: do away with indirection pointer · 29eb7bd0
    Linus Walleij authored
    We have enough vtables in the kernel as it is, we don't need
    this one to create even more artificial separation of concerns.
    
    As is proved by the Makefile:
    
    obj-$(CONFIG_MMC_BLOCK)         += mmc_block.o
    mmc_block-objs                  := block.o queue.o
    
    block.c and queue.c are baked into the same mmc_block.o object.
    So why would one of these objects access a function in the
    other object by dereferencing a pointer?
    
    Create a new block.h header file for the single shared function
    from block to queue and remove the function pointer and just
    call the queue request function.
    
    Apart from making the code more readable, this also makes link
    optimizations possible and probably speeds up the call as well.
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    29eb7bd0
queue.h 1.99 KB