pandora-kernel.git
17 years ago[PATCH] libata-hp: implement SCSI part of hotplug
Tejun Heo [Wed, 31 May 2006 09:28:05 +0000 (18:28 +0900)]
[PATCH] libata-hp: implement SCSI part of hotplug

Implement SCSI part of hotplug.

This must be done in a separate context as SCSI makes use of EH during
probing.  SCSI scan fails silently if EH is in progress.  In such
cases, libata pauses briefly and retries until every device is
attached.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp: implement hotplug
Tejun Heo [Wed, 31 May 2006 09:28:03 +0000 (18:28 +0900)]
[PATCH] libata-hp: implement hotplug

Implement ATA part of hotplug.  To avoid probing broken devices over
and over again, disabled devices are not automatically detached.  They
are detached only if probing is requested for the device or the
associated port is offline.  Also, to avoid infinite probing loop,
Each device is probed only once per EH run.

As SATA PHY status is fragile, devices are detached only after it has
used up its recovery chances unless explicitly requested by LLDD or
user (LLDD may request direct detach if, for example, it supports cold
presence detection).

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp: implement ata_eh_detach_dev()
Tejun Heo [Wed, 31 May 2006 09:28:01 +0000 (18:28 +0900)]
[PATCH] libata-hp: implement ata_eh_detach_dev()

Implement ata_eh_detach_dev().  This function is responsible for
detaching an ATA device and offlining the associated SCSI device
atomically so that the detached device is not accessed after ATA
detach is complete.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] sata_sil24: update sil24_hardreset()
Tejun Heo [Wed, 31 May 2006 09:27:59 +0000 (18:27 +0900)]
[PATCH] sata_sil24: update sil24_hardreset()

Use phy debouncing instead of unconditional wait after DEV_RST and
make sil24_hardreset() to request followup SRST as that's the only way
to wait for !BSY.  Note that the original implementation never worked
- if the cached status was !BSY, ata_busy_sleep() finished
immediately; otherwise, it timed out regardless of the actual device
status.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] sata_sil24: rename PORT_PRB to PORT_LRAM and add PORT_LRAM_SLOT_SZ
Tejun Heo [Wed, 31 May 2006 09:27:57 +0000 (18:27 +0900)]
[PATCH] sata_sil24: rename PORT_PRB to PORT_LRAM and add PORT_LRAM_SLOT_SZ

PORT_PRB is a misnomer as the area also contains other stuff.  Rename
it to PORT_LRAM and add PORT_LRAM_SLOT_SZ.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] sata_sil: new interrupt handler
Tejun Heo [Wed, 31 May 2006 09:27:55 +0000 (18:27 +0900)]
[PATCH] sata_sil: new interrupt handler

The DMA complete bit of these controllers reflects ATA IRQ status
while no DMA command is in progress.  So, we can tell whether the
controller is raising an interrupt or not in deterministic manner.
This patch gives sata_sil its own interrupt handler which behaves much
better than the original one in terms of error detection and handling.
This change is also necessary for later hotplug support.

Further improvements are possible, in both 2 and 4 ports versions, we
can get all status with only one readl and using custom bmdma
operations can further cut down register accesses.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] sata_sil: add new constants in preparation for new interrupt handler
Tejun Heo [Wed, 31 May 2006 09:27:53 +0000 (18:27 +0900)]
[PATCH] sata_sil: add new constants in preparation for new interrupt handler

sata_sil is about to get a brand new interrupt handler.  Add relevant
constants.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata: export ata_hsm_move()
Tejun Heo [Wed, 31 May 2006 09:27:52 +0000 (18:27 +0900)]
[PATCH] libata: export ata_hsm_move()

ata_hsm_move() will be used by LLDDs which depend on standard PIO HSM
but implement their own interrupt handlers.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: implement followup softreset handling
Tejun Heo [Wed, 31 May 2006 09:27:50 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: implement followup softreset handling

In some cases, hardreset must be followed by SRST.

* some controllers can't classify with hardreset
* some controllers can't wait for !BSY after hardreset (LLDD should
  explicitly request followup softreset by returning -EAGAIN)
* (later) PM needs SRST w/ PMP==15 to operate after hardreset

To handle above cases, this patch implements follow-up softreset.
After a hardreset, ata_eh_reset() checks whether any of above
conditions are met and do a follow-up softreset if necessary.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: add prereset() method and implement ata_std_prereset()
Tejun Heo [Wed, 31 May 2006 09:27:48 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: add prereset() method and implement ata_std_prereset()

With hotplug, every reset might be a probing reset and thus something
similar to probe_init() is needed.  prereset() method is called before
a series of resets to a port and is the counterpart of postreset().
prereset() can tell EH to use different type of reset or skip reset by
modifying ehc->i.action.

This patch also implements ata_std_prereset().  Most controllers
should be able to use this function directly or with some wrapping.
After hotplug, different controllers need different actions to resume
the PHY and detect the newly attached device.  Controllers can be
categorized as follows.

* Controllers which can wait for the first D2H FIS after hotplug.
  Note that if the waiting is implemented by polling TF status, there
  needs to be a way to set BSY on PHY status change.  It can be
  implemented by hardware or with the help of the driver.

* Controllers which can wait for the first D2H FIS after sending
  COMRESET.  These controllers need to issue COMRESET to wait for the
  first FIS.  Note that the received D2H FIS could be the first D2H
  FIS after POR (power-on-reset) or D2H FIS in response to the
  COMRESET.  Some controllers use COMRESET as TF status
  synchronization point and clear TF automatically (sata_sil).

* Controllers which cannot wait for the first D2H FIS reliably.
  Blindly issuing SRST to spinning-up device often results in command
  issue failure or timeout, causing extended delay.  For these
  controllers, ata_std_prereset() explicitly waits ATA_SPINUP_WAIT
  (currently 8s) to give newly attached device time to spin up, then
  issues reset.  Note that failing to getting ready in ATA_SPINUP_WAIT
  is not critical.  libata will retry.  So, the timeout needs to be
  long enough to spin up most devices.

LLDDs can tell ata_std_prereset() which of above action is needed with
ATA_FLAG_HRST_TO_RESUME and ATA_FLAG_SKIP_D2H_BSY flags.  These flags
are PHY-specific property and will be moved to ata_link later.

While at it, this patch unifies function typedef's such that they all
have named arguments.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: implement sata_phy_debounce()
Tejun Heo [Wed, 31 May 2006 09:27:46 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: implement sata_phy_debounce()

With hotplug, PHY always needs to be debounced before a reset as any
reset might find new devices.  Extract PHY waiting code from
sata_phy_resume() and extend it to include SStatus debouncing.  Note
that sata_phy_debounce() is superset of what used to be done inside
sata_phy_resume().

Three default debounce timing parameters are defined to be used by
hot/boot plug.  As resume failure during probing will be properly
handled as errors, timeout doesn't have to be long as before.
probeinit() uses the same timeout to retain the original behavior.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: make probing related functions global
Tejun Heo [Wed, 31 May 2006 09:27:44 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: make probing related functions global

Hotplug will be implemented in libata-eh.c.  Make ata_dev_read_id()
and ata_dev_configure() global.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: add ata_aux_wq
Tejun Heo [Wed, 31 May 2006 09:27:42 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: add ata_aux_wq

It's best to run ATA hotplug from EH but attaching SCSI devices needs
working EH.  ata_aux_wq is used to give SCSI hotplug operations a
separate context.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: store attached SCSI device
Tejun Heo [Wed, 31 May 2006 09:27:40 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: store attached SCSI device

Add device persistent field dev->sdev and store the attached SCSI
device.  With hotplug, libata needs to know the attached SCSI device
to offline and detach it, but scsi_device_lookup() cannot be used
because libata will reuse SCSI ID numbers - dead but not gone devices
(due to zombie opens, etc...) interfere with the lookup.

dev->sdev doesn't hold reference to the SCSI device.  It's cleared
when the SCSI device goes away.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: implement ap->hw_sata_spd_limit
Tejun Heo [Wed, 31 May 2006 09:27:38 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: implement ap->hw_sata_spd_limit

Add ap->hw_sata_spd_limit and initialize it once during the boot
initialization (or driver load initialization).  ap->sata_spd_limit is
reset to ap->hw_sata_spd_limit on hotplug.  This prevents spd limits
introduced by earlier devices from affecting new devices.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: use __ata_scsi_find_dev()
Tejun Heo [Wed, 31 May 2006 09:27:36 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: use __ata_scsi_find_dev()

Convert direct sdev -> dev lookup to __ata_scsi_find_dev().

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: update ata_scsi_find_dev() and friends
Tejun Heo [Wed, 31 May 2006 09:27:34 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: update ata_scsi_find_dev() and friends

Separate out ata_find_dev() and __ata_scsi_find_dev() from
ata_scsi_find_dev().  These will be used by later hotplug
implementation.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: make some ata_device fields persistent
Tejun Heo [Wed, 31 May 2006 09:27:32 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: make some ata_device fields persistent

Lifetimes of some fields span over device plugging/unplugging.  This
patch moves such persistent fields to the top of ata_device and
separate them with ATA_DEVICE_CLEAR_OFFSET.  Fields above the offset
are initialized once during host initializatino while all other fields
are cleared before hotplugging.  Currently ->ap, devno and part of
flags are persistent.

Note that flags is partially cleared while holding host_set lock.
This is to synchronize with later warm plug implementation which will
record hotplug request in dev->flags.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: implement ata_dev_init()
Tejun Heo [Wed, 31 May 2006 09:27:30 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: implement ata_dev_init()

Move initialization of struct ata_device into ata_dev_init() in
preparation for hotplug.  This patch calls ata_dev_init() from
ata_host_init() and thus makes no functional difference.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata-hp-prep: add flags and eh_info/context fields for hotplug
Tejun Heo [Wed, 31 May 2006 09:27:29 +0000 (18:27 +0900)]
[PATCH] libata-hp-prep: add flags and eh_info/context fields for hotplug

Add hotplug related flags and eh_info/context fields.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata: implement ata_eh_wait()
Tejun Heo [Wed, 31 May 2006 09:27:27 +0000 (18:27 +0900)]
[PATCH] libata: implement ata_eh_wait()

Implement ata_eh_wait().  On return from this function, it's
guaranteed that the EH which was pending or in progress when the
function was called is complete - including the tailing part of SCSI
EH.  This will be used by hotplug and others to synchronize with EH.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata: shift host flag constants
Tejun Heo [Wed, 31 May 2006 09:27:25 +0000 (18:27 +0900)]
[PATCH] libata: shift host flag constants

Nudge host flag constants to make a room after ATA_FLAG_EH_PENDING.
New EH flag will be added.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years ago[PATCH] libata: set PIO-0 after successful EH reset
Tejun Heo [Wed, 31 May 2006 09:27:23 +0000 (18:27 +0900)]
[PATCH] libata: set PIO-0 after successful EH reset

Set ata_device->pio_mode to XFER_PIO_0 after a successful reset.  This
is to keep EH resets consistent with probe resets as updated by the
commit b6079ca409bf88c248992e96510dd6f610f7ed89.  Note that, with
soon-to-follow hotplug update, EH resets will include probe resets.

Signed-off-by: Tejun Heo <htejun@gmail.com>
17 years agolibata debugging: set initial dbg value
Borislav Petkov [Mon, 29 May 2006 05:06:23 +0000 (01:06 -0400)]
libata debugging: set initial dbg value

This patch sets the prerequisites for the new debugging scheme that more or
less resembles Donald Becker's net driver example. This one liner doesn't
change any functionality beside setting the appropriate debug level for the
msg_enable control in the ata_port struct, which will be later used by the
ata_msg_* macros to control the amount of debug information sent to printk.

Signed-off-by: <petkov@uni-muenster.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'master' into upstream
Jeff Garzik [Mon, 29 May 2006 05:03:37 +0000 (01:03 -0400)]
Merge branch 'master' into upstream

17 years agoMerge branch 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Sun, 28 May 2006 23:35:52 +0000 (16:35 -0700)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [PATCH] the latest consensus libata resume fix

17 years agoppc: Fix typo in TI_LOCAL_FLAGS definition
Paul Mackerras [Sun, 28 May 2006 22:42:34 +0000 (08:42 +1000)]
ppc: Fix typo in TI_LOCAL_FLAGS definition

A typo crept in with commit ea1e847cc202e805769c3c46ba5e5c53714068a1
which defined TI_LOCAL_FLAGS to be the offset of the `flags' field
of struct thread_info, rather than the `local_flags' field.  This
fixes it.  The typo was pointed out by Guennadi Liakhovetski.

Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years agoMerge branch 'upstream-fixes' into upstream
Jeff Garzik [Sun, 28 May 2006 20:32:59 +0000 (16:32 -0400)]
Merge branch 'upstream-fixes' into upstream

Conflicts:

drivers/scsi/libata-core.c

17 years ago[PATCH] the latest consensus libata resume fix
Mark Lord [Sun, 28 May 2006 15:28:00 +0000 (11:28 -0400)]
[PATCH] the latest consensus libata resume fix

Okay, just to sum things up.

This forces libata to wait for up to 2 seconds for BUSY|DRQ to clear
on resume before continuing.

[jgarzik adds...]  During testing we never saw DRQ asserted, but
nonetheless (a) this works and (b) testing for DRQ won't hurt.

Signed-off-by: Mark Lord <liml@rtr.ca>
Acked-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Sat, 27 May 2006 16:40:40 +0000 (09:40 -0700)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [PATCH] powerpc: fix RTC/NVRAM accesses on Maple
  [PATCH] ppc32 CPM_UART: various fixes for pq2 uart users
  [PATCH] powerpc: linuxppc64.org no more

17 years ago[PATCH] libata: add pio_data_xfer_noirq
Alan Cox [Wed, 24 May 2006 13:14:41 +0000 (14:14 +0100)]
[PATCH] libata: add pio_data_xfer_noirq

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] PCI identifiers for the pata_via update
Alan Cox [Wed, 24 May 2006 13:06:11 +0000 (14:06 +0100)]
[PATCH] PCI identifiers for the pata_via update

These IDs are also used by the drivers/ide/pci changes submitted by
VIA.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[netdrvr s/390] trim trailing whitespace
Jeff Garzik [Sat, 27 May 2006 01:58:38 +0000 (21:58 -0400)]
[netdrvr s/390] trim trailing whitespace

Previous fix patches added a bunch of trailing whitespace,
which git-applymbox complained loudly about.

17 years ago[PATCH] s390: lcs driver bug fixes and improvements [2/2]
Klaus Wacker [Wed, 24 May 2006 07:51:21 +0000 (09:51 +0200)]
[PATCH] s390: lcs driver bug fixes and improvements [2/2]

This is the second lcs driver patch containing the rest of lcs fixes.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: lcs driver bug fixes and improvements [1/2]
Klaus Wacker [Wed, 24 May 2006 07:51:17 +0000 (09:51 +0200)]
[PATCH] s390: lcs driver bug fixes and improvements [1/2]

Several problems occured with lcs device driver:
 - device not operational anymore after cable pull/plug-in.
         - unpredictable results occured, e.g. kernel panic
   using cards of type QD8F.
 - STOPLAN and delete multicast address command
           were not proper recognized by OSA card under heavy network workload.
         - channel/device error checks missing in interrupt handler.
To fix all problems at once recovery of lcs devices has been improved.
missing error checks in lcs interrupt handler has been added.
Once a hardware problem occurs lcs will recover the device now properly.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes
Ursula Braun [Wed, 24 May 2006 07:51:13 +0000 (09:51 +0200)]
[PATCH] s390: qeth driver fixes

From: Frank Blaschka <Frank.Blaschka@de.ibm.com>
From: Frank Pavlic <fpavlic@de.ibm.com>

        - fix fake_ll during initial device bringup. fake_ll was
  not active after first start of the device.
  Problem only occured when qeth was built without IPV6 support.
        - avoid skb usage after invocation of qeth_flush_buffers,
  because skb might already be freed.
        - remove yet another useless netif_wake_queue in
  qeth_softsetup_ipv6 since this function is only called
  when device is going online. In this case card->state will
  never be in state UP. So let the net_device queue down .

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes
Ursula Braun [Wed, 24 May 2006 07:51:11 +0000 (09:51 +0200)]
[PATCH] s390: qeth driver fixes

From: Frank Pavlic <fpavlic@de.ibm.com>

- correct checking of sscanf-%n value in qeth_string_to_ipaddr().
- don't use netif_stop_queue outside the hard_start_xmit routine.
  Rather use netif_tx_disable.
- don't call qeth_netdev_init on a recovery.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: minor fix in cu3088
Cornelia Huck [Wed, 24 May 2006 07:51:05 +0000 (09:51 +0200)]
[PATCH] s390: minor fix in cu3088

In case of a parse error for the cu3088 group attribute,
return -EINVAL instead of count.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] pcnet32: remove incorrect pcnet32_free_ring
Don Fry [Thu, 25 May 2006 23:22:40 +0000 (16:22 -0700)]
[PATCH] pcnet32: remove incorrect pcnet32_free_ring

During a code scan for another change I discovered that this call to
pcnet32_free_ring must be removed.  If the open fails due to a lack of
memory all the ring structures are removed via the call to free_ring
and a subsequent call to open will dereference a null pointer in
pcnet32_init_ring.

Please apply to 2.6.17.

Signed-off-by: Don Fry <brazilnut@us.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoe1000: add shutdown handler back to fix WOL
Auke Kok [Tue, 23 May 2006 20:35:57 +0000 (13:35 -0700)]
e1000: add shutdown handler back to fix WOL

Someone was waaay too aggressive and removed e1000's reboot notifier
instead of porting it to the new way of the shutdown handler.  This change
broke wake on lan.  Add the shutdown handler back in using the same method
as e100 uses.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
(cherry picked from c653e6351e371b33b29871e5eedf610ffb3be037 commit)

17 years agoMerge branch 'master' into upstream
Jeff Garzik [Sat, 27 May 2006 01:30:38 +0000 (21:30 -0400)]
Merge branch 'master' into upstream

17 years ago[PATCH] libata: add back ->data_xfer to ata_piix.c
Albert Lee [Fri, 26 May 2006 05:49:18 +0000 (13:49 +0800)]
[PATCH] libata: add back ->data_xfer to ata_piix.c

Add back ->data_xfer and ->mode_filter to ata_piix.c.

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linvil...
Jeff Garzik [Sat, 27 May 2006 01:26:22 +0000 (21:26 -0400)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6 into upstream-fixes

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 26 May 2006 22:13:33 +0000 (15:13 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NET]: dev.c comment fixes
  [IPV6] ROUTE: Don't try less preferred routes for on-link routes.
  [IRDA]: *_DONGLE should depend on IRTTY_SIR
  [MAINTAINERS]: Add entry for netem

17 years ago[NET]: dev.c comment fixes
Stephen Hemminger [Fri, 26 May 2006 20:25:24 +0000 (13:25 -0700)]
[NET]: dev.c comment fixes

Noticed that dev_alloc_name() comment was incorrect, and more spellung
errors.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6] ROUTE: Don't try less preferred routes for on-link routes.
YOSHIFUJI Hideaki [Fri, 26 May 2006 20:23:41 +0000 (13:23 -0700)]
[IPV6] ROUTE: Don't try less preferred routes for on-link routes.

In addition to the real on-link routes, NONEXTHOP routes
should be considered on-link.

Problem reported by Meelis Roos <mroos@linux.ee>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Acked-by: Meelis Roos <mroos@linux.ee>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] arlan: fix section mismatch warnings
Randy Dunlap [Thu, 25 May 2006 18:10:08 +0000 (11:10 -0700)]
[PATCH] arlan: fix section mismatch warnings

Fix section mismatch warnings:
WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to
.init.text:arlan_probe from .text between 'init_module' (at offset
0x3526) and 'cleanup_module'
WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to
.init.text:init_arlan_proc from .text between 'init_module' (at offset
0x3539) and 'cleanup_module'
WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to
.exit.text:cleanup_arlan_proc from .text between 'cleanup_module' (at
offset 0x356c) and 'arlan_diagnostic_info_string'

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] wavelan: fix section mismatch
Randy Dunlap [Thu, 25 May 2006 18:09:21 +0000 (11:09 -0700)]
[PATCH] wavelan: fix section mismatch

Fix section mismatch warning:
WARNING: drivers/net/wireless/wavelan.o - Section mismatch: reference to
.init.text: from .text between 'init_module' (at offset 0x371e) and
'cleanup_module'

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] tpm: fix bug for TPM on ThinkPad T60 and Z60
Kylene Jo Hall [Fri, 26 May 2006 01:44:27 +0000 (18:44 -0700)]
[PATCH] tpm: fix bug for TPM on ThinkPad T60 and Z60

The TPM chip on the ThinkPad T60 and Z60 machines is returning 0xFFFF for
the vendor ID which is a check the driver made to double check it was
actually talking to the memory mapped space of a TPM.  This patch removes
the check since it isn't absolutely necessary and was causing device
discovery to fail on these machines.

Signed-off-by: Kylene Hall <kjhall@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] scx200_acb: fix section mismatch warning
Randy Dunlap [Fri, 26 May 2006 01:44:26 +0000 (18:44 -0700)]
[PATCH] scx200_acb: fix section mismatch warning

WARNING: drivers/i2c/busses/scx200_acb.o - Section mismatch: reference to
.init.text: from .text after 'scx200_add_cs553x' (at offset 0x528)

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] s3c24xx: fix spi driver with CONFIG_PM
Ben Dooks [Fri, 26 May 2006 01:44:25 +0000 (18:44 -0700)]
[PATCH] s3c24xx: fix spi driver with CONFIG_PM

Fix compile bug with the S3C24XX SPI driver when CONFIG_PM is set.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] PowerMac: force only suspend-to-disk to be valid
Johannes Berg [Fri, 26 May 2006 01:44:24 +0000 (18:44 -0700)]
[PATCH] PowerMac: force only suspend-to-disk to be valid

For a very long time, echoing 'standby' or 'mem' into /sys/power/state has
killed the machine on powerpc.  This patch fixes that.

This patch adds the .valid callback to pm_ops on PowerMac so that only the
suspend to disk state can be entered.  Note that just returning 0 would
suffice since the upper layers don't pass PM_SUSPEND_DISK down, but we
handle it there regardless just in case that changes.

Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] affs: possible null pointer dereference in affs_rename()
Florin Malita [Fri, 26 May 2006 01:44:23 +0000 (18:44 -0700)]
[PATCH] affs: possible null pointer dereference in affs_rename()

If affs_bread() fails, the exit path calls mark_buffer_dirty_inode() with a
NULL argument.

Coverity CID: 312.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ads7846 conversion accuracy
David Brownell [Fri, 26 May 2006 01:44:20 +0000 (18:44 -0700)]
[PATCH] ads7846 conversion accuracy

This improves accuracy of the touchscreen and hwmon sensor readings,
addressing an issue noted by Imre Deak: there's an extra bit written before
the sample (12 bits) gets written out.

It also catches up to various comments, and makes the /proc/interrupts
entry sensible again.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Imre Deak <imre.deak@nokia.com>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] x86: wire up vmsplice syscall
Jens Axboe [Fri, 26 May 2006 01:44:19 +0000 (18:44 -0700)]
[PATCH] x86: wire up vmsplice syscall

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add CMSPAR to termbits.h for powerpc and alpha
Paul Mackerras [Fri, 26 May 2006 01:44:17 +0000 (18:44 -0700)]
[PATCH] Add CMSPAR to termbits.h for powerpc and alpha

