All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boaz Harrosh <bharrosh@panasas.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: James.Bottomley@suse.de, nab@linux-iscsi.org, linux-scsi@vger.kernel.org
Subject: Re: Full hostlock pushdown available
Date: Sun, 31 Oct 2010 14:22:23 +0200	[thread overview]
Message-ID: <4CCD5F7F.8020808@panasas.com> (raw)
In-Reply-To: <20101028150508.GA2385@basil.fritz.box>

On 10/28/2010 05:05 PM, Andi Kleen wrote:
> 
> Here's the promised attempt to do a full host_lock pushdown. This
> was done using coccinelle and some manual adjustments.
> 

Hi Andi.
Could you please post the final coccinelle script you used.
I've never used coccinelle, it sounds like an interesting tool.
RTFM as we speak.

Thanks
Boaz

> This is just a dumb pushdown of host lock and serial number into
> the driver, no attempt to remove any locks yet.
> 
> Currently lightly tested, but compiles with allmodconfig on 32bit x86.
> 
> I made no attempt to automatically add maintainers to Cc.
> 
> I'm not posting the patches because they are numerous and boring,
> but it's available in git.
> 
> This will likely bitrot quickly so if it's decided to do it this
> way I would prefer if this was merged quickly.
> 
> Issues found:
> - I found a clear deadlock in aha1740, not sure if that driver ever
> worked since host_lock was introduced. Anyways I attempted to work
> around it. But if it's really that unused it may be better to 
> simply drop it.
> - I'm not sure how to compile cciss_scsi, is it even used?
> 
> -Andi
> 
> The following changes since commit 39764981e772adc832d8a96e6540be346a830ca2:
> 
>   Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 (2010-10-27 20:54:34 +0200)
> 
> are available in the git repository at:
> 
>   ssh://master.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc-2.6.git hostlock
> 
> Andi Kleen (87):
>       SCSI: Remove hostlock for queuecommand
>       SCSI: ibmmca: hostlock pushdown
>       SCSI: ipr: hostlock pushdown
>       SCSI: ultrastor: hostlock pushdown
>       SCSI: aha1740: hostlock pushdown
>       SCSI: ia64 simscsi: hostlock pushdown
>       SCSI: sun3_NCR5380: pushdown of hostlock
>       SCSI: staging/hv/storvsc_drv: pushdown of hostlock
>       SCSI: s390/zfcp_scsi: hostlock pushdown
>       SCSI: libiscsi: hostlock pushdown
>       SCSI: libiscsi: remove hostlock drop
>       SCSI: NCR5380: hostlock pushdown
>       SCSI: libsas: hostlock pushdown
>       SCSI: stex: hostlock pushdown
>       SCSI: wd33c93: hostlock pushdown
>       SCSI: aha152x: hostlock pushdown
>       SCSI: microtek: hostlock pushdown
>       SCSI: scsiglue: hostlock pushdown
>       SCSI: uas: hostlock pushdown
>       SCSI: i2o_scsi: hostlock pushdown
>       SCSI: mptspi: hostlock pushdown
>       SCSI: mptsas: hostlock pushdown
>       SCSI: mptfc: hostlock pushdown
>       SCSI: sbp2: hostlock pushdown
>       SCSI: ib_srp: hostlock pushdown
>       SCSI: mesh: hostlock pushdown
>       SCSI: fd_mcs: hostlock pushdown
>       SCSI: fnic_main: hostlock pushdown
>       SCSI: gdth: hostlock pushdown
>       SCSI: ppa: hostlock pushdown
>       SCSI: qlogicpti: hostlock pushdown
>       SCSI: 3w-sas: hostlock pushdown
>       SCSI: 3w-9xxx: hostlock pushdown
>       SCSI: fcoe: hostlock pushdown
>       SCSI: ips: hostlock pushdown
>       SCSI: sym_glue: hostlock pushdown
>       SCSI: ql4_os: hostlock pushdown
>       SCSI: mpt2sas_scsih: hostlock pushdown
>       SCSI: fdomain: hostlock pushdown
>       SCSI: initio: hostlock pushdown
>       SCSI: in2000: hostlock pushdown
>       SCSI: nsp32: hostlock pushdown
>       SCSI: megaraid_sas: hostlock pushdown
>       SCSI: megaraid_mbox: hostlock pushdown
>       SCSI: BusLogic: hostlock pushdown
>       SCSI: dpt_i2o: hostlock pushdown
>       SCSI: 3w-xxxx: hostlock pushdown
>       SCSI: atp870u: hostlock pushdown
>       SCSI: qlogicfas: hostlock pushdown
>       SCSI: qla1280: hostlock pushdown
>       SCSI: dc395x: hostlock pushdown
>       SCSI: linit: hostlock pushdown
>       SCSI: ibmvfc: hostlock pushdown
>       SCSI: ibmvscsi: hostlock pushdown
>       SCSI: lpfc_scsi: hostlock pushdown
>       SCSI: ps3rom: hostlock pushdown
>       SCSI: pmcraid: hostlock pushdown
>       SCSI: eata: hostlock pushdown
>       SCSI: tmscsim: hostlock pushdown
>       SCSI: imm: hostlock pushdown
>       SCSI: wd7000: hostlock pushdown
>       SCSI: sym53c416: hostlock pushdown
>       SCSI: aic7xxx_old: hostlock pushdown
>       SCSI: megaraid: hostlock pushdown
>       SCSI: aha1542: hostlock pushdown
>       SCSI: eata_pio: hostlock pushdown
>       SCSI: esp_scsi: hostlock pushdown
>       SCSI: a100u2w: hostlock pushdown
>       SCSI: hpsa: hostlock pushdown
>       SCSI: NCR53c406a: hostlock pushdown
>       SCSI: mac53c94: hostlock pushdown
>       SCSI: vmw_pvscsi: hostlock pushdown
>       SCSI: 53c700: hostlock pushdown
>       SCSI: u14-34f: hostlock pushdown
>       SCSI: ncr53c8xx: hostlock pushdown
>       SCSI: advansys: hostlock pushdown
>       SCSI: hptiop: hostlock pushdown
>       SCSI: arcmsr_hba: hostlock pushdown
>       SCSI: aic79xx_osm: hostlock pushdown
>       SCSI: aic7xxx_osm: hostlock pushdown
>       SCSI: arm: hostlock pushdown
>       SCSI: qla_os: hostlock pushdown
>       SCSI: nsp_cs: hostlock pushdown
>       SCSI: sym53c500_cs: hostlock pushdown
>       SCSI: bfad_im: hostlock pushdown
>       SCSI: cciss_scsi: hostlock pushdown
>       SCSI: aha1740: Avoid instant deadlock
> 
>  arch/ia64/hp/sim/simscsi.c            |    7 +++++++
>  drivers/block/cciss_scsi.c            |    6 ++++++
>  drivers/firewire/sbp2.c               |    5 +++++
>  drivers/infiniband/ulp/srp/ib_srp.c   |    6 ++++++
>  drivers/message/fusion/mptfc.c        |    6 ++++++
>  drivers/message/fusion/mptsas.c       |    8 +++++++-
>  drivers/message/fusion/mptspi.c       |    5 +++++
>  drivers/message/i2o/i2o_scsi.c        |    5 +++++
>  drivers/s390/scsi/zfcp_scsi.c         |    8 ++++++++
>  drivers/scsi/3w-9xxx.c                |    4 ++++
>  drivers/scsi/3w-sas.c                 |    4 ++++
>  drivers/scsi/3w-xxxx.c                |    4 ++++
>  drivers/scsi/53c700.c                 |    6 ++++++
>  drivers/scsi/BusLogic.c               |    5 +++++
>  drivers/scsi/NCR5380.c                |    6 ++++++
>  drivers/scsi/NCR53c406a.c             |    4 ++++
>  drivers/scsi/a100u2w.c                |    9 ++++++++-
>  drivers/scsi/aacraid/linit.c          |   10 ++++++++--
>  drivers/scsi/advansys.c               |    4 ++++
>  drivers/scsi/aha152x.c                |   10 +++++++++-
>  drivers/scsi/aha1542.c                |   12 ++++++++++--
>  drivers/scsi/aha1740.c                |   11 +++++++++++
>  drivers/scsi/aic7xxx/aic79xx_osm.c    |    4 ++++
>  drivers/scsi/aic7xxx/aic7xxx_osm.c    |    4 ++++
>  drivers/scsi/aic7xxx_old.c            |    5 +++++
>  drivers/scsi/arcmsr/arcmsr_hba.c      |   18 +++++++++++++++---
>  drivers/scsi/arm/acornscsi.c          |    6 ++++++
>  drivers/scsi/arm/fas216.c             |    8 ++++++++
>  drivers/scsi/atp870u.c                |    8 ++++++++
>  drivers/scsi/bfa/bfad_im.c            |   11 ++++++++++-
>  drivers/scsi/dc395x.c                 |    6 ++++++
>  drivers/scsi/dpt_i2o.c                |    9 +++++++++
>  drivers/scsi/eata.c                   |    7 +++++++
>  drivers/scsi/eata_pio.c               |    5 +++++
>  drivers/scsi/esp_scsi.c               |    8 +++++++-
>  drivers/scsi/fd_mcs.c                 |    4 ++++
>  drivers/scsi/fdomain.c                |    4 ++++
>  drivers/scsi/fnic/fnic_scsi.c         |    9 ++++++++-
>  drivers/scsi/gdth.c                   |    4 ++++
>  drivers/scsi/hpsa.c                   |    7 +++++++
>  drivers/scsi/hptiop.c                 |    6 ++++++
>  drivers/scsi/ibmmca.c                 |   12 ++++++++++++
>  drivers/scsi/ibmvscsi/ibmvfc.c        |   12 ++++++++++--
>  drivers/scsi/ibmvscsi/ibmvscsi.c      |    9 ++++++++-
>  drivers/scsi/imm.c                    |    4 ++++
>  drivers/scsi/in2000.c                 |    4 ++++
>  drivers/scsi/initio.c                 |    8 +++++++-
>  drivers/scsi/ipr.c                    |   17 ++++++++++++++---
>  drivers/scsi/ips.c                    |   18 ++++++++++++++++--
>  drivers/scsi/libfc/fc_fcp.c           |    5 +++++
>  drivers/scsi/libiscsi.c               |   10 ++++++----
>  drivers/scsi/libsas/sas_scsi_host.c   |    7 +++++--
>  drivers/scsi/lpfc/lpfc_scsi.c         |    6 ++++++
>  drivers/scsi/mac53c94.c               |    4 ++++
>  drivers/scsi/megaraid.c               |    4 ++++
>  drivers/scsi/megaraid/megaraid_mbox.c |    5 +++++
>  drivers/scsi/megaraid/megaraid_sas.c  |   14 ++++++++++++--
>  drivers/scsi/mesh.c                   |    4 ++++
>  drivers/scsi/mpt2sas/mpt2sas_scsih.c  |   17 +++++++++++++++--
>  drivers/scsi/ncr53c8xx.c              |    4 ++++
>  drivers/scsi/nsp32.c                  |    8 ++++++++
>  drivers/scsi/pcmcia/nsp_cs.c          |    6 ++++++
>  drivers/scsi/pcmcia/sym53c500_cs.c    |    4 ++++
>  drivers/scsi/pmcraid.c                |   11 ++++++++++-
>  drivers/scsi/ppa.c                    |    4 ++++
>  drivers/scsi/ps3rom.c                 |    4 ++++
>  drivers/scsi/qla1280.c                |    4 ++++
>  drivers/scsi/qla2xxx/qla_os.c         |    7 +++++++
>  drivers/scsi/qla4xxx/ql4_os.c         |    7 +++++++
>  drivers/scsi/qlogicfas408.c           |    4 ++++
>  drivers/scsi/qlogicpti.c              |    5 +++++
>  drivers/scsi/scsi.c                   |   15 +++------------
>  drivers/scsi/stex.c                   |   20 ++++++++++++++++++--
>  drivers/scsi/sun3_NCR5380.c           |    8 ++++++++
>  drivers/scsi/sym53c416.c              |    4 ++++
>  drivers/scsi/sym53c8xx_2/sym_glue.c   |   12 ++++++++++--
>  drivers/scsi/tmscsim.c                |    5 +++++
>  drivers/scsi/u14-34f.c                |    7 +++++++
>  drivers/scsi/ultrastor.c              |    7 +++++++
>  drivers/scsi/vmw_pvscsi.c             |    5 +++++
>  drivers/scsi/wd33c93.c                |    6 +++++-
>  drivers/scsi/wd7000.c                 |    4 ++++
>  drivers/staging/hv/storvsc_drv.c      |    8 ++++++++
>  drivers/usb/image/microtek.c          |    4 ++++
>  drivers/usb/storage/scsiglue.c        |    6 ++++++
>  drivers/usb/storage/uas.c             |    9 ++++++++-
>  include/scsi/scsi_host.h              |    1 +
>  87 files changed, 576 insertions(+), 51 deletions(-)
> 


  parent reply	other threads:[~2010-10-31 12:22 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-28 15:05 Full hostlock pushdown available Andi Kleen
2010-10-28 19:28 ` James Bottomley
2010-10-28 19:32   ` Nicholas A. Bellinger
2010-11-01 14:06     ` Andi Kleen
2010-11-01 14:29       ` James Bottomley
2010-10-28 20:10   ` Andi Kleen
2010-10-28 20:22     ` James Bottomley
2010-10-28 21:50       ` Andi Kleen
2010-10-28 22:37         ` Nicholas A. Bellinger
2010-10-31 12:22 ` Boaz Harrosh [this message]
2010-10-31 18:48   ` Stefan Richter
2010-11-01  2:34     ` Jeff Garzik
2010-11-01 13:53       ` Andi Kleen
2010-11-01 15:56         ` Jeff Garzik
2010-11-01 17:57           ` Andi Kleen
2010-11-01 18:42             ` Jeff Garzik
2010-11-02 15:05               ` Andi Kleen
2010-11-01 18:59             ` Jeff Garzik
2010-11-01 21:06               ` Nicholas A. Bellinger
2010-11-02  9:21               ` Andi Kleen
2010-11-02 15:59                 ` Jeff Garzik
2010-11-02 17:53                   ` Andi Kleen
2010-11-02 18:13                     ` Jeff Garzik
2010-11-02 18:38                     ` Nicholas A. Bellinger
2010-11-02 18:50                       ` Jeff Garzik
2010-11-01 13:54     ` Andi Kleen

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=4CCD5F7F.8020808@panasas.com \
    --to=bharrosh@panasas.com \
    --cc=James.Bottomley@suse.de \
    --cc=andi@firstfloor.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=nab@linux-iscsi.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.