GitHub/moto-9609/android_kernel_motorola_exynos9610.git
17 years ago[SCSI] initio: Convert into a real Linux driver and update to modern style
Alan Cox [Mon, 21 May 2007 14:06:43 +0000 (15:06 +0100)]
[SCSI] initio: Convert into a real Linux driver and update to modern style

This is a mix of a grand clean up I did and a reworking of the hotplug
support by Christoph. In testing it works as well as the previous code
did (that is -quite badly-) but we can now read it and as it settles in
actually debug the long standing problems it shares with the old driver.

Signed-off-by: Alan Cox <alan@redhat.com>
From Christoph:

removal of the BSD license is also fine with me, but should really
get a mention in the changelog aswell.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years ago[SCSI] aacraid: add support for FUA
Salyzyn, Mark [Fri, 18 May 2007 18:51:34 +0000 (14:51 -0400)]
[SCSI] aacraid: add support for FUA

Back in the beginning of last year we disabled mode page 8 and mode page
3f requests through device quirk bits instead of enhancing the driver to
respond to these mode pages because there was no apparent added value.

The Firmware that supports the new communication commands supports the
ability to force a write around of the adapter cache on a command by
command basis. In the attached patch we enable mode page 8 and 3f and
spoof the results as needed in order to *convince* the layers above to
submit writes with the FUA (Force Unit Attention) bit set if the file
system or application requires it, if the Firmware supports the write
through, or instead to submit a SYNCHRONIZE_CACHE if the Firmware does
not. The added value here is for file systems that benefit from this
functionality and for clustering or redundancy scenarios.

Caveats: By convince, we are responding with a minimal short 3 byte
content mode page 8, with only the data the SCSI layer needs and that we
can fill confidently. Applications that require the customarily larger
mode page 8 results may be confused by this(?). The FUA, or the
SYNCHRONIZE_CACHE only affect the cache on the controller. Our firmware
by default ensure that the underlying physical drives of the array have
their cache turned off so normally this is not a problem.

This attached patch is against current scsi-misc-2.6 and was unit tested
on RHEL5. Since this is a feature enhancement, it should not be
considered for any current stabilization efforts.

Signed-off-by: Mark Salyzyn <aacraid@adaptec.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years ago[SCSI] aha152x: use wait_for_completion_timeout
Christoph Hellwig [Sun, 13 May 2007 15:52:12 +0000 (17:52 +0200)]
[SCSI] aha152x: use wait_for_completion_timeout

Use wait_for_completion_timeout instead a semaphore + timer.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years ago[SCSI] kill scsi host template suspend/resume
Tejun Heo [Wed, 21 Mar 2007 07:05:16 +0000 (16:05 +0900)]
[SCSI] kill scsi host template suspend/resume

With libata converted to use sdev->manage_start_stop for suspend and
resume, sht->suspend/resume() has no user left and low level
suspend/ressume should be taken care of by low level driver's
suspend/resume callbacks (e.g. PCI or PCMCIA driver callbacks).  This
patch removes sht->suspend/resume() callbacks.

This change is suggested by Christoph Hellwig.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Christoph Hellwig <hch@infradead.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years ago[SCSI] ibmmca: convert to new probing API and fix oopses
James Bottomley [Thu, 3 May 2007 16:13:08 +0000 (11:13 -0500)]
[SCSI] ibmmca: convert to new probing API and fix oopses

This is basically a straight conversion.  I have one of these things, so
I know it works ... my problem is that it has a wierd SCA like
connector, so I can't connect anything to it (no cables).

However, previously it panic'd in the interrupt, now it completes a bus
scan.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years ago[SCSI] FC Transport support for vports based on NPIV
James Smart [Fri, 27 Apr 2007 16:41:09 +0000 (12:41 -0400)]
[SCSI] FC Transport support for vports based on NPIV

This patch provides support for FC virtual ports based on NPIV.
For information on the interfaces and design, please read the
Documentation/scsi/scsi_fc_transport.txt file enclosed within
the patch.

The RFC was originally posted here:
http://marc.info/?l=linux-scsi&m=117226959918393&w=2

Changes from the initial RFC:
- Bug fix: needed a transport_class_unregister() for the vport class
- Create a symlink to the vport in the shost device if it is not the
    parent of the vport.
- Made symbolic name writable so it can be set after creation
- Made the temporary fc_vport_identifiers struct private to the
transport.
- Deleted the vport_id field from the vport. I couldn't find any good
  use for it (and symname is a good replacement).
- Made the vport_state and vport_last_state "private" attributes.
  Added the fc_vport_set_state() helper function to manage state
  transitions
- Updated vport_create() to allow a vport to be created in a disabled
  state.
- Added INITIALIZING and FAILED vport states
- Added VPCERR_xxx defines for errors to be returned from vport_create()
- Created a Documentation/scsi/scsi_fc_transport.txt file that describes
  the interfaces and expected LLDD behaviors.

Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years agoarm: walk_stacktrace() needs to be exported
Al Viro [Tue, 15 May 2007 19:37:20 +0000 (20:37 +0100)]
arm: walk_stacktrace() needs to be exported

oprofile depends on having it

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix uml-x86_64
Al Viro [Tue, 15 May 2007 19:36:00 +0000 (20:36 +0100)]
fix uml-x86_64

__NR_syscall_max is done in x86_64 asm-offsets; do an equivalent in
uml kern_constants.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoaudit_match_signal() and friends are used only if CONFIG_AUDITSYSCALL is set
Al Viro [Tue, 15 May 2007 19:37:10 +0000 (20:37 +0100)]
audit_match_signal() and friends are used only if CONFIG_AUDITSYSCALL is set

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agom32r: __xchg() should be always_inline
Al Viro [Tue, 15 May 2007 19:37:00 +0000 (20:37 +0100)]
m32r: __xchg() should be always_inline

