1. 25 Jan, 2008 6 commits
    • James Bottomley's avatar
      [SCSI] libsas: abstract STP task status into a function · 366ca51f
      James Bottomley authored
      Break out the frame processor for STP tasks from aic94xx so they can
      be shared by other SAS HBA's
      
      Original patch from Jeff Garzik <jeff@garzik.org>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      366ca51f
    • Frederik Deweerdt's avatar
      [SCSI] ultrastor: clean up inline asm warnings · 1292500b
      Frederik Deweerdt authored
      To: linux-kernel@vger.kernel.org
      Cc: bunk@kernel.org
      Subject: [trivial patch] scsi/ultrastor: clean up inline asm warnings
      
      Hi,
      
      Compiling latest mainline with gcc 4.2.1 spews the following warnings:
      
      drivers/scsi/ultrastor.c: In function 'find_and_clear_bit_16':
      drivers/scsi/ultrastor.c:303: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:302: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c: At top level:
      drivers/scsi/ultrastor.c:1202: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:1202: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c: In function 'ultrastor_queuecommand':
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:698: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:302: warning: matching constraint does not allow a register
      drivers/scsi/ultrastor.c:302: warning: matching constraint does not allow a register
      
      The following patch fixes it by using the '+' operator on the (*field)
      operand, marking it as read-write to gcc. I diffed the two resulting .s,
      and gcc produced the same code. This was tested with gcc 4.2.1 and gcc 3.4.3
      Signed-off-by: default avatarFrederik Deweerdt <frederik.deweerdt@gmail.com>
      Cc: Adrian Bunk <trivial@kernel.org>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      1292500b
    • Vegard Nossum's avatar
      [SCSI] aic7xxx: fix firmware build · 93a38fa2
      Vegard Nossum authored
      This patch adds the proper $(obj) and $(src) prefixes to dependency
      rules in aic7xxx makefile. Without this patch, there is a remote
      possibility that parallel make with a different output directory can
      fail.
      
      Also changed the deprecated EXTRA_CFLAGS construct to ccflags-y syntax.
      
      Fixed up patch to survive "make drivers/scsi/ -j"
      with BUILD_FIRMWARE enable. /Sam
      Signed-off-by: default avatarVegard Nossum <vegard.nossum@gmail.com>
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Acked-by: default avatarHannes Reinecke <hare@suse.de>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      93a38fa2
    • Salyzyn, Mark's avatar
      [SCSI] aacraid: fib context lock for management ioctls · a119ee8e
      Salyzyn, Mark authored
      Alan noticed the lack of locking surrounding the driver's dealings
      with the fib context managed by the trio of ioctls that are used by
      the RAID management applications to retrieve Adapter Initiated FIBs. I
      merely expanded the fib lock to include the fib context. There have
      been no field reports of any issues generally because the applications
      are relatively static and do not come and go often enough to stress
      this area. I bloated this patch a little with some space junk.
      Signed-off-by: default avatarMark Salyzyn <aacraid@adaptec.com>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      a119ee8e
    • FUJITA Tomonori's avatar
      [SCSI] ch: remove forward declarations · 5aa22af3
      FUJITA Tomonori authored
      This moves ch_template and changer_fops structs to the end of file and
      removes forward declarations.
      
      This also removes some trailing whitespace.
      Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      5aa22af3
    • FUJITA Tomonori's avatar
      [SCSI] ch: fix device minor number management bug · da707c54
      FUJITA Tomonori authored
      ch_probe uses the total number of ch devices as minor.
      
      ch_probe:
      	ch->minor = ch_devcount;
      ...
      	ch_devcount++;
      
      Then ch_remove decreases ch_devcount:
      
      ch_remove:
      	ch_devcount--;
      
      If you have two ch devices, sch0 and sch1, and remove sch0,
      ch_devcount is 1. Then if you add another ch device, ch_probe tries to
      create sch1. So you get a warning and fail to create sch1:
      
      Jan 24 16:01:05 nice kernel: sysfs: duplicate filename 'sch1' can not be created
      Jan 24 16:01:05 nice kernel: WARNING: at fs/sysfs/dir.c:424 sysfs_add_one()
      Jan 24 16:01:05 nice kernel: Pid: 2571, comm: iscsid Not tainted 2.6.24-rc7-ga3d2c2e8-dirty #1
      Jan 24 16:01:05 nice kernel:
      Jan 24 16:01:05 nice kernel: Call Trace:
      Jan 24 16:01:05 nice kernel:  [<ffffffff802a22b8>] sysfs_add_one+0x54/0xbd
      Jan 24 16:01:05 nice kernel:  [<ffffffff802a283c>] create_dir+0x4f/0x87
      Jan 24 16:01:05 nice kernel:  [<ffffffff802a28a9>] sysfs_create_dir+0x35/0x4a
      Jan 24 16:01:05 nice kernel:  [<ffffffff803069a1>] kobject_get+0x12/0x17
      Jan 24 16:01:05 nice kernel:  [<ffffffff80306ece>] kobject_add+0xf3/0x1a6
      Jan 24 16:01:05 nice kernel:  [<ffffffff8034252b>] class_device_add+0xaa/0x39d
      Jan 24 16:01:05 nice kernel:  [<ffffffff803428fb>] class_device_create+0xcb/0xfa
      Jan 24 16:01:05 nice kernel:  [<ffffffff80229e09>] printk+0x4e/0x56
      Jan 24 16:01:05 nice kernel:  [<ffffffff802a2054>] sysfs_ilookup_test+0x0/0xf
      Jan 24 16:01:05 nice kernel:  [<ffffffff88022580>] :ch:ch_probe+0xbe/0x61a
      
      (snip)
      
      This patch converts ch to use a standard minor number management way,
      idr like sg and bsg.
      Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
      da707c54
  2. 23 Jan, 2008 34 commits