Some driver wants to use CMSPAR, but it was missing on alpha and powerpc.
This adds it, with the same value as every other architecture uses.

(akpm: fixes the build of an upcoming gregkh USB patch)

Signed-off-by: Paul Mackerras <paulus@samba.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Unlock md devices when stopping them on reboot.
Neil Brown [Fri, 26 May 2006 00:39:25 +0000 (10:39 +1000)]
[PATCH] Unlock md devices when stopping them on reboot.

otherwise we get nasty messages about locks not being released.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Fri, 26 May 2006 18:51:08 +0000 (11:51 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/mthca: Fix posting lists of 256 receive requests to SRQ for Tavor

17 years ago[PATCH] powerpc: fix RTC/NVRAM accesses on Maple
Hollis Blanchard [Thu, 25 May 2006 21:36:53 +0000 (16:36 -0500)]
[PATCH] powerpc: fix RTC/NVRAM accesses on Maple

Due to a firmware device tree bug, RTC and NVRAM accesses (including
halt/reboot) on Maple have been broken since January, when an untested
build fix went in. This code patches the device tree in Linux.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[PATCH] ppc32 CPM_UART: various fixes for pq2 uart users
Vitaly Bordug [Wed, 24 May 2006 17:40:18 +0000 (21:40 +0400)]
[PATCH] ppc32 CPM_UART: various fixes for pq2 uart users

This fixes various odd things that missed update together with cpm_uart
platform_device move. Unified resources names, restructurisation, etc.
Also, addressed issue with recent phys/virt translation rework. Being
cache-coherent, CPM2's do alloc_bootmem() for the console stuff, and it was
used to treat console buffer descriptor mapping 1:1 (as in CPM1 case),
which is definitely wrong.

Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[PATCH] powerpc: linuxppc64.org no more
Arthur Othieno [Fri, 19 May 2006 10:22:23 +0000 (06:22 -0400)]
[PATCH] powerpc: linuxppc64.org no more

http://linuxppc64.org has long been a redirect to the canonical
http://penguinppc.org/ppc64/ -- update all instances accordingly,
as ACKed by Hollis:

On Wed, Jan 18, 2006 at 09:48:08AM -0600, Hollis Blanchard wrote:
> On Wed, 2006-01-18 at 13:07 +0100, Olaf Hering wrote:
> > On Wed, Jan 18, Arthur Othieno wrote:
> > >
> > > What about the s/linuxppc64\.org/penguinppc\.org/g case? Or is
> > > penguinppc64.org preferable? Or am I just taking it too far? ;)
> >
> > They are redirected on DNS or HTTP level.
>
> HTTP level, but that doesn't answer his question.
>
> As the maintainer of that site, I would prefer to remove the
> linuxppc64.org reference.

Signed-off-by: Arthur Othieno <apgo@patchbomb.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[IRDA]: *_DONGLE should depend on IRTTY_SIR
Samuel Ortiz [Thu, 25 May 2006 23:17:53 +0000 (16:17 -0700)]
[IRDA]: *_DONGLE should depend on IRTTY_SIR

If a SIR dongle is built in the kernel while IRTTY_SIR is built
as a module, kernel compilation will fail.
Thus, the SIR dongle config should depend on the IRTTY_SIR.

Closes kernel bug# 6512
(http://bugzilla.kernel.org/show_bug.cgi?id=6512)

Signed-off-by: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[MAINTAINERS]: Add entry for netem
Stephen Hemminger [Thu, 25 May 2006 23:14:43 +0000 (16:14 -0700)]
[MAINTAINERS]: Add entry for netem

It gets enough reports, that there ought to be a MAINTAINER entry.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] s390: fix typo in stop_hz_timer.
Martin Schwidefsky [Tue, 23 May 2006 07:22:42 +0000 (09:22 +0200)]
[PATCH] s390: fix typo in stop_hz_timer.

Add missing parentheses for type cast to u64.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoLinux 2.6.17-rc5 v2.6.17-rc5
Linus Torvalds [Thu, 25 May 2006 01:50:17 +0000 (18:50 -0700)]
Linux 2.6.17-rc5