it depends on elimination of unreachable branches in switch (by object
size), so we must declare it always_inline

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agorpadlpar breakage - fallout of struct subsystem removal
Al Viro [Tue, 15 May 2007 19:36:50 +0000 (20:36 +0100)]
rpadlpar breakage - fallout of struct subsystem removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoem28xx and ivtv should depend on PCI
Al Viro [Tue, 15 May 2007 19:36:40 +0000 (20:36 +0100)]
em28xx and ivtv should depend on PCI

.. because video-buf.c requires PCI, and VIDEO_EM28XX selects it.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomissing includes in mlx4
Al Viro [Tue, 15 May 2007 19:36:30 +0000 (20:36 +0100)]
missing includes in mlx4

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Jeff Garzik <jeff@garzik.org>
Acked-by: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomissing dependencies for USB drivers in input
Al Viro [Tue, 15 May 2007 19:36:20 +0000 (20:36 +0100)]
missing dependencies for USB drivers in input

stuff that does select USB should depend on USB_ARCH_HAS_HCD, or we'll
end up with unbuildable configs.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomissing mm.h in fw-ohci
Al Viro [Tue, 15 May 2007 19:36:10 +0000 (20:36 +0100)]
missing mm.h in fw-ohci

need it for page_private(), not all targets have it pulled indirectly

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6
Linus Torvalds [Wed, 16 May 2007 01:50:19 +0000 (18:50 -0700)]
Merge /pub/scm/linux/kernel/git/lethal/sh64-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6:
  sh64: Add .gitignore entry for syscalltab.
  sh64: generic quicklist support.
  sh64: Update cayman defconfig.
  sh64: Fixup sh-sci build.
  sh64: ppoll/pselect6() and restartable syscalls.
  sh64: dma-mapping updates.
  sh64: Fixups for the irq_regs changes.
  sh64: Wire up many new syscalls.
  spelling fixes: arch/sh64/
  sh64: ROUND_UP macro cleanup in arch/sh64/kernel/pci_sh5.c

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Wed, 16 May 2007 01:47:21 +0000 (18:47 -0700)]
Merge /pub/scm/linux/kernel/git/bart/ide-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6:
  Use menuconfig objects: IDE
  sl82c105: Switch to ref counting API
  ide: remove ide_use_dma()
  ide: add missing validity checks for identify words 62 and 63
  ide: remove ide_dma_enable()
  sl82c105: add speedproc() method and MWDMA0/1 support
  cs5530/sc1200: add ->speedproc support
  cs5530/sc1200: DMA support cleanup
  ide: use ide_tune_dma() part #2
  cs5530/sc1200: add ->udma_filter methods
  ide: always disable DMA before tuning it
  pdc202xx_new: use ide_tune_dma()
  alim15x3: use ide_tune_dma()
  sis5513: PIO mode setup fixes
  serverworks: PIO mode setup fixes
  pdc202xx_old: rewrite mode programming code (v2)

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Wed, 16 May 2007 01:46:25 +0000 (18:46 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
  ucc_geth: eliminate max-speed, change interface-type to phy-connection-type
  smc911x: fix compilation breakage
  pasemi_mac: Fix local-mac-address parsing
  pasemi_mac: Terminate PCI ID list
  pasemi_mac: Interrupt ack fixes
  pasemi_mac: Fix register defines

17 years agox86: Fix discontigmem + non-HIGHMEM compile
Linus Torvalds [Wed, 16 May 2007 01:45:49 +0000 (18:45 -0700)]
x86: Fix discontigmem + non-HIGHMEM compile

It's not necessarily a very sane configuration, but people running "make
randconfig" noticed it wouldn't compile.  This fixes some obvious
problems in discontig.c to allow a clean compile.

Acked-by: andrew hendry <andrew.hendry@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoUse menuconfig objects: IDE
Jan Engelhardt [Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)]
Use menuconfig objects: IDE

Use menuconfigs instead of menus, so the whole menu can be disabled at once
instead of going through all options.

Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agosl82c105: Switch to ref counting API
Alan Cox [Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)]
sl82c105: Switch to ref counting API

Not sure how this one got missed in the great purge some time ago but it did.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: remove ide_use_dma()
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)]
ide: remove ide_use_dma()

ide_use_dma() duplicates a lot of ide_max_dma_mode() functionality
and as all users of ide_use_dma() were converted to use ide_tune_dma()
now it is possible to add missing checks to ide_tune_dma() and remove
ide_use_dma() completely, so do it.

There should be no functionality changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: add missing validity checks for identify words 62 and 63
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)]
ide: add missing validity checks for identify words 62 and 63

Check validity of identify words 62 and 63 before using them in
ide_get_mode_mask().

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: remove ide_dma_enable()
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:46 +0000 (00:51 +0200)]
ide: remove ide_dma_enable()

* check ->speedproc return value in ide_tune_dma()
* use ide_tune_dma() in cmd64x/cs5530/sc1200/siimage/sl82c105/scc_pata drivers
* remove no longer needed ide_dma_enable()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agosl82c105: add speedproc() method and MWDMA0/1 support
Sergei Shtylyov [Tue, 15 May 2007 22:51:44 +0000 (00:51 +0200)]
sl82c105: add speedproc() method and MWDMA0/1 support

Add the speedproc() method for setting transfer modes, modify config_for_dma()
to call it and use ide_max_dma_mode() to select the best DMA mode.
Add support for the multiword DMA modes 0 and 1, using the upper half of the
'drive_data' field to store the DMA timings to program into the drive control
register when DMA is turned on for real.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agocs5530/sc1200: add ->speedproc support
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:44 +0000 (00:51 +0200)]
cs5530/sc1200: add ->speedproc support

* add {cs5530,sc1200}_tunepio() for programming PIO timings

* add {cs5530,sc1200}_tune_chipset() (->speedproc method) for setting
  transfer mode and convert {cs5530,sc1200}_config_dma() to use it

* bump driver version

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agocs5530/sc1200: DMA support cleanup
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:44 +0000 (00:51 +0200)]
cs5530/sc1200: DMA support cleanup

sc1200.c:

* remove open-coded variant of ide_dma_host_off() (== ->dma_host_off),
  it is not needed because ->dma_off_quietly calls ->dma_host_off

