public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Do not __always_inline bvec_kmap_irq() and bvec_kunmap_irq()
@ 2009-10-31 21:21 Alberto Bertogli
  2009-11-02 10:38 ` Jens Axboe
  0 siblings, 1 reply; 4+ messages in thread
From: Alberto Bertogli @ 2009-10-31 21:21 UTC (permalink / raw)
  To: linux-kernel; +Cc: jens.axboe, linux-fsdevel, akpm, Alberto Bertogli

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>
---
 include/linux/bio.h |    8 ++------
 1 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/include/linux/bio.h b/include/linux/bio.h
index 5be93f1..474792b 100644
--- a/include/linux/bio.h
+++ b/include/linux/bio.h
@@ -450,11 +450,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,
-		unsigned long *flags)
+static inline char *bvec_kmap_irq(struct bio_vec *bvec, unsigned long *flags)
 {
 	unsigned long addr;
 
@@ -470,8 +467,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,
-		unsigned long *flags)
+static inline void bvec_kunmap_irq(char *buffer, unsigned long *flags)
 {
 	unsigned long ptr = (unsigned long) buffer & PAGE_MASK;
 
-- 
1.6.5.2.250.g2bd30


^ permalink raw reply related	[flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] bio.h: If they MUST be inlined, then use __always_inline
@ 2009-02-03  8:51 Jens Axboe
  2009-02-04 18:45 ` [PATCH] Do not __always_inline bvec_kmap_irq() and bvec_kunmap_irq() Alberto Bertogli
  0 siblings, 1 reply; 4+ messages in thread
From: Jens Axboe @ 2009-02-03  8:51 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Alberto Bertogli, linux-kernel

On Tue, Feb 03 2009, Andrew Morton wrote:
> On Sun,  1 Feb 2009 22:07:31 -0200 Alberto Bertogli <albertito@blitiri.com.ar> wrote:
> 
> > bvec_kmap_irq() and bvec_kunmap_irq() comments say they MUST be inlined,
> > so mark them as __always_inline.
> > 
> > Signed-off-by: Alberto Bertogli <albertito@blitiri.com.ar>
> > ---
> >  include/linux/bio.h |    6 ++++--
> >  1 files changed, 4 insertions(+), 2 deletions(-)
> > 
> > diff --git a/include/linux/bio.h b/include/linux/bio.h
> > index 0c8e3fb..713ec6e 100644
> > --- a/include/linux/bio.h
> > +++ b/include/linux/bio.h
> > @@ -445,7 +445,8 @@ extern struct biovec_slab bvec_slabs[BIOVEC_NR_POOLS] __read_mostly;
> >   *
> >   * This function MUST be inlined - it plays with the CPU interrupt flags.
> >   */
> > -static inline char *bvec_kmap_irq(struct bio_vec *bvec, unsigned long *flags)
> > +static __always_inline char *bvec_kmap_irq(struct bio_vec *bvec,
> > +		unsigned long *flags)
> 
> The comment is wrong - this was a sparc requirement, long since removed.

The comment probably dates back to around 2001 or so, I wasn't aware
that the non-local irq flags requirement had since been voided on sparc.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-11-02 10:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-31 21:21 [PATCH] Do not __always_inline bvec_kmap_irq() and bvec_kunmap_irq() Alberto Bertogli
2009-11-02 10:38 ` Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2009-02-03  8:51 [PATCH 2/2] bio.h: If they MUST be inlined, then use __always_inline Jens Axboe
2009-02-04 18:45 ` [PATCH] Do not __always_inline bvec_kmap_irq() and bvec_kunmap_irq() Alberto Bertogli
2009-02-04 18:49   ` Alberto Bertogli

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox