[PATCH V2 2/9] nvmet: add ZNS support for bdev-ns

Chaitanya Kulkarni Chaitanya.Kulkarni at wdc.com
Tue Dec 1 17:36:23 EST 2020


On 11/30/20 23:51, Johannes Thumshirn wrote:
>> Why add an extra function call overhead in the hot path for each I/O ?
> At least in my compilation (gcc 10.1) there's now extra function call overhead.
> __bio_iov_append_get_pages() get's fully inlined into bio_iov_iter_get_pages().
>
> $ make block/bio.s
>   CALL    scripts/checksyscalls.sh
>   CALL    scripts/atomic/check-atomics.sh
>   DESCEND  objtool
>   CC      block/bio.s
> $ grep __bio_iov_append_get_pages block/bio.s
> $ grep bio_iov_iter_get_pages block/bio.s
> __kstrtab_bio_iov_iter_get_pages:
>         .asciz  "bio_iov_iter_get_pages"
> __kstrtabns_bio_iov_iter_get_pages:
>         .section "___ksymtab_gpl+bio_iov_iter_get_pages", "a"
> __ksymtab_bio_iov_iter_get_pages:
>         .long   bio_iov_iter_get_pages- .
>         .long   __kstrtab_bio_iov_iter_get_pages- .
>         .long   __kstrtabns_bio_iov_iter_get_pages- .
>         .globl  bio_iov_iter_get_pages
>         .type   bio_iov_iter_get_pages, @function
> bio_iov_iter_get_pages:
>         .type   bio_iov_iter_get_pages.cold, @function
> bio_iov_iter_get_pages.cold:
>         .size   bio_iov_iter_get_pages, .-bio_iov_iter_get_pages
>         .size   bio_iov_iter_get_pages.cold, .-bio_iov_iter_get_pages.cold
>         .type   __UNIQUE_ID___addressable_bio_iov_iter_get_pages499, @object
>         .size   __UNIQUE_ID___addressable_bio_iov_iter_get_pages499, 8
> __UNIQUE_ID___addressable_bio_iov_iter_get_pages499:
>         .quad   bio_iov_iter_get_pages
>
>
So it does on mine too, but it doesn't guarantee all the platforms.




More information about the Linux-nvme mailing list