* use ->dma_host_on (== ide_dma_host_on() for this driver) instead of
  open-coded variant, call it from the users of sc1200_config_dma2()

  [ there is no need to call ->dma_host_on in sc1200_config_dma() because
    core code takes care of calling ->ide_dma_on on successful execution
    of ->ide_dma_check ]

* add comment about ->tuneproc interface abuse

cs5530.c/sc1200.c:

* core code takes care of calling ->dma_off_quietly before calling
  ->ide_dma_check so there is no need to call it in ->ide_dma_check methods

* bump driver version

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: use ide_tune_dma() part #2
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:43 +0000 (00:51 +0200)]
ide: use ide_tune_dma() part #2

Use ide_tune_dma() in ide-cris/it821x/pdc202xx_old/serverworks drivers.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agocs5530/sc1200: add ->udma_filter methods
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:43 +0000 (00:51 +0200)]
cs5530/sc1200: add ->udma_filter methods

CS5530/SC1200 specifies that two drives on the same cable cannot mix
UDMA/MDMA.  Add {cs5530,sc1200}_udma_filter() to handle this.  This also
makes it possible to remove open-coded best DMA mode selection and use
standard ide_use_dma()/ide_max_dma_mode() helpers.  While at it bump
version numbers.

There should be no functionality changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: always disable DMA before tuning it
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:43 +0000 (00:51 +0200)]
ide: always disable DMA before tuning it

ide_start_power_step() and set_using_dma() were missing ->dma_off_quietly
call (comment in probe_hwif() states that DMA should be always cleared before
tuning is attempted).  Fix it.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agopdc202xx_new: use ide_tune_dma()
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:43 +0000 (00:51 +0200)]
pdc202xx_new: use ide_tune_dma()

* remove code enabling IORDY and prefetch from config_chipset_for_dma(),
  as the comment states it has no real effect because these settings are
  overriden when the PIO mode is set (and for this driver ->autotune == 1
  so PIO mode is always programmed)

* use ide_tune_dma() in pdcnew_config_drive_xfer_rate() and remove no longer
  needed config_chipset_for_dma()

There should be no functionality changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoalim15x3: use ide_tune_dma()
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:43 +0000 (00:51 +0200)]
alim15x3: use ide_tune_dma()

Use ide_tune_dma() in ali15x3_config_drive_for_dma() and remove all the open
coded DMA tuning code and also config_chipset_for_dma().  Set ->atapi_dma flag
correctly in init_hwif_common_ali15x3() so ide_tune_dma() can take care of
checking if ATAPI DMA is allowed and remove open coded ATAPI DMA check from
ali15x3_config_drive_for_dma().

There should be no functionality changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agosis5513: PIO mode setup fixes
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:42 +0000 (00:51 +0200)]
sis5513: PIO mode setup fixes

* limit max PIO mode to PIO4, this driver doesn't support PIO5 and attempt
  to program PIO5 by config_art_rwp_pio() could result in incorrect PIO
  timings being programmed and possibly the data corruption (for < ATA100
  family chipsets PIO0 timings were used, for ATA100 and ATA100a - the random
  content of test1 variable was used, for ATA133 - MWDMA0 timings were used)

* BUG() in sis5513_tune_chipset() if somebody tries to force unsupported PIO5,
  also cleanup this function a bit while at it

* add comment about PIO0 timings for < ATA100 family chipsets

* remove open-coded best PIO mode selection from config_art_rwp_pio(),
  it contained numerous bugs:

  - it didn't check for validity of id->eide_pio_modes and id->eide_pio_iordy
    before using them

  - it tried to found out maximum PIO mode basing on minimum IORDY cycle time
    (moreover wrong cycle times were used for PIO1/5)

  - it was overriding PIO blacklist and conservative PIO "downgrade" done
    by ide_get_best_pio_mode()

* use sis5513_tune_drive() instead of config_art_rwp_pio()
  in sis5513_config_xfer_rate() so the correct PIO mode is also set
  on drive even if the device is not IORDY/DMA capable

* config_art_rwp_pio() was always setting the best possible mode and not
  the wanted one - fix it and move ide_get_best_pio_mode() call to
  config_chipset_for_pio()

* don't use ide_find_best_mode() in config_chipset_for_pio(), it was being
  overriden by config_art_rwp_pio() for the host timings anyway + we need to
  set the same PIO mode on the device and the host

* pass correct "pio" argument (255 instead of 5) to sis5513_tune_drive() call
  in sis5513_config_xfer_rate() so the best PIO mode is set on the drive
  and not PIO4

* rename sis5513_tune_drive() to sis5513_tuneproc()
  and config_chipset_for_pio() to sis5513_tune_driver()

* bump driver version

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoserverworks: PIO mode setup fixes
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:42 +0000 (00:51 +0200)]
serverworks: PIO mode setup fixes

* limit max PIO mode to PIO4, this driver doesn't support PIO5 and attempt
  to program PIO5 by svwks_tune_chipset() could result in incorrect PIO
  timings being programmed and possibly the data corruption (it seems that
  the minimum possible values were used but I lack the datasheets to be sure)

* select best PIO mode in svwks_tune_drive() and not in svwks_tune_chipset()
  when doing PIO autotuning (pio == 255)

* don't try to tune PIO in config_chipset_for_dma() as ide_dma_enable() could
  return 1 if DMA was previously enabled (svwks_config_drive_xfer_rate()
  takes care of PIO tuning if no suitable DMA mode is found)

* remove config_chipset_for_pio() and use svwks_tune_drive() instead,
  config_chipset_for_pio() contained numerous bugs when selecting PIO mode
  (luckily it was only used for devices limited to PIO by capabilities/BIOS):

  - it didn't check for validity of id->eide_pio_modes and id->eide_pio_iordy
    before using them

  - it tried to found out maximum PIO mode basing on minimum IORDY cycle time
    (moreover wrong cycle times were used for PIO0/1/5)

  - it was overriding PIO blacklist and conservative PIO "downgrade" done
    by ide_get_best_pio_mode()

  - if the max drive PIO was PIO5 then XFER_PIO_0/XFER_PIO_SLOW was selected
    (XFER_PIO_SLOW is not supported by svwks_tune_chipset() so the result
     was the same as if using XFER_PIO_5 => wrong PIO timings were set)

  - it was overriding drive->current_speed

* bump driver version

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agopdc202xx_old: rewrite mode programming code (v2)
Bartlomiej Zolnierkiewicz [Tue, 15 May 2007 22:51:41 +0000 (00:51 +0200)]
pdc202xx_old: rewrite mode programming code (v2)

This patch is based on the documentation (I would like to thank Promise
for it) and also partially on the older vendor driver.

Rewrite mode programming code:

* disable 66MHz clock in pdc202xx_tune_chipset() so it is correctly disabled
  even if both devices on the channel are not DMA capable and after reset

* enable/disable IORDY and PREFETCH bits in pdc202xx_tune_chipset()
  as they need to be setup correctly also for PIO only devices, plus IORDY
  wasn't disabled for non-IORDY devices and PREFETCH wasn't disabled for
  ATAPI devices

* remove dead code for setting SYNC_ERDDY_EN bits from config_chipset_for_dma()
  (driver sets ->autotune to 1 so PIO modes are always programmed => lower
   nibble of register A never equals 4 => "chipset_is_set" is always true)

* enable PIO mode programming for all ATAPI devices
  (it was limited to ->media == ide_cdrom devices)

* remove extra reads of registers A/B/C, don't read register D et all

* do clearing / programming of registers A/B/C in one go
  (gets rid of extra PCI config space read/write cycle)

* set initial values of drive_conf/AP/BP/CP variables to zero
  (paranoia for the case when PCI reads fail)

* remove XFER_UDMA6 to XFER_UDMA5 remapping case - it can't happen
  (ide_rate_filter() takes care of it)

* fix XFER_MW_DMA0 timings (they were overclocked, use the official ones)

* fix bitmasks for clearing bits of register B:

  - when programming DMA mode bit 0x10 of register B was cleared which
    resulted in overclocked PIO timing setting (iff PIO0 was used)

  - when programming PIO mode bits 0x18 weren't cleared so suboptimal
    timings were used for PIO1-4 if PIO0 was previously set (bit 0x10)
    and for PIO0/3/4 if PIO1/2 was previously set (bit 0x08)

* add FIXME comment about missing locking for 66MHz clock register

Also while at it:

* remove unused defines

* do a few cosmetic / CodingStyle fixes

* bump driver version

v2:
* in pdc202xx_tune_chipset() the old content of drive configuration
  registers is used only by the debugging code so cover "drive_conf"
  PCI registers read by #if PDC202XX_DEBUG_DRIVE_INFO
  (Noticed by Sergei Shtylyov)

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoucc_geth: eliminate max-speed, change interface-type to phy-connection-type
Kim Phillips [Fri, 11 May 2007 23:25:07 +0000 (18:25 -0500)]
ucc_geth: eliminate max-speed, change interface-type to phy-connection-type

It was agreed that phy-connection-type was a better name for
the interface-type property, so this patch renames it.

Also, the max-speed property name was determined too generic,
and is therefore eliminated in favour of phy-connection-type
derivation logic.

includes corrections to copyright text.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosmc911x: fix compilation breakage
Vitaly Wool [Sun, 13 May 2007 14:42:08 +0000 (18:42 +0400)]
smc911x: fix compilation breakage

Looks like the new version of this patch has been overlooked,
so I'm resending it.

It just adapts the driver to the new IRQ API
according to what Russell has pointed out.

 drivers/net/smc911x.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

Signed-off-by: Vitaly Wool <vitalywool@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopasemi_mac: Fix local-mac-address parsing
olof@lixom.net [Sat, 12 May 2007 19:57:46 +0000 (14:57 -0500)]
pasemi_mac: Fix local-mac-address parsing

Turns out we have an old version of firmware that stores the mac address
in 'mac-address' as a string instead of a byte array. All versions that
use local-mac-address should have it as byte array, so no need to do
string parsing for that case.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopasemi_mac: Terminate PCI ID list
olof@lixom.net [Sat, 12 May 2007 19:57:36 +0000 (14:57 -0500)]
pasemi_mac: Terminate PCI ID list

This caused some very interesting behaviour depending on what happened to
be built at the same time. Add terminating empty entry to the list of IDs.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopasemi_mac: Interrupt ack fixes
Olof Johansson [Sat, 12 May 2007 23:01:09 +0000 (18:01 -0500)]
pasemi_mac: Interrupt ack fixes

Interrupt ack fixes

Fix the packet count resets at interrupt time, using the cacheable
packet count status to set number of processed/received packets, since
the ack count is the cumulative number of packets processed, and not
incremental.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopasemi_mac: Fix register defines
olof@lixom.net [Sat, 12 May 2007 19:57:27 +0000 (14:57 -0500)]
pasemi_mac: Fix register defines

Some shift values were obviously wrong. Fix them to correspond with
the masks.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Tue, 15 May 2007 19:10:26 +0000 (12:10 -0700)]
Merge /pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] Fix wrong ID in via-agp.c

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
Linus Torvalds [Tue, 15 May 2007 19:10:00 +0000 (12:10 -0700)]
Merge /pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] Correct revision mask for powernow-k8
  [CPUFREQ] powernow-k7: fix MHz rounding issue with perflib
  [CPUFREQ] Support rev H AMD64s in powernow-k8

17 years agoll_rw_blk: fix gcc 4.2 warning on current_io_context()
Jens Axboe [Tue, 15 May 2007 17:30:07 +0000 (19:30 +0200)]
ll_rw_blk: fix gcc 4.2 warning on current_io_context()

current_io_context() is both static and exported with EXPORT_SYMBOL().
As there are no users outside of ll_rw_blk.c itself, just kill the
export.

