Messages in this thread Patch in this message | | | From | Alberto Bertogli <> | Subject | [PATCH] Do not __always_inline bvec_kmap_irq() and bvec_kunmap_irq() | Date | Wed, 4 Feb 2009 16:45:02 -0200 |
| |
On Tue, Feb 03 2009, Andrew Morton wrote: > The comment is wrong - this was a sparc requirement, long since removed.
So remove both the comment and the inline requirement, going back to the inline hint.
Signed-off-by: Alberto Bertogli <albertito@blitiri.com.ar> ---
So I came up with this, but I'm not sure if it's better than just avoid the inline and placing them somewhere else. If you want me to write a different patch, let me know.
Thanks a lot, Alberto
include/linux/bio.h | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/include/linux/bio.h b/include/linux/bio.h index 713ec6e..20bcc51 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h @@ -442,10 +442,8 @@ extern struct biovec_slab bvec_slabs[BIOVEC_NR_POOLS] __read_mostly; /* * remember never ever reenable interrupts between a bvec_kmap_irq and * bvec_kunmap_irq! - * - * This function MUST be inlined - it plays with the CPU interrupt flags. */ -static __always_inline char *bvec_kmap_irq(struct bio_vec *bvec, +static inline char *bvec_kmap_irq(struct bio_vec *bvec, unsigned long *flags) { unsigned long addr; @@ -462,7 +460,7 @@ static __always_inline char *bvec_kmap_irq(struct bio_vec *bvec, return (char *) addr + bvec->bv_offset; } -static __always_inline void bvec_kunmap_irq(char *buffer, +static inline void bvec_kunmap_irq(char *buffer, unsigned long *flags) { unsigned long ptr = (unsigned long) buffer & PAGE_MASK; -- 1.6.1.1.363.g2a3bd
| |