linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: linux-ide@vger.kernel.org, Michael Schmitz <schmitz@debian.org>,
	linux-m68k@vger.kernel.org
Subject: Re: [PATCH 2/4] ide: remove IDE_ARCH_LOCK
Date: Thu, 5 Feb 2009 21:14:44 +0100	[thread overview]
Message-ID: <200902052114.44792.bzolnier@gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0902042226440.25136@anakin>

On Wednesday 04 February 2009, Geert Uytterhoeven wrote:
> On Tue, 27 Jan 2009, Bartlomiej Zolnierkiewicz wrote:
> > From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
> > Subject: [PATCH] ide: remove IDE_ARCH_LOCK
> > 
> > * Add ->{get,release}_lock methods to struct ide_port_info
> >   and struct ide_host.
> > 
> > * Convert core IDE code, m68k IDE code and falconide support to use
> >   ->{get,release}_lock methods instead of ide_{get,release}_lock().
> > 
> > * Remove IDE_ARCH_LOCK.
> > 
> > Cc: Geert Uytterhoeven <geert@linux-m68k.org>
> > Cc: Michael Schmitz <schmitz@debian.org>
> > Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
> > ---
> > We may also consider adding struct ide_host_ops later...
> > 
> >  drivers/ide/falconide.c |   25 +++++++++++++++++++++++--
> >  drivers/ide/ide-io.c    |    8 ++++----
> >  drivers/ide/ide-probe.c |    2 ++
> >  include/asm-m68k/ide.h  |   36 ------------------------------------
> >  include/linux/ide.h     |   16 ++++++++++------
> >  5 files changed, 39 insertions(+), 48 deletions(-)
> > 
> > Index: b/drivers/ide/falconide.c
> > ===================================================================
> > --- a/drivers/ide/falconide.c
> > +++ b/drivers/ide/falconide.c
> > @@ -40,8 +40,27 @@
> >       *  which is shared between several drivers.
> >       */
> >  
> > -int falconide_intr_lock;
> > -EXPORT_SYMBOL(falconide_intr_lock);
> > +static int falconide_intr_lock;
> > +
> > +static void falconide_release_lock(void)
> > +{
> > +	if (falconide_intr_lock == 0) {
> > +		printk(KERN_ERR "%s: bug\n", __func__);
> > +		return;
> > +	}
> > +	falconide_intr_lock = 0;
> > +	stdma_release();
> > +}
> > +
> > +static void falconide_get_lock(irq_handler_t handler, void *data)
> > +{
> > +	if (falconide_intr_lock == 0) {
> > +		if (in_interrupt() > 0)
> > +			panic("Falcon IDE hasn't ST-DMA lock in interrupt");
> > +		stdma_lock(handler, data);
> > +		falconide_intr_lock = 1;
> > +	}
> > +}
> >  
> >  static void falconide_input_data(ide_drive_t *drive, struct request *rq,
> >  				 void *buf, unsigned int len)
> > @@ -81,6 +100,8 @@ static const struct ide_tp_ops falconide
> >  };
> >  
> >  static const struct ide_port_info falconide_port_info = {
> > +	.get_lock		= falconide_get_lock,
> > +	.release_lock		= falconide_release_lock,
> >  	.tp_ops			= &falconide_tp_ops,
> >  	.host_flags		= IDE_HFLAG_NO_DMA | IDE_HFLAG_SERIALIZE,
> >  };
> 
> http://kisskb.ellerman.id.au/kisskb/buildresult/71775/
> 
> drivers/ide/falconide.c:157: error: implicit declaration of function 'ide_get_lock'
> drivers/ide/falconide.c:159: error: implicit declaration of function 'ide_release_lock'
> 
> Seems like you forgot to update two callers?
> 
> diff --git a/drivers/ide/falconide.c b/drivers/ide/falconide.c
> index 1203796..bb0c86e 100644
> --- a/drivers/ide/falconide.c
> +++ b/drivers/ide/falconide.c
> @@ -154,9 +154,9 @@ static int __init falconide_init(void)
>  		goto err;
>  	}
>  
> -	ide_get_lock(NULL, NULL);
> +	falconide_get_lock(NULL, NULL);
>  	rc = ide_host_register(host, &falconide_port_info, hws);
> -	ide_release_lock();
> +	falconide_release_lock();

Thanks, I integrated above fix into the original patch.

...
v2:
* Build fix from Geert updating ide_{get,release}_lock() callers in
  falconide.c.
...

Bart

  reply	other threads:[~2009-02-05 20:14 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-27 18:02 [PATCH 0/4] m68k related IDE cleanups Bartlomiej Zolnierkiewicz
2009-01-27 18:02 ` [PATCH 1/4] ide: remove IDE_ARCH_INTR Bartlomiej Zolnierkiewicz
2009-01-27 19:42   ` David D. Kilzer
2009-01-29  4:22     ` Michael Schmitz
2009-02-01 15:53       ` Bartlomiej Zolnierkiewicz
2009-01-27 18:02 ` [PATCH 2/4] ide: remove IDE_ARCH_LOCK Bartlomiej Zolnierkiewicz
2009-02-04 21:27   ` Geert Uytterhoeven
2009-02-05 20:14     ` Bartlomiej Zolnierkiewicz [this message]
2009-01-27 18:03 ` [PATCH 3/4] ide: make m68k host drivers use IDE_HFLAG_MMIO Bartlomiej Zolnierkiewicz
2009-01-27 18:03 ` [PATCH 4/4] m68k: cleanup <asm/ide.h> Bartlomiej Zolnierkiewicz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200902052114.44792.bzolnier@gmail.com \
    --to=bzolnier@gmail.com \
    --cc=geert@linux-m68k.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=schmitz@debian.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).