Problem reported by Martin Michlmayr <tbm@cyrius.com>

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Tue, 15 May 2007 16:52:31 +0000 (09:52 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IPoIB/cm: Optimize stale connection detection
  IB/mthca: Set cleaned CQEs back to HW ownership when cleaning CQ
  IB/mthca: Fix posting >255 recv WRs for Tavor
  RDMA/cma: Add check to validate that cm_id is bound to a device
  RDMA/cma: Fix synchronization with device removal in cma_iw_handler
  RDMA/cma: Simplify device removal handling code
  IB/ehca: Disable scaling code by default, bump version number
  IB/ehca: Beautify sysfs attribute code and fix compiler warnings
  IB/ehca: Remove _irqsave, move #ifdef
  IB/ehca: Fix AQP0/1 QP number
  IB/ehca: Correctly set GRH mask bit in ehca_modify_qp()
  IB/ehca: Serialize hypervisor calls in ehca_register_mr()
  IB/ipath: Shadow the gpio_mask register
  IB/mlx4: Fix uninitialized spinlock for 32-bit archs
  mlx4_core: Remove unused doorbell_lock
  net: Trivial MLX4_DEBUG dependency fix.

17 years agoSLUB: CONFIG_LARGE_ALLOCS must consider MAX_ORDER limit
Christoph Lameter [Tue, 15 May 2007 08:42:06 +0000 (01:42 -0700)]
SLUB: CONFIG_LARGE_ALLOCS must consider MAX_ORDER limit

Take MAX_ORDER into consideration when determining KMALLOC_SHIFT_HIGH.
Otherwise we may run into a situation where we attempt to create general
slabs larger than MAX_ORDER.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi386: fix voyager build
Jeremy Fitzhardinge [Tue, 15 May 2007 08:41:59 +0000 (01:41 -0700)]
i386: fix voyager build

This adds an smp_ops for voyager, and hooks things up appropriately.  This is
the first baby-step to making subarch runtime switchable.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi386: move common parts of smp into their own file
Jeremy Fitzhardinge [Tue, 15 May 2007 08:41:48 +0000 (01:41 -0700)]
i386: move common parts of smp into their own file

Several parts of kernel/smp.c and smpboot.c are generally useful for other
subarchitectures and paravirt_ops implementations, so make them available for
reuse.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Acked-by: Chris Wright <chrisw@sous-sol.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoRemove cpu hotplug defines for __INIT & __INITDATA
Prarit Bhargava [Tue, 15 May 2007 08:41:43 +0000 (01:41 -0700)]
Remove cpu hotplug defines for __INIT & __INITDATA

After examining what was checked in and the code base I discovered that most
of 86c0baf123e474b6eb404798926ecf62b426bf3a wasn't necessary anymore....

So here's a patch that reverts the last part of that changeset:

Revert part of 86c0baf123e474b6eb404798926ecf62b426bf3a.

The kernel has moved forward to a state where the original change is not
necessary.  After porting forward, this final version of the patch was
applied and broke non-x86 architectures.

Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoRevert "MAINTAINERS: remove invalid list address for TPM"
Stephen Rothwell [Tue, 15 May 2007 08:41:36 +0000 (01:41 -0700)]
Revert "MAINTAINERS: remove invalid list address for TPM"

This reverts commit b6d1c9a44744224d83125a5a89c1a6cc4db27361.

Others tell me that this address has worked for them, so I can only
assume that I hit a glitch in the sourceforge mail system.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Kylene Hall <kjhall@us.ibm.com>
Cc: Marcel Selhorst <tpm@selhorst.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoclocksource: fix lock order in the resume path
Thomas Gleixner [Tue, 15 May 2007 08:41:32 +0000 (01:41 -0700)]
clocksource: fix lock order in the resume path

lockdep complains about the lock nesting of clocksource and watchdog lock
in the resume path.

Change the resume marker to a bit operation and remove the lock from this
path.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: john stultz <johnstul@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agom68k: implement __clear_user()
Geert Uytterhoeven [Tue, 15 May 2007 08:41:29 +0000 (01:41 -0700)]
m68k: implement __clear_user()

m68k: implement __clear_user(), which is needed by fs/signalfd.c

Since we always let the MMU do all checking, clear_user() and __clear_user()
are identical. The old clear_user() is renamed to __clear_user() for
consistency.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoalpha: fix hard_smp_processor_id compile error
Simon Horman [Tue, 15 May 2007 08:41:15 +0000 (01:41 -0700)]
alpha: fix hard_smp_processor_id compile error

"Remove hardcoding of hard_smp_processor_id on UP systems",
2f4dfe206a2fc07099dfad77a8ea2f4b4ae2140f in Linus' tree, moved
the definition of hard_smp_processor_id linux/smp.h to asm/smp.h
for UP systems. This causes a regression on Alpha.

cc1: warnings being treated as errors
arch/alpha/kernel/setup.c: In function 'setup_arch':
arch/alpha/kernel/setup.c:506: warning: implicit declaration of function 'hard_smp_processor_id'
make[1]: *** [arch/alpha/kernel/setup.o] error 1
make: *** [arch/alpha/kernel] error 2

By including asm/smp.h non-conditionally in asm/mmu_context.h
the problem appears to be resolved.

Cc: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
Signed-off-by: Simon Horman <horms@verge.net.au>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoh8300 atomic.h update
Yoshinori Sato [Tue, 15 May 2007 08:41:07 +0000 (01:41 -0700)]
h8300 atomic.h update

add atomic_sub_and_test define.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agonommu: add ioremap_page_range()
Paul Mundt [Tue, 15 May 2007 08:41:02 +0000 (01:41 -0700)]
nommu: add ioremap_page_range()

lib/ioremap.c is presently only built in if CONFIG_MMU is set.  While this
is reasonable, platforms that support both CONFIG_MMU=y or n need to be
able to call in to this regardless.

As none of the current nommu platforms do anything special with ioremap(),
we assume that it's always successful.

This fixes the SH-4 build with CONFIG_MMU=n.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoepoll: move kfree inside ep_free
Davide Libenzi [Tue, 15 May 2007 08:40:57 +0000 (01:40 -0700)]
epoll: move kfree inside ep_free

Move the kfree() call inside the ep_free() function.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoepoll: fix some comments
Davide Libenzi [Tue, 15 May 2007 08:40:52 +0000 (01:40 -0700)]
epoll: fix some comments

Fixes some epoll code comments.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoepoll locks changes and cleanups
Davide Libenzi [Tue, 15 May 2007 08:40:47 +0000 (01:40 -0700)]
epoll locks changes and cleanups

Changes the rwlock to a spinlock, and drops the use-count variable.
Operations are always bound by the mutex now, so the use-count is no more
needed.  For the same reason, the rwlock can become a simple spinlock.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix epoll single pass code and add wait-exclusive flag
Davide Libenzi [Tue, 15 May 2007 08:40:41 +0000 (01:40 -0700)]
fix epoll single pass code and add wait-exclusive flag

Fixes the epoll single pass code.  During the unlocked event delivery (to
userspace) code, the poll callback can re-issue new events, and we must
receive them correctly.  Since we loop in a lockless fashion, we want to be
O(nready), and we don't want to flash on/off the spinlock for every event, we
have the poll callback to use a secondary list to queue events while we're
inside the event delivery loop.  The rw_semaphore has been turned into a
mutex.  This patch also adds the wait-exclusive flag, as suggested by Davi
Arnaut.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[CPUFREQ] Correct revision mask for powernow-k8
Dave Jones [Mon, 14 May 2007 22:27:29 +0000 (18:27 -0400)]
[CPUFREQ] Correct revision mask for powernow-k8

Mark Langsdorf points out that the correct define for this
revision bump is 0x80000.  Also to save us having to keep
renaming the #define, give it a more meaningful name.

Signed-off-by: Dave Jones <davej@redhat.com>
17 years agoRevert "ipmi: add new IPMI nmi watchdog handling"
Linus Torvalds [Mon, 14 May 2007 22:24:24 +0000 (15:24 -0700)]
Revert "ipmi: add new IPMI nmi watchdog handling"

This reverts commit f64da958dfc83335de1d2bef9d3868f30feb4e53.

Andi Kleen is unhappy with the changes, and they really do not seem
worth it.  IPMI could use DIE_NMI_IPI instead of the new callback, even
though that ends up having its own set of problems too, mainly because
the IPMI code cannot really know the NMI was from IPMI or not.

Manually fix up conflicts in arch/x86_64/kernel/traps.c and
drivers/char/ipmi/ipmi_watchdog.c.

Cc: Andi Kleen <ak@suse.de>
Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: Corey Minyard <minyard@acm.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoIPoIB/cm: Optimize stale connection detection
Michael S. Tsirkin [Mon, 14 May 2007 04:26:51 +0000 (07:26 +0300)]
IPoIB/cm: Optimize stale connection detection

In the presence of some running RX connections, we repeat
queue_delayed_work calls each 4 RX WRs, which is a waste.  It's enough
to start stale task when a first passive connection is added, and
rerun it every IPOIB_CM_RX_DELAY as long as there are outstanding
passive connections.

This removes some code from RX data path.

Signed-off-by: Michael S. Tsirkin <mst@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/mthca: Set cleaned CQEs back to HW ownership when cleaning CQ
Michael S. Tsirkin [Mon, 14 May 2007 14:14:50 +0000 (17:14 +0300)]
IB/mthca: Set cleaned CQEs back to HW ownership when cleaning CQ

mthca_cq_clean() updates the CQ consumer index without moving CQEs
back to HW ownership.  As a result, the same WRID might get reported
twice, resulting in a use-after-free.  This was observed in IPoIB CM.
Fix by moving all freed CQEs to HW ownership.

This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=617>

Signed-off-by: Michael S. Tsirkin <mst@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/mthca: Fix posting >255 recv WRs for Tavor
Michael S. Tsirkin [Mon, 14 May 2007 04:26:51 +0000 (07:26 +0300)]
IB/mthca: Fix posting >255 recv WRs for Tavor

Fix posting lists of > 255 receive WRs for Tavor: rq.next_ind must
be updated each doorbell, otherwise the next doorbell will use an
incorrect index.

Found by Ronni Zimmermann at Mellanox.

Signed-off-by: Michael S. Tsirkin <mst@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoRDMA/cma: Add check to validate that cm_id is bound to a device
Sean Hefty [Mon, 7 May 2007 18:49:27 +0000 (11:49 -0700)]
RDMA/cma: Add check to validate that cm_id is bound to a device

Several checks in the rdma_cm check against the state of the
cm_id, but only to validate that the cm_id is bound to an underlying
transport specific CM and an RDMA device.  Make the check explicit
in what we're trying to check for, since we're not synchronizing
against the cm_id state.

This will allow a user to disconnect a cm_id or reject a connection
after receiving a device removal event.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoRDMA/cma: Fix synchronization with device removal in cma_iw_handler
Sean Hefty [Mon, 7 May 2007 18:49:12 +0000 (11:49 -0700)]
RDMA/cma: Fix synchronization with device removal in cma_iw_handler

The cma_iw_handler needs to validate the state of the rdma_cm_id before
processing a new connection request to ensure that a device removal is
not already being processed for the same rdma_cm_id.  Without the state
check, the user can receive simultaneous callbacks for the same cm_id, or
a callback after they've destroyed the cm_id.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoRDMA/cma: Simplify device removal handling code
Sean Hefty [Mon, 7 May 2007 18:49:00 +0000 (11:49 -0700)]
RDMA/cma: Simplify device removal handling code

Add a new routine and rename another to encapsulate common code for
synchronizing with device removal.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Disable scaling code by default, bump version number
Joachim Fenkes [Wed, 9 May 2007 11:48:31 +0000 (13:48 +0200)]
IB/ehca: Disable scaling code by default, bump version number

- Scaling code is still considered experimental, so disable it by default
- Increase version to SVNEHCA_0023

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Beautify sysfs attribute code and fix compiler warnings
Joachim Fenkes [Wed, 9 May 2007 11:48:25 +0000 (13:48 +0200)]
IB/ehca: Beautify sysfs attribute code and fix compiler warnings

eHCA's sysfs attributes are now being created via sysfs_create_group(),
making the process neatly table-driven. The return value is checked, thus
fixing a few compiler warnings.

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Remove _irqsave, move #ifdef
Joachim Fenkes [Wed, 9 May 2007 11:48:20 +0000 (13:48 +0200)]
IB/ehca: Remove _irqsave, move #ifdef

- In ehca_process_eq(), we're IRQ safe throughout the whole function, so we
  don't need another _irqsave in the middle of flight.

- take_over_work() is only called by comp_pool_callback(), so it can move
  into the same #ifdef block.

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Fix AQP0/1 QP number
Hoang-Nam Nguyen [Wed, 9 May 2007 11:48:11 +0000 (13:48 +0200)]
IB/ehca: Fix AQP0/1 QP number

AQP0/1 should report qp_num={0|1} and the actual QP# should be stored
in struct ehca_qp, not the other way round.

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Correctly set GRH mask bit in ehca_modify_qp()
Joachim Fenkes [Wed, 9 May 2007 11:48:01 +0000 (13:48 +0200)]
IB/ehca: Correctly set GRH mask bit in ehca_modify_qp()

The driver needs to always supply the "GRH present" flag to the
hypervisor, whether it's true or false. Not supplying it (i.e. not
setting the corresponding mask bit) amounts to a "perhaps", which we
don't want.

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ehca: Serialize hypervisor calls in ehca_register_mr()
Stefan Roscher [Wed, 9 May 2007 11:47:56 +0000 (13:47 +0200)]
IB/ehca: Serialize hypervisor calls in ehca_register_mr()

Some pSeries hypervisor versions show a race condition in the allocate
MR hCall.  Serialize this call per adapter to circumvent this problem.

Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: Shadow the gpio_mask register
Arthur Jones [Thu, 10 May 2007 19:10:49 +0000 (12:10 -0700)]
IB/ipath: Shadow the gpio_mask register

Once upon a time, GPIO interrupts were rare.  But then a chip bug in
the waldo series forced the use of a GPIO interrupt to signal packet
reception.  This greatly increased the frequency of GPIO interrupts
which have the gpio_mask bits set on the waldo chips.  Other bits in
the gpio_status register are used for I2C clock and data lines, these
bits are usually on.  An "unlikely" annotation leftover from the old
days was improperly applied to these bits, and an unnecessary chip
mmio read was being accessed in the interrupt fast path on waldo.

Remove the stagnant unlikely annotation in the interrupt handler and
keep a shadow copy of the gpio_mask register to avoid the slow mmio
read when testing for interruptable GPIO bits.

Signed-off-by: Arthur Jones <arthur.jones@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/mlx4: Fix uninitialized spinlock for 32-bit archs
Jack Morgenstein [Sun, 13 May 2007 14:18:23 +0000 (17:18 +0300)]
IB/mlx4: Fix uninitialized spinlock for 32-bit archs

uar_lock spinlock was used in mlx4_ib_cq_arm without being initialized
(this only affects 32-bit archs, because uar_lock is not used on
64-bit archs and MLX4_INIT_DOORBELL_LOCK() is a NOP).

Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
Linus Torvalds [Mon, 14 May 2007 19:29:14 +0000 (12:29 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/drzeus/mmc

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:
  pxamci: fix PXA27x MMC workaround for bad CRC with 136 bit response
  mmc: use assigned major for block device
  sdhci: handle dma boundary interrupts
  mmc: au1xmmc command types check from data flags

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 14 May 2007 19:28:11 +0000 (12:28 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPV4] SNMP: Display new statistics at /proc/net/netstat
  [IPV6]: Reverse sense of promisc tests in ip6_mc_input
  [NET_SCHED]: prio qdisc boundary condition
  [IPSEC]: Don't warn if high-order hash resize fails
  [IPSEC]: Check validity of direction in xfrm_policy_byid

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 14 May 2007 19:27:17 +0000 (12:27 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Update defconfig.
  [VIDEO]: XVR-500 and XVR-2500 need FB=y.
  [SPARC32]: asm/system.h needs asm/smp.h
  [SPARC32]: Update defconfig.
  [SPARC32]: Fix sparc32 kdebug changes.
  [SPARC64]: Accept ebus_bus_type for generic DMA ops.
  [SPARC64]: Add missing cpus_empty() check in hypervisor xcall handling.
  [SCSI]: Add help text for SCSI_ESP_CORE.
  [SPARC] SBUS: display7seg.c needs asm/io.h
  [SPARC] SBUS: bbc_i2c.c needs asm/io.h
  [SPARC64]: Be more resiliant with PCI I/O space regs.
  [SERIAL] SUNHV: Add an ID string.

17 years agoDeclare another couple of compat syscalls.
Stephen Rothwell [Mon, 14 May 2007 03:47:47 +0000 (13:47 +1000)]
Declare another couple of compat syscalls.

compat_sys_signalfd and compat_sys_timerfd need declarations before
PowerPC can wire them up.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMAINTAINERS update.
Dave Jones [Sun, 13 May 2007 23:07:46 +0000 (19:07 -0400)]
MAINTAINERS update.

I've not really 'maintained' this code for years, and others
are doing a much more thorough job these days.
Removing myself might stem some of the crazier emails I get.

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agotimekeeping fix patch got mis-applied
Thomas Gleixner [Mon, 14 May 2007 09:10:02 +0000 (11:10 +0200)]
timekeeping fix patch got mis-applied

The time keeping code move to kernel/time/timekeeping.c broke the
clocksource resume logic patch, which got applied to the old file by a
fuzzy application.  Fix it up and move the clocksource_resume() call to
the appropriate place.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
[ tssk, tssk, everybody should use --fuzz=0 ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agopxamci: fix PXA27x MMC workaround for bad CRC with 136 bit response
Nicolas Pitre [Sun, 13 May 2007 16:03:08 +0000 (18:03 +0200)]
pxamci: fix PXA27x MMC workaround for bad CRC with 136 bit response

... and make it depend on the response flag instead of the command type.

Signed-off-by: Nicolas Pitre <npitre@mvista.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
17 years agommc: use assigned major for block device
Pierre Ossman [Mon, 14 May 2007 15:27:29 +0000 (17:27 +0200)]
mmc: use assigned major for block device

The MMC block devices now have an assigned major. Make sure
we actually use it.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
17 years agosdhci: handle dma boundary interrupts
Pierre Ossman [Sun, 13 May 2007 20:39:23 +0000 (22:39 +0200)]
sdhci: handle dma boundary interrupts

When the device hits certain memory boundaries, it signals an
interrupt and expects to be serviced. We don't need the feature
but we need to make sure the device doesn't stall.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
17 years agommc: au1xmmc command types check from data flags
Yoichi Yuasa [Sun, 13 May 2007 16:23:15 +0000 (18:23 +0200)]
mmc: au1xmmc command types check from data flags

This patch has changed command types check from data flags.

MMC_STOP_TRANSMISSION is never passed to au1xmmc_send_command().
SEND_STOP() is used for MMC_STOP_TRANSMISSION.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
17 years ago[SPARC64]: Update defconfig.
David S. Miller [Mon, 14 May 2007 11:19:01 +0000 (04:19 -0700)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[VIDEO]: XVR-500 and XVR-2500 need FB=y.
David S. Miller [Mon, 14 May 2007 11:18:38 +0000 (04:18 -0700)]
[VIDEO]: XVR-500 and XVR-2500 need FB=y.

Otherwise the allmodconfig build breaks.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: asm/system.h needs asm/smp.h
David S. Miller [Mon, 14 May 2007 10:53:47 +0000 (03:53 -0700)]
[SPARC32]: asm/system.h needs asm/smp.h

To get hard_smp_processor_id() even on UP builds.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: Update defconfig.
David S. Miller [Mon, 14 May 2007 10:53:12 +0000 (03:53 -0700)]
[SPARC32]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: Fix sparc32 kdebug changes.
Robert Reif [Mon, 14 May 2007 10:22:08 +0000 (03:22 -0700)]
[SPARC32]: Fix sparc32 kdebug changes.

Fix recent kdebug changes to compile on sparc32.

Signed-off-by: Robert Reif <reif@earthlink.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV4] SNMP: Display new statistics at /proc/net/netstat
Mitsuru Chinen [Mon, 14 May 2007 10:07:30 +0000 (03:07 -0700)]
[IPV4] SNMP: Display new statistics at /proc/net/netstat

This displays the statistics specified in the updated IP-MIB RFC
(RFC4293) in /proc/net/netstat. The reason why these are not displayed
in /proc/net/snmp is that some existing utilities are developed under
the assumption which ipstat items in /proc/net/snmp is unchanged.

Signed-off-by: Mitsuru Chinen <mitch@linux.vnet.ibm.com>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Reverse sense of promisc tests in ip6_mc_input
Corey Mutter [Mon, 14 May 2007 10:00:27 +0000 (03:00 -0700)]
[IPV6]: Reverse sense of promisc tests in ip6_mc_input

Reverse the sense of the promiscuous-mode tests in ip6_mc_input().

Signed-off-by: Corey Mutter <crm-netdev@mutternet.com>
Signed-off-by: David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET_SCHED]: prio qdisc boundary condition
Jamal Hadi Salim [Mon, 14 May 2007 09:57:19 +0000 (02:57 -0700)]
[NET_SCHED]: prio qdisc boundary condition

This fixes an out-of-boundary condition when the classified
band equals q->bands. Caught by Alexey

Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Accept ebus_bus_type for generic DMA ops.
David S. Miller [Mon, 14 May 2007 09:56:03 +0000 (02:56 -0700)]
[SPARC64]: Accept ebus_bus_type for generic DMA ops.

Based upon a bug report by Meelis Roos.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPSEC]: Don't warn if high-order hash resize fails
Herbert Xu [Mon, 14 May 2007 09:19:11 +0000 (02:19 -0700)]
[IPSEC]: Don't warn if high-order hash resize fails

Multi-page allocations are always likely to fail.  Since such failures
are expected and non-critical in xfrm_hash_alloc, we shouldn't warn about
them.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPSEC]: Check validity of direction in xfrm_policy_byid
Herbert Xu [Mon, 14 May 2007 09:15:47 +0000 (02:15 -0700)]
[IPSEC]: Check validity of direction in xfrm_policy_byid

The function xfrm_policy_byid takes a dir argument but finds the policy
using the index instead.  We only use the dir argument to update the
policy count for that direction.  Since the user can supply any value
for dir, this can corrupt our policy count.

I know this is the problem because a few days ago I was deleting
policies by hand using indicies and accidentally typed in the wrong
direction.  It still deleted the policy and at the time I thought
that was cool.  In retrospect it isn't such a good idea :)

I decided against letting it delete the policy anyway just in case
we ever remove the connection between indicies and direction.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Add missing cpus_empty() check in hypervisor xcall handling.
David S. Miller [Mon, 14 May 2007 09:01:52 +0000 (02:01 -0700)]
[SPARC64]: Add missing cpus_empty() check in hypervisor xcall handling.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SCSI]: Add help text for SCSI_ESP_CORE.
David S. Miller [Mon, 14 May 2007 06:52:14 +0000 (23:52 -0700)]
[SCSI]: Add help text for SCSI_ESP_CORE.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC] SBUS: display7seg.c needs asm/io.h
David S. Miller [Mon, 14 May 2007 05:22:47 +0000 (22:22 -0700)]
[SPARC] SBUS: display7seg.c needs asm/io.h

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC] SBUS: bbc_i2c.c needs asm/io.h
David S. Miller [Mon, 14 May 2007 05:22:13 +0000 (22:22 -0700)]
[SPARC] SBUS: bbc_i2c.c needs asm/io.h

Signed-off-by: David S. Miller <davem@davemloft.net>