17 years ago[PATCH] V4L/DVB (4045): Fixes recursive dependency for I2C
Jean Delvare [Wed, 24 May 2006 18:13:14 +0000 (15:13 -0300)]
[PATCH] V4L/DVB (4045): Fixes recursive dependency for I2C

Mixing "depends on I2C" and "select I2C" within the media subsystem
leads to the following problem:
Warning! Found recursive dependency: I2C DVB_BUDGET DVB_BUDGET_PATCH
DVB_AV7110 VIDEO_SAA7146_VV VIDEO_SAA7146 I2C

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoIB/mthca: Fix posting lists of 256 receive requests to SRQ for Tavor
Michael S. Tsirkin [Wed, 24 May 2006 15:27:07 +0000 (18:27 +0300)]
IB/mthca: Fix posting lists of 256 receive requests to SRQ for Tavor

If we post a list of length exactly a multiple of 256, nreq in
doorbell gets set to 256 which is wrong: it should be encoded by 0.
This is because we only zero it out on the next WR, which may not be
there.  The solution is to ring the doorbell after posting a WQE, not
before posting the next one.

This is the same bug that we just fixed for QPs with non-shared RQ.

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Wed, 24 May 2006 15:55:12 +0000 (08:55 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/ipath: deref correct pointer when using kernel SMA
  IB/ipath: fix null deref during rdma ops
  IB/ipath: register as IB device owner
  IB/ipath: enable PE800 receive interrupts on user ports
  IB/ipath: enable GPIO interrupt on HT-460
  IB/ipath: fix NULL dereference during cleanup
  IB/ipath: replace uses of LIST_POISON
  IB/ipath: fix reporting of driver version to userspace
  IB/ipath: don't modify QP if changes fail
  IB/ipath: fix spinlock recursion bug

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
Linus Torvalds [Wed, 24 May 2006 15:37:03 +0000 (08:37 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/shaggy/jfs-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6:
  JFS: Fix multiple errors in metapage_releasepage

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Wed, 24 May 2006 15:36:31 +0000 (08:36 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [PATCH] libata: add pio flush for via atapi (was: Re: TR: ASUS A8V Deluxe, x86_64)

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Wed, 24 May 2006 15:36:03 +0000 (08:36 -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:
  [PATCH] sky2: fix jumbo packet support

17 years ago[MMC] Fix premature use of md->disk
Pierre Ossman [Wed, 24 May 2006 08:20:45 +0000 (10:20 +0200)]
[MMC] Fix premature use of md->disk

md->disk was being used in a debug message before it was allocated.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoJFS: Fix multiple errors in metapage_releasepage
Dave Kleikamp [Wed, 24 May 2006 12:43:38 +0000 (07:43 -0500)]
JFS: Fix multiple errors in metapage_releasepage

It looks like metapage_releasepage was making in invalid assumption that
the releasepage method would not be called on a dirty page.  Instead of
issuing a warning and releasing the metapage, it should return 0, indicating
that the private data for the page cannot be released.

I also realized that metapage_releasepage had the return code all wrong.  If
it is successful in releasing the private data, it should return 1, otherwise
it needs to return 0.

Lastly, there is no need to call wait_on_page_writeback, since
try_to_release_page will not call us with a page in writback state.

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
17 years ago[PATCH] libata: Remove obsolete flag
Alan Cox [Tue, 23 May 2006 12:18:57 +0000 (13:18 +0100)]
[PATCH] libata: Remove obsolete flag

ATA_FLAG_IRQ_MASK was added when I did the original data transfer with
IRQ masked bits for PIO. It has since been replaced by ->pio_data_xfer
methods so should be removed so nobody uses it by mistake thinking it
still works.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] ata_piix formatting
Alan Cox [Mon, 22 May 2006 21:58:14 +0000 (22:58 +0100)]
[PATCH] ata_piix formatting

if( spacing fix for Garzik compliant formatting

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] sata_mv: endian annotations
Mark Lord [Mon, 22 May 2006 23:02:03 +0000 (19:02 -0400)]
[PATCH] sata_mv: endian annotations

Signed-off-by: Mark Lord <liml@rtr.ca>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] PATCH: libata. Add ->data_xfer method
Alan Cox [Mon, 22 May 2006 15:59:59 +0000 (16:59 +0100)]
[PATCH] PATCH: libata. Add ->data_xfer method

We need to pass the device in order to do per device checks such as
32bit I/O enables. With the changes to include dev->ap we now don't have
to add parameters however just clean them up. Also add data_xfer methods
to the existing drivers except ata_piix (which is in the other block of
patches). If you reject the piix one just add a data_xfer to it...

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[libata] libata-scsi, sata_mv: trim trailing whitespace
Jeff Garzik [Wed, 24 May 2006 05:53:39 +0000 (01:53 -0400)]
[libata] libata-scsi, sata_mv: trim trailing whitespace

17 years ago[PATCH] libata - fix bracketing and DMA oops
Alan Cox [Mon, 22 May 2006 15:55:11 +0000 (16:55 +0100)]
[PATCH] libata - fix bracketing and DMA oops

The upstream tree has the ATA_DFLAG_PIO bug fixed but does not have the
pass throuugh bug fix

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] libata: PIO 0
Alan Cox [Mon, 22 May 2006 15:52:06 +0000 (16:52 +0100)]
[PATCH] libata: PIO 0

Ensure the pio_mode is always setup. Don't do any setup on the controller b
just ensure the mode reporting is valid to avoid tons of special cases
in PATA driver code when mode switching on the fly.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] libata: minor fix for irq-pio merge
Albert Lee [Tue, 23 May 2006 10:12:30 +0000 (18:12 +0800)]
[PATCH] libata: minor fix for irq-pio merge

Minor fix to put the ATA_FLAG_NO_ATAPI flag back.

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'upstream-fixes' into upstream
Jeff Garzik [Wed, 24 May 2006 05:49:12 +0000 (01:49 -0400)]
Merge branch 'upstream-fixes' into upstream

Conflicts:

drivers/scsi/libata-core.c

17 years ago[PATCH] libata: add pio flush for via atapi (was: Re: TR: ASUS A8V Deluxe, x86_64)
Albert Lee [Mon, 22 May 2006 03:43:46 +0000 (11:43 +0800)]
[PATCH] libata: add pio flush for via atapi (was: Re: TR: ASUS A8V Deluxe, x86_64)

Backport the "pio flush" from the libata major update to 2.6.17 for via atapi.

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[libata sata_promise] Add PATA cable detection.
Jeff Garzik [Wed, 24 May 2006 05:43:25 +0000 (01:43 -0400)]
[libata sata_promise] Add PATA cable detection.

Original patch from Phillip Jordan <phillip.m.jordan@gmail.com>
Cleanups and fixes by me.

17 years ago[PATCH] sata_nv: Add MCP61 support
Andrew Chew [Thu, 20 Apr 2006 22:54:26 +0000 (15:54 -0700)]
[PATCH] sata_nv: Add MCP61 support

Added MCP61 SATA support to sata_nv.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'master' into upstream
Jeff Garzik [Wed, 24 May 2006 05:32:42 +0000 (01:32 -0400)]
Merge branch 'master' into upstream

17 years ago[PATCH] sky2: fix jumbo packet support
Stephen Hemminger [Mon, 22 May 2006 19:03:42 +0000 (12:03 -0700)]
[PATCH] sky2: fix jumbo packet support

The truncate threshold calculation to prevent receiver from getting stuck
was incorrect, and it didn't take into account the upper limit on bits
in the register so the jumbo packet support was broken.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[BRIDGE]: need to ref count the LLC sap
Stephen Hemminger [Tue, 23 May 2006 22:20:25 +0000 (15:20 -0700)]
[BRIDGE]: need to ref count the LLC sap

Bridge will OOPS on removal if other application has the SAP open.
The bridge SAP might be shared with other usages, so need
to do reference counting on module removal rather than explicit
close/delete.

Since packet might arrive after or during removal, need to clear
the receive function handle, so LLC only hands it to user (if any).

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: SNMP NAT: fix memleak in snmp_object_decode
Chris Wright [Tue, 23 May 2006 22:08:13 +0000 (15:08 -0700)]
[NETFILTER]: SNMP NAT: fix memleak in snmp_object_decode

If kmalloc fails, error path leaks data allocated from asn1_oid_decode().

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: H.323 helper: fix sequence extension parsing
Patrick McHardy [Tue, 23 May 2006 22:07:46 +0000 (15:07 -0700)]
[NETFILTER]: H.323 helper: fix sequence extension parsing

When parsing unknown sequence extensions the "son"-pointer points behind
the last known extension for this type, don't try to interpret it.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: H.323 helper: fix parser error propagation
Patrick McHardy [Tue, 23 May 2006 22:07:07 +0000 (15:07 -0700)]
[NETFILTER]: H.323 helper: fix parser error propagation

The condition "> H323_ERROR_STOP" can never be true since H323_ERROR_STOP
is positive and is the highest possible return code, while real errors are
negative, fix the checks. Also only abort on real errors in some spots
that were just interpreting any return value != 0 as error.

Fixes crashes caused by use of stale data after a parsing error occured:

BUG: unable to handle kernel paging request at virtual address bfffffff
 printing eip:
c01aa0f8
*pde = 1a801067
*pte = 00000000
Oops: 0000 [#1]
PREEMPT
Modules linked in: ip_nat_h323 ip_conntrack_h323 nfsd exportfs sch_sfq sch_red cls_fw sch_hfsc  xt_length ipt_owner xt_MARK iptable_mangle nfs lockd sunrpc pppoe pppoxx
CPU:    0
EIP:    0060:[<c01aa0f8>]    Not tainted VLI
EFLAGS: 00210646   (2.6.17-rc4 #8)
EIP is at memmove+0x19/0x22
eax: d77264e9   ebx: d77264e9   ecx: e88d9b17   edx: d77264e9
esi: bfffffff   edi: bfffffff   ebp: de6a7680   esp: c0349db8
ds: 007b   es: 007b   ss: 0068
Process asterisk (pid: 3765, threadinfo=c0349000 task=da068540)
Stack: <0>00000006 c0349e5e d77264e3 e09a2b4e e09a38a0 d7726052 d7726124 00000491
       00000006 00000006 00000006 00000491 de6a7680 d772601e d7726032 c0349f74
       e09a2dc2 00000006 c0349e5e 00000006 00000000 d76dda28 00000491 c0349f74
Call Trace:
 [<e09a2b4e>] mangle_contents+0x62/0xfe [ip_nat]
 [<e09a2dc2>] ip_nat_mangle_tcp_packet+0xa1/0x191 [ip_nat]
 [<e0a2712d>] set_addr+0x74/0x14c [ip_nat_h323]
 [<e0ad531e>] process_setup+0x11b/0x29e [ip_conntrack_h323]
 [<e0ad534f>] process_setup+0x14c/0x29e [ip_conntrack_h323]
 [<e0ad57bd>] process_q931+0x3c/0x142 [ip_conntrack_h323]
 [<e0ad5dff>] q931_help+0xe0/0x144 [ip_conntrack_h323]
...

Found by the PROTOS c07-h2250v4 testsuite.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoIB/ipath: deref correct pointer when using kernel SMA
Bryan O'Sullivan [Tue, 23 May 2006 18:32:38 +0000 (11:32 -0700)]
IB/ipath: deref correct pointer when using kernel SMA

At this point, the core QP structure hasn't been initialized, so what's
in there isn't valid.  Get the same information elsewhere.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: fix null deref during rdma ops
Bryan O'Sullivan [Tue, 23 May 2006 18:32:37 +0000 (11:32 -0700)]
IB/ipath: fix null deref during rdma ops

The problem was that node A's sending thread, which handles sending RDMA
read response data, would write the trigger word, the last packet would
be sent, node B would send a new RDMA read request, node A's interrupt
handler would initialize s_rdma_sge, then node A's sending thread would
update s_rdma_sge.  This didn't happen very often naturally but was more
frequent with 1 byte RDMA reads.  Rather than adding more locking or
increasing the QP structure size and copying sge data, I modified the
copy routine to update the pointers before writing the trigger word to
avoid the update race.

Signed-off-by: Ralph Campbell <ralphc@pathscale.com>
Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: register as IB device owner
Bryan O'Sullivan [Tue, 23 May 2006 18:32:36 +0000 (11:32 -0700)]
IB/ipath: register as IB device owner

This fixes an oops.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: enable PE800 receive interrupts on user ports
Bryan O'Sullivan [Tue, 23 May 2006 18:32:35 +0000 (11:32 -0700)]
IB/ipath: enable PE800 receive interrupts on user ports

Fixed so it works on the PE-800.  It had not previously been updated to
match PE-800 receive interrupt differences from HT-400.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: enable GPIO interrupt on HT-460
Bryan O'Sullivan [Tue, 23 May 2006 18:32:34 +0000 (11:32 -0700)]
IB/ipath: enable GPIO interrupt on HT-460

This is required for even semi-decent performance on OpenIB.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: fix NULL dereference during cleanup
Bryan O'Sullivan [Tue, 23 May 2006 18:32:33 +0000 (11:32 -0700)]
IB/ipath: fix NULL dereference during cleanup

Fix NULL deref due to pcidev being clobbered before dd->ipath_f_cleanup()
was called.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: replace uses of LIST_POISON
Bryan O'Sullivan [Tue, 23 May 2006 18:32:32 +0000 (11:32 -0700)]
IB/ipath: replace uses of LIST_POISON

Per Andrew's request.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: fix reporting of driver version to userspace
Bryan O'Sullivan [Tue, 23 May 2006 18:32:31 +0000 (11:32 -0700)]
IB/ipath: fix reporting of driver version to userspace

Fix the interface version that gets exported to userspace.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years agoIB/ipath: don't modify QP if changes fail
Bryan O'Sullivan [Tue, 23 May 2006 18:32:30 +0000 (11:32 -0700)]
IB/ipath: don't modify QP if changes fail

Make sure modify_qp won't modify the QP if any of the changes failed.

Signed-off-by: Bryan O'Sullivan <bos@pathscale.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>