15 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Tue, 20 Jun 2006 02:07:12 +0000]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (51 commits)
  [MIPS] Make timer interrupt frequency configurable from kconfig.
  [MIPS] Correct HAL2 Kconfig description
  [MIPS] Fix R4K cache macro names
  [MIPS] Add Missing R4K Cache Macros to IP27 & IP32
  [MIPS] Support for the RM9000-based Basler eXcite smart camera platform.
  [MIPS] Support for the R5500-based NEC EMMA2RH Mark-eins board
  [MIPS] Support SNI RM200C SNI in big endian mode and R5000 processors.
  [MIPS] SN: include asm/sn/types.h for nasid_t.
  [MIPS] Random fixes for sb1250
  [MIPS] Fix bcm1480 compile
  [MIPS] Remove support for NEC DDB5476.
  [MIPS] Remove support for NEC DDB5074.
  [MIPS] Cleanup memory managment initialization.
  [MIPS] SN: Declare bridge_pci_ops.
  [MIPS] Remove unused function alloc_pci_controller.
  [MIPS] IP27: Extract pci_ops into separate file.
  [MIPS] IP27: Use symbolic constants instead of magic numbers.
  [MIPS] vr41xx: remove unnecessay items from vr41xx/Kconfig.
  [MIPS] IP27: Cleanup N/M mode configuration.
  [MIPS] IP27: Throw away old unused hacks.
  ...

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Tue, 20 Jun 2006 02:01:59 +0000]
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (46 commits)
  IB/uverbs: Don't serialize with ib_uverbs_idr_mutex
  IB/mthca: Make all device methods truly reentrant
  IB/mthca: Fix memory leak on modify_qp error paths
  IB/uverbs: Factor out common idr code
  IB/uverbs: Don't decrement usecnt on error paths
  IB/uverbs: Release lock on error path
  IB/cm: Use address handle helpers
  IB/sa: Add ib_init_ah_from_path()
  IB: Add ib_init_ah_from_wc()
  IB/ucm: Get rid of duplicate P_Key parameter
  IB/srp: Factor out common request reset code
  IB/srp: Support SRP rev. 10 targets
  [SCSI] srp.h: Add I/O Class values
  IB/fmr: Use device's max_map_map_per_fmr attribute in FMR pool.
  IB/mthca: Fill in max_map_per_fmr device attribute
  IB/ipath: Add client reregister event generation
  IB/mthca: Add client reregister event generation
  IB: Move struct port_info from ipath to <rdma/ib_smi.h>
  IPoIB: Handle client reregister events
  IB: Add client reregister event type
  ...

15 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Tue, 20 Jun 2006 01:55:56 +0000]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (109 commits)
  [ETHTOOL]: Fix UFO typo
  [SCTP]: Fix persistent slowdown in sctp when a gap ack consumes rx buffer.
  [SCTP]: Send only 1 window update SACK per message.
  [SCTP]: Don't do CRC32C checksum over loopback.
  [SCTP] Reset rtt_in_progress for the chunk when processing its sack.
  [SCTP]: Reject sctp packets with broadcast addresses.
  [SCTP]: Limit association max_retrans setting in setsockopt.
  [PFKEYV2]: Fix inconsistent typing in struct sadb_x_kmprivate.
  [IPV6]: Sum real space for RTAs.
  [IRDA]: Use put_unaligned() in irlmp_do_discovery().
  [BRIDGE]: Add support for NETIF_F_HW_CSUM devices
  [NET]: Add NETIF_F_GEN_CSUM and NETIF_F_ALL_CSUM
  [TG3]: Convert to non-LLTX
  [TG3]: Remove unnecessary tx_lock
  [TCP]: Add tcp_slow_start_after_idle sysctl.
  [BNX2]: Update version and reldate
  [BNX2]: Use CPU native page size
  [BNX2]: Use compressed firmware
  [BNX2]: Add firmware decompression
  [BNX2]: Allow WoL settings on new 5708 chips
  ...

Manual fixup for conflict in drivers/net/tulip/winbond-840.c

15 years agoMerge branch 'i915fb' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/intelf...
Linus Torvalds [Tue, 20 Jun 2006 01:53:20 +0000]
Merge branch 'i915fb' of git://git./linux/kernel/git/airlied/intelfb-2.6

* 'i915fb' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/intelfb-2.6: (25 commits)
  intelfb: fixup clock calculation debugging.
  Removed hard coded EDID buffer size.
  intelfb: use regular modedb table instead of VESA
  intelfb: use firmware EDID for mode database
  Revert "intelfb driver -- use the regular modedb table instead of the VESA"
  intelfb: int option fix
  sync modesetting code with X.org
  intelfb: align with changes from my X driver.
  intelfb driver -- use the regular modedb table instead of the VESA
  Adds support for 256MB aperture on 945 chipsets to the intelfb driver
  intelfb -- uses stride alignment of 64 on the 9xx chipsets.
  intelfb: some cleanups for intelfbhw
  intelfb: fixup pitch calculation like X does
  intelfb: fixup p calculation
  This patch makes a needlessly global struct static.
  intelfb: add i945GM support
  intelfb: fixup whitespace..
  intelfb: add hw cursor support for i9xx
  intelfb: make i915 modeset
  intelfb: add support for i945G
  ...

15 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Tue, 20 Jun 2006 01:51:41 +0000]
Merge /pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] alpha-agp warning fix
  [AGPGART] uninorth-agp warning fixes
  [AGPGART] Remove pointless initialisation in intel-agp
  [AGPGART] Remove pointless code from agp_generic_create_gatt_table()

15 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
Linus Torvalds [Tue, 20 Jun 2006 01:51:21 +0000]
Merge /pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] sets nforce2 minimum PLL divider to 2.
  [CPUFREQ] Make powernow-k7 work on SMP kernels.
  [CPUFREQ] cpufreq core {d,}printk adjustments
  [CPUFREQ] dprintk adjustments to cpufreq-speedstep-centrino
  [CPUFREQ] dprintk adjustments to cpufreq-nforce2
  [CPUFREQ] Prepare powernow-k8 for future CPUs.
  [CPUFREQ] Make acpi-cpufreq 'sticky'.
  [CPUFREQ] Remove strange No-op from longrun.c
  [CPUFREQ] Remove more freq_table reinitialisations.
  [CPUFREQ] Fix another redundant initialisation in freq_table
  [CPUFREQ] Remove duplicate assignment in freq_table
  [CPUFREQ] CodingStyle nits in cpufreq_stats.c
  [CPUFREQ] Remove duplicate assignment from cpufreq-nforce2
  [CPUFREQ] Remove pointless reinitialisations in acpi-cpufreq
  [CPUFREQ] Remove pointless reinitialisation from powernow-k8
  [CPUFREQ] Remove redundant initialisation from longhaul.
  [CPUFREQ] Clean up longhaul's speed pretty-printer
  [CPUFREQ] Disambiguate loop indexes in powernow-k7
  [CPUFREQ] Typo in powernow-k8

15 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 20 Jun 2006 01:50:43 +0000]
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: (166 commits)
  [PATCH] net: au1000_eth: PHY framework conversion
  [PATCH] 3c5zz ethernet: fix section warnings
  [PATCH] smc ethernet: fix section mismatch warnings
  [PATCH] hp ethernet: fix section mismatches
  [PATCH] Section mismatch in drivers/net/ne.o during modpost
  [PATCH] e1000: prevent statistics from getting garbled during reset
  [PATCH] smc911x Kconfig fix
  [PATCH] forcedeth: new device ids
  [PATCH] forcedeth config: version
  [PATCH] forcedeth config: module parameters
  [PATCH] forcedeth config: diagnostics
  [PATCH] forcedeth config: move functions
  [PATCH] forcedeth config: statistics
  [PATCH] forcedeth config: csum
  [PATCH] forcedeth config: wol
  [PATCH] forcedeth config: phy
  [PATCH] forcedeth config: flow control
  [PATCH] forcedeth config: ring sizes
  [PATCH] forcedeth config: tso cleanup
  [DOC] Update bonding documentation with sysfs info
  ...

15 years agoAdd support for suspending and resuming the whole console subsystem
Linus Torvalds [Tue, 20 Jun 2006 01:16:01 +0000]
Add support for suspending and resuming the whole console subsystem

Trying to suspend/resume with console messages flying all around is
doomed to failure, when the devices that the messages are trying to
go to are being shut down.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years agoMake sure to re-enable SCI after an ACPI suspend
Linus Torvalds [Tue, 20 Jun 2006 01:05:09 +0000]
Make sure to re-enable SCI after an ACPI suspend

According to the ACPI spec, it should be enabled on return from suspend,
but bugs happen.  Apparently especially on the Apple Intel Macs.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years agoImprove SATA core suspend/resume
Linus Torvalds [Tue, 20 Jun 2006 01:01:27 +0000]
Improve SATA core suspend/resume

Doing a full ata_busy_sleep() seems to get suspend and resume working
fine on the Apple Mac Mini, at least.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>

15 years ago[MIPS] Make timer interrupt frequency configurable from kconfig.
Atsushi Nemoto [Mon, 19 Jun 2006 15:19:13 +0000]
[MIPS] Make timer interrupt frequency configurable from kconfig.

Make HZ configurable.  DECSTATION can select 128/256/1024 HZ, JAZZ can
only select 100 HZ, others can select 100/128/250/256/1000/1024 HZ if
not explicitly specified).  Also remove all mach-xxx/param.h files and
update all defconfigs according to current HZ value.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Correct HAL2 Kconfig description
Kumba [Sun, 18 Jun 2006 06:17:08 +0000]
[MIPS] Correct HAL2 Kconfig description

The current HAL2 Kconfig description indicates it is only used on SGI
Indy systems, however all members of the Indigo2 Family have this sound
card as well.  Plus a minor grammatical fix is included.

Signed-off-by: Joshua Kinard <kumba@gentoo.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Fix R4K cache macro names
Kumba [Sun, 18 Jun 2006 06:17:01 +0000]
[MIPS] Fix R4K cache macro names

Several machines have the R4K cache macro name spelled incorrectly.  Namely,
they have cpu_has_4kcache defined instead of cpu_has_4k_cache.

Signed-off-by: Joshua Kinard <kumba@gentoo.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Add Missing R4K Cache Macros to IP27 & IP32
Kumba [Sun, 18 Jun 2006 06:16:53 +0000]
[MIPS] Add Missing R4K Cache Macros to IP27 & IP32

Keeping in accordance with other machines, IP27 and IP32 lack a few
macros.  IP27 lacks cpu_has_4kex & cpu_has_4k_cache macros while IP32
lacks just the cpu_has_4k_cache macro.

Signed-off-by: Joshua Kinard <kumba@gentoo.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Support for the RM9000-based Basler eXcite smart camera platform.
Ralf Baechle [Sun, 18 Jun 2006 15:39:46 +0000]
[MIPS] Support for the RM9000-based Basler eXcite smart camera platform.

Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Support for the R5500-based NEC EMMA2RH Mark-eins board
dmitry pervushin [Sun, 21 May 2006 10:53:06 +0000]
[MIPS] Support for the R5500-based NEC EMMA2RH Mark-eins board

Signed-off-by: dmitry pervushin <dpervushin@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Support SNI RM200C SNI in big endian mode and R5000 processors.
Thomas Bogendoerfer [Tue, 13 Jun 2006 11:59:01 +0000]
[MIPS] Support SNI RM200C SNI in big endian mode and R5000 processors.

Added support for RM200C machines with big endian firmware
Added support for RM200-C40 (R5000 support)

Signed-off-by: Florian Lohoff <flo@rfc822.org>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] SN: include asm/sn/types.h for nasid_t.
Ralf Baechle [Sat, 17 Jun 2006 09:56:26 +0000]
[MIPS] SN: include asm/sn/types.h for nasid_t.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Random fixes for sb1250
Thiemo Seufer [Sun, 18 Jun 2006 04:23:47 +0000]
[MIPS] Random fixes for sb1250

Random improvements for sb1250: Silence compiler warnings, a bugfix for
the profiling code, and a comment typo.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Fix bcm1480 compile
Thiemo Seufer [Sun, 18 Jun 2006 04:17:54 +0000]
[MIPS] Fix bcm1480 compile

Fix compilation for bcm1480, a hpt is only available on sb1250/bcm112x.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove support for NEC DDB5476.
Ralf Baechle [Sun, 18 Jun 2006 04:28:38 +0000]
[MIPS] Remove support for NEC DDB5476.

As warned several times before.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove support for NEC DDB5074.
Ralf Baechle [Sun, 18 Jun 2006 03:58:57 +0000]
[MIPS] Remove support for NEC DDB5074.

As warned several times before.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Cleanup memory managment initialization.
Ralf Baechle [Sun, 18 Jun 2006 00:32:22 +0000]
[MIPS] Cleanup memory managment initialization.

Historically plat_mem_setup did the entire platform initialization.  This
was rather impractical because it meant plat_mem_setup had to get away
without any kind of memory allocator.  To keep old code from breaking
plat_setup was just renamed to plat_setup and a second platform
initialization hook for anything else was introduced.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] SN: Declare bridge_pci_ops.
Ralf Baechle [Sat, 17 Jun 2006 13:55:40 +0000]
[MIPS] SN: Declare bridge_pci_ops.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove unused function alloc_pci_controller.
Ralf Baechle [Sat, 17 Jun 2006 13:54:32 +0000]
[MIPS] Remove unused function alloc_pci_controller.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Extract pci_ops into separate file.
Ralf Baechle [Fri, 16 Jun 2006 23:55:45 +0000]
[MIPS] IP27: Extract pci_ops into separate file.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Use symbolic constants instead of magic numbers.
Ralf Baechle [Fri, 16 Jun 2006 23:46:27 +0000]
[MIPS] IP27: Use symbolic constants instead of magic numbers.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] vr41xx: remove unnecessay items from vr41xx/Kconfig.
Yoichi Yuasa [Thu, 15 Jun 2006 14:29:37 +0000]
[MIPS] vr41xx: remove unnecessay items from vr41xx/Kconfig.

Remove unnecessary items from vr41xx/Kconfig.  SYS_HA_CPU_VR41XX has
already been selected by MACH_VR41XX.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Cleanup N/M mode configuration.
Ralf Baechle [Wed, 14 Jun 2006 07:10:35 +0000]
[MIPS] IP27: Cleanup N/M mode configuration.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Throw away old unused hacks.
Ralf Baechle [Wed, 14 Jun 2006 07:01:30 +0000]
[MIPS] IP27: Throw away old unused hacks.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Drop 0 definition for kern_addr_valid
Ralf Baechle [Mon, 12 Jun 2006 11:20:09 +0000]
[MIPS] Drop 0 definition for kern_addr_valid

kern_addr_valid is currently only being used in kmem_ptr_validate which
is making some vague attempt at verfying the validity of an address.
Only IA-64, PARISC and x86-64 actually make some actual effort to verify
the validity of the pointer.  Most architecture definitions of
kern_addr_valid() just define it as 1; the Alpha and CONFIG_DISCONTIGMEM
on i386 and MIPS even as 0; the 0-definition will result in
kmem_ptr_validate always failing which in turn will cause d_validate to
always fail.  d_validate's only two users are smbfs and ncpfs, so the
0 definition ended breaking those ...

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Consolidate definitions of pfn_valid in one file.
Ralf Baechle [Mon, 12 Jun 2006 08:13:56 +0000]
[MIPS] Consolidate definitions of pfn_valid in one file.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] APM emu support
Rodolfo Giometti [Mon, 5 Jun 2006 15:43:10 +0000]
[MIPS] APM emu support

Signed-off-by: Rodolfo Giometti <giometti@linux.it>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] SN: Rename SGI_SN0_N_MODE -> SGI_SN_N_MODE.
Ralf Baechle [Sun, 11 Jun 2006 23:55:14 +0000]
[MIPS] SN: Rename SGI_SN0_N_MODE -> SGI_SN_N_MODE.

It's not SN0-specific.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] SN: Move FRU header one level up; it is not SN0-specific.
Ralf Baechle [Fri, 9 Jun 2006 23:37:20 +0000]
[MIPS] SN: Move FRU header one level up; it is not SN0-specific.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Cleanup ARCH_DISCONTIGMEM_ENABLE and NUMA configuration.
Ralf Baechle [Sun, 11 Jun 2006 22:03:08 +0000]
[MIPS] Cleanup ARCH_DISCONTIGMEM_ENABLE and NUMA configuration.

IP27 configuration isn't the only NUMA system - it just happens to be
the currently only supported MIPS NUMA system.  So move the necessary
options back into the main MIPS Kconfig file.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Remove #if 0'ed code.
Ralf Baechle [Wed, 7 Jun 2006 19:13:20 +0000]
[MIPS] IP27: Remove #if 0'ed code.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Nuke leftovers of _STANDALONE
Ralf Baechle [Wed, 7 Jun 2006 19:10:06 +0000]
[MIPS] IP27: Nuke leftovers of _STANDALONE

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Remove leftovers of sable support.
Ralf Baechle [Wed, 7 Jun 2006 19:07:29 +0000]
[MIPS] IP27: Remove leftovers of sable support.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Nuke last leftovers from FRUTEST
Ralf Baechle [Wed, 7 Jun 2006 19:04:23 +0000]
[MIPS] IP27: Nuke last leftovers from FRUTEST

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Nuke last leftovers of CONFIG_SGI_IO.
Ralf Baechle [Wed, 7 Jun 2006 19:02:21 +0000]
[MIPS] IP27: Nuke last leftovers of CONFIG_SGI_IO.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] C99-ify struct resource initialization.
Ralf Baechle [Sun, 4 Jun 2006 22:14:05 +0000]
[MIPS] C99-ify struct resource initialization.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove duplicate declarations from Alchemy code.
Ralf Baechle [Sat, 3 Jun 2006 23:55:21 +0000]
[MIPS] Remove duplicate declarations from Alchemy code.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Cleanup __emt() a bit.
Ralf Baechle [Sat, 3 Jun 2006 20:59:51 +0000]
[MIPS] Cleanup __emt() a bit.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove unused definitions from addrspace.h.
Yoichi Yuasa [Wed, 31 May 2006 07:00:05 +0000]
[MIPS] Remove unused definitions from addrspace.h.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] arch/mips/au1000/time.c cleanup
Sergei Shtylyov [Sat, 27 May 2006 20:04:01 +0000]
[MIPS] arch/mips/au1000/time.c cleanup

Mark au1xxx_timer_setup() __init, just because it is. Get rid of
unneeded extern's (note that (*do_gettimeoffset)() is already declared by
<asm/time.c>) and an unused variable. Kill some whitespace...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove unused instances of prom_build_cpu_map.
Ralf Baechle [Thu, 18 May 2006 11:38:47 +0000]
[MIPS] Remove unused instances of prom_build_cpu_map.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Qemu system shutdown support
Thiemo Seufer [Mon, 15 May 2006 17:59:34 +0000]
[MIPS] Qemu system shutdown support

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Unify mips_fpu_soft_struct and mips_fpu_hard_structs.
Atsushi Nemoto [Mon, 15 May 2006 16:26:03 +0000]
[MIPS] Unify mips_fpu_soft_struct and mips_fpu_hard_structs.

The struct mips_fpu_soft_struct and mips_fpu_hard_struct are
completely same now and the kernel fpu emulator assumes that.  This
patch unifies them to mips_fpu_struct and get rid of mips_fpu_union.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Remove prototype for non-existing function.
Ralf Baechle [Mon, 15 May 2006 14:08:22 +0000]
[MIPS] Remove prototype for non-existing function.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Wind River 4KC PPMC Eval Board Support
Mark.Zhan [Sat, 6 May 2006 09:04:20 +0000]
[MIPS] Wind River 4KC PPMC Eval Board Support

Support for the GT-64120-based Wind River 4KC PPMC Evaluation board.

Signed-off-by: Rongkai.Zhan <Rongkai.zhan@windriver.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Au1xxx: board specific irq code cleanup
Herbert Valerio Riedel [Sun, 7 May 2006 13:48:25 +0000]
[MIPS] Au1xxx: board specific irq code cleanup

Convert sizeof/sizeof use to use of ARRAY_SIZE macro, and annotate
irqmap structures as __initdata.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP27: Fix collision with hardcoded interrupt number.
Ralf Baechle [Fri, 16 Jun 2006 15:10:49 +0000]
[MIPS] IP27: Fix collision with hardcoded interrupt number.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Fix futex_atomic_op_inuser.
Atsushi Nemoto [Sun, 11 Jun 2006 14:25:43 +0000]
[MIPS] Fix futex_atomic_op_inuser.

I found that NPTL's pthread_cond_signal() does not work properly on
kernels compiled by gcc 4.1.x.  I suppose inline asm for
__futex_atomic_op() was wrong.  I suppose:

1. "=&r" constraint should be used for oldval.
2. Instead of "r" (uaddr), "=R" (*uaddr) for output and "R" (*uaddr)
   for input should be used.
3. "memory" should be added to the clobber list.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[PATCH] Fix BCM1480 doubled process accounting times.
[MIPS] James E Wilson [Mon, 27 Feb 2006 23:04:38 +0000]
[PATCH] Fix BCM1480 doubled process accounting times.

Running a UP kernel on a bcm1480 board, I get nonsensical timing
results, like this:
release@unknown:~/tmp$ time ./a.out
real    0m22.906s
user    0m45.792s
sys     0m0.010s
According to my watch, this program took 23 seconds to run, so the real
time clock is OK.  It is process accounting that is broken.

I tracked this down to a problem with the function
bcm1480_timer_interrupt in the file sibyte/bcm1480/time.c.  This
function calls ll_timer_interrupt for cpu0, and ll_local_timer_interrupt
for all cpus.  However, both of these functions do process accounting.
Thus processes running on cpu0 end up with doubled times.  This is very
obvious in a UP kernel where all processes run on cpu0.

The correct way to do this is to only call ll_local_timer interrupt if
this is not cpu0.  This can be seen in the mips-board/generic/time.c
file, and also in the sibyte/sb1250/time.c file, both of which handle
this correctly.  I fixed the bcm1480/time.c file by copying over the
correct code from the sb1250/time.c file.

With this fix, I now get sensible results.
release@unknown:~/tmp$ time ./a.out
real    0m22.903s
user    0m22.894s
sys     0m0.006s

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Mark PNX8550 support broken.
Ralf Baechle [Wed, 7 Jun 2006 14:24:44 +0000]
[MIPS] Mark PNX8550 support broken.

Broken in too many way for me to fix it for 2.6.17.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Fix optimization for size build.
Ralf Baechle [Wed, 7 Jun 2006 12:25:37 +0000]
[MIPS] Fix optimization for size build.

It took a while longer than on other architectures but gcc has finally
started to strike us as well ...

This also fixes the damage by 6edfba1b33c701108717f4e036320fc39abe1912.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] IP22: Fix ISA driver builds if CONFIG_EISA is selected.
Ralf Baechle [Wed, 7 Jun 2006 11:53:17 +0000]
[MIPS] IP22: Fix ISA driver builds if CONFIG_EISA is selected.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Cobalt: Fix undefined reference to disable_early_printk.
Yoichi Yuasa [Wed, 7 Jun 2006 00:53:34 +0000]
[MIPS] Cobalt: Fix undefined reference to disable_early_printk.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Fix fpu_save_double on 64-bit.
Atsushi Nemoto [Mon, 22 May 2006 15:47:41 +0000]
[MIPS] Fix fpu_save_double on 64-bit.

> Without this fix, _save_fp() in 64-bit kernel is seriously broken.
>
ffffffff8010bec0 <_save_fp>:
ffffffff8010bec0:       400d6000        mfc0    t1,c0_status
ffffffff8010bec4:       000c7140        sll     t2,t0,0x5
ffffffff8010bec8:       05c10011        bgez    t2,ffffffff8010bf10 <_save_fp+0x50>
ffffffff8010becc:       00000000        nop
ffffffff8010bed0:       f4810328        sdc1    $f1,808(a0)
> ...

Fix register usage in fpu_save_double() and make fpu_restore_double()
more symmetric with fpu_save_double().

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years ago[MIPS] Malta: Handle byteswapping hardare bug in big endian mode.
Elizabeth Oldham [Tue, 6 Jun 2006 09:57:09 +0000]
[MIPS] Malta: Handle byteswapping hardare bug in big endian mode.

The SOC-it system controller running in big endian mode might forget
byteswapping when DMAing to the last word of physical memory.  Fixed by
ignoring the last page of memory.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

15 years agointelfb: fixup clock calculation debugging.
Dave Airlie [Sun, 18 Jun 2006 06:12:27 +0000]
intelfb: fixup clock calculation debugging.

The debugging code for pll clocks was wrong and causing div by 0.

Signed-off-by: Dave Airlie <airlied@linux.ie>

15 years ago[ETHTOOL]: Fix UFO typo
Herbert Xu [Sun, 18 Jun 2006 06:00:20 +0000]
[ETHTOOL]: Fix UFO typo

The function ethtool_get_ufo was referring to ETHTOOL_GTSO instead of
ETHTOOL_GUFO.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP]: Fix persistent slowdown in sctp when a gap ack consumes rx buffer.
Neil Horman [Sun, 18 Jun 2006 05:59:03 +0000]
[SCTP]: Fix persistent slowdown in sctp when a gap ack consumes rx buffer.

In the event that our entire receive buffer is full with a series of
chunks that represent a single gap-ack, and then we accept a chunk
(or chunks) that fill in the gap between the ctsn and the first gap,
we renege chunks from the end of the buffer, which effectively does
nothing but move our gap to the end of our received tsn stream. This
does little but move our missing tsns down stream a little, and, if the
sender is sending sufficiently large retransmit frames, the result is a
perpetual slowdown which can never be recovered from, since the only
chunk that can be accepted to allow progress in the tsn stream necessitates
that a new gap be created to make room for it. This leads to a constant
need for retransmits, and subsequent receiver stalls. The fix I've come up
with is to deliver the frame without reneging if we have a full receive
buffer and the receiving sockets sk_receive_queue is empty(indicating that
the receive buffer is being blocked by a missing tsn).

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP]: Send only 1 window update SACK per message.
Tsutomu Fujii [Sun, 18 Jun 2006 05:58:28 +0000]
[SCTP]: Send only 1 window update SACK per message.

Right now, every time we increase our rwnd by more then MTU bytes, we
trigger a SACK.  When processing large messages, this will generate a
SACK for almost every other SCTP fragment. However since we are freeing
the entire message at the same time, we might as well collapse the SACK
generation to 1.

Signed-off-by: Tsutomu Fujii <t-fujii@nb.jp.nec.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP]: Don't do CRC32C checksum over loopback.
Sridhar Samudrala [Sun, 18 Jun 2006 05:57:28 +0000]
[SCTP]: Don't do CRC32C checksum over loopback.

Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP] Reset rtt_in_progress for the chunk when processing its sack.
Vlad Yasevich [Sun, 18 Jun 2006 05:56:08 +0000]
[SCTP] Reset rtt_in_progress for the chunk when processing its sack.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP]: Reject sctp packets with broadcast addresses.
Vlad Yasevich [Sun, 18 Jun 2006 05:55:35 +0000]
[SCTP]: Reject sctp packets with broadcast addresses.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[SCTP]: Limit association max_retrans setting in setsockopt.
Vlad Yasevich [Sun, 18 Jun 2006 05:54:51 +0000]
[SCTP]: Limit association max_retrans setting in setsockopt.

When using ASSOCINFO socket option, we need to limit the number of
maximum association retransmissions to be no greater than the sum
of all the path retransmissions. This is specified in Section 7.1.2
of the SCTP socket API draft.
However, we only do this if the association has multiple paths. If
there is only one path, the protocol stack will use the
assoc_max_retrans setting when trying to retransmit packets.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[PFKEYV2]: Fix inconsistent typing in struct sadb_x_kmprivate.
Tushar Gohad [Sun, 18 Jun 2006 05:54:03 +0000]
[PFKEYV2]: Fix inconsistent typing in struct sadb_x_kmprivate.

Signed-off-by: Tushar Gohad <tgohad@mvista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IPV6]: Sum real space for RTAs.
YOSHIFUJI Hideaki [Sun, 18 Jun 2006 05:48:48 +0000]
[IPV6]: Sum real space for RTAs.

This patch fixes RTNLGRP_IPV6_IFINFO netlink notifications.  Issue
pointed out by Patrick McHardy <kaber@trash.net>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years agoMerge branch 'master' into upstream
Jeff Garzik [Sun, 18 Jun 2006 05:22:42 +0000]
Merge branch 'master' into upstream

15 years ago[IRDA]: Use put_unaligned() in irlmp_do_discovery().
David S. Miller [Sun, 18 Jun 2006 05:16:13 +0000]
[IRDA]: Use put_unaligned() in irlmp_do_discovery().

irda_device_info->hints[] is byte aligned but is being
accessed as a u16

Based upon a patch by Luke Yang <luke.adi@gmail.com>.

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

15 years ago[BRIDGE]: Add support for NETIF_F_HW_CSUM devices
Herbert Xu [Sun, 18 Jun 2006 05:06:45 +0000]
[BRIDGE]: Add support for NETIF_F_HW_CSUM devices

As it is the bridge will only ever declare NETIF_F_IP_CSUM even if all
its constituent devices support NETIF_F_HW_CSUM.  This patch fixes
this by supporting the first one out of NETIF_F_NO_CSUM,
NETIF_F_HW_CSUM, and NETIF_F_IP_CSUM that is supported by all
constituent devices.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: Add NETIF_F_GEN_CSUM and NETIF_F_ALL_CSUM
Herbert Xu [Sun, 18 Jun 2006 05:06:05 +0000]
[NET]: Add NETIF_F_GEN_CSUM and NETIF_F_ALL_CSUM

The current stack treats NETIF_F_HW_CSUM and NETIF_F_NO_CSUM
identically so we test for them in quite a few places.  For the sake
of brevity, I'm adding the macro NETIF_F_GEN_CSUM for these two.  We
also test the disjunct of NETIF_F_IP_CSUM and the other two in various
places, for that purpose I've added NETIF_F_ALL_CSUM.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TG3]: Convert to non-LLTX
Michael Chan [Sun, 18 Jun 2006 04:58:45 +0000]
[TG3]: Convert to non-LLTX

Herbert Xu pointed out that it is unsafe to call netif_tx_disable()
from LLTX drivers because it uses dev->xmit_lock to synchronize
whereas LLTX drivers use private locks.

Convert tg3 to non-LLTX to fix this issue. tg3 is a lockless driver
where hard_start_xmit and tx completion handling can run concurrently
under normal conditions. A tx_lock is only needed to prevent
netif_stop_queue and netif_wake_queue race condtions when the queue
is full.

So whether we use LLTX or non-LLTX, it makes practically no
difference.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TG3]: Remove unnecessary tx_lock
Michael Chan [Sun, 18 Jun 2006 04:55:55 +0000]
[TG3]: Remove unnecessary tx_lock

Remove tx_lock where it is unnecessary. tg3 runs lockless and so it
requires interrupts to be disabled and sync'ed, netif_queue and NAPI
poll to be stopped before the device can be reconfigured. After
stopping everything, it is no longer necessary to get the tx_lock.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TCP]: Add tcp_slow_start_after_idle sysctl.
David S. Miller [Wed, 14 Jun 2006 05:33:04 +0000]
[TCP]: Add tcp_slow_start_after_idle sysctl.

A lot of people have asked for a way to disable tcp_cwnd_restart(),
and it seems reasonable to add a sysctl to do that.

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

15 years ago[BNX2]: Update version and reldate
Michael Chan [Tue, 13 Jun 2006 22:04:12 +0000]
[BNX2]: Update version and reldate

Update driver version to 1.4.42.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Use CPU native page size
Michael Chan [Tue, 13 Jun 2006 22:03:47 +0000]
[BNX2]: Use CPU native page size

Use CPU native page size to determine various ring sizes. This allows
order-0 memory allocations on all systems.

Added check to limit the page size to 16K since that's the maximum rx
ring size that will be used. This will prevent using unnecessarily
large page sizes on some architectures with large page sizes.
[Suggested by David Miller]

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Use compressed firmware
Michael Chan [Tue, 13 Jun 2006 05:22:17 +0000]
[BNX2]: Use compressed firmware

Change bnx2_fw.h to use compressed text for all CPU images.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Add firmware decompression
Michael Chan [Tue, 13 Jun 2006 05:21:25 +0000]
[BNX2]: Add firmware decompression

Add functions to decompress firmware before loading to the internal
CPUs. Compressing the firmware reduces the driver size significantly.

Added file name length sanity check in the gzip header to prevent
going past the end of buffer [suggested by DaveM].

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Allow WoL settings on new 5708 chips
Michael Chan [Tue, 13 Jun 2006 05:16:43 +0000]
[BNX2]: Allow WoL settings on new 5708 chips

Allow WOL settings on 5708 B2 and newer chips that have the problem
fixed.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Add an rx drop counter
Michael Chan [Tue, 13 Jun 2006 05:16:13 +0000]
[BNX2]: Add an rx drop counter

Add a counter for packets dropped by firmware.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TCP] Westwood: reset RTT min after FRTO
Luca De Cicco [Mon, 12 Jun 2006 06:02:19 +0000]
[TCP] Westwood: reset RTT min after FRTO

RTT_min is updated each time a timeout event occurs
in order to cope with hard handovers in wireless scenarios such as UMTS.

Signed-off-by: Luca De Cicco <ldecicco@gmail.com>
Signed-off-by: Stephen Hemminger <shemminger@dxpl.pdx.osdl.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TCP] Westwood: bandwidth filter startup
Luca De Cicco [Mon, 12 Jun 2006 06:01:59 +0000]
[TCP] Westwood: bandwidth filter startup

The bandwidth estimate filter is now initialized with the first
sample in order to have better performances in the case of small
file transfers.

Signed-off-by: Luca De Cicco <ldecicco@gmail.com>
Signed-off-by: Stephen Hemminger <shemminger@dxpl.pdx.osdl.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TCP] Westwood: comment fixes
Luca De Cicco [Mon, 12 Jun 2006 06:01:39 +0000]
[TCP] Westwood: comment fixes

Cleanup some comments and add more references

Signed-off-by: Luca De Cicco <ldecicco@gmail.com>
Signed-off-by: Stephen Hemminger <shemminger@dxpl.pdx.osdl.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[TCP] Westwood: fix first sample
Stephen Hemminger [Mon, 12 Jun 2006 06:01:02 +0000]
[TCP] Westwood: fix first sample

Need to update send sequence number tracking after first ack.
Rework of patch from Luca De Cicco.

Signed-off-by: Stephen Hemminger <shemminger@dxpl.pdx.osdl.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: net.ipv4.ip_autoconfig sysctl removal
Stephen Hemminger [Mon, 12 Jun 2006 04:20:38 +0000]
[NET]: net.ipv4.ip_autoconfig sysctl removal

The sysctl net.ipv4.ip_autoconfig is a legacy value that is not used.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[BNX2]: Endian fixes.
Alexey Dobriyan [Mon, 12 Jun 2006 03:57:17 +0000]
[BNX2]: Endian fixes.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IRDA]: irda-usb.c: STIR421x cleanups
Nick Fedchik [Mon, 12 Jun 2006 03:56:02 +0000]
[IRDA]: irda-usb.c: STIR421x cleanups

This cleans the STIR421x part of the irda-usb code. We also no longer
try to load all existing firmwares but only the matching one
(according to the USB id we get from the dongle).

Signed-off-by: Nick Fedchik <nfedchik@atlantic-link.com.ua>
Signed-off-by: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[IPX]: Endian bug in ipxrtr_route_packet()
Alexey Dobriyan [Sun, 11 Jun 2006 01:05:35 +0000]
[IPX]: Endian bug in ipxrtr_route_packet()

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: Warn in __skb_trim if skb is paged
Herbert Xu [Fri, 9 Jun 2006 23:13:38 +0000]
[NET]: Warn in __skb_trim if skb is paged

It's better to warn and fail rather than rarely triggering BUG on paths
that incorrectly call skb_trim/__skb_trim on a non-linear skb.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: skb_trim audit
Herbert Xu [Fri, 9 Jun 2006 23:13:01 +0000]
[NET]: skb_trim audit

I found a few more spots where pskb_trim_rcsum could be used but were not.
This patch changes them to use it.

Also, sk_filter can get paged skb data.  Therefore we must use pskb_trim
instead of skb_trim.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET] ppp: Remove unnecessary pskb_may_pull
Herbert Xu [Fri, 9 Jun 2006 23:11:27 +0000]
[NET] ppp: Remove unnecessary pskb_may_pull

In ppp_receive_nonmp_frame, we call pskb_may_pull(skb, skb->len) if the
tailroom is >= 124.  This is pointless because this pskb_may_pull is only
needed if the skb is non-linear.  However, if it is non-linear then the
tailroom would be zero.

So it can be safely removed.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: Clean up skb_linearize
Herbert Xu [Fri, 9 Jun 2006 23:10:40 +0000]
[NET]: Clean up skb_linearize

The linearisation operation doesn't need to be super-optimised.  So we can
replace __skb_linearize with __pskb_pull_tail which does the same thing but
is more general.

Also, most users of skb_linearize end up testing whether the skb is linear
or not so it helps to make skb_linearize do just that.

Some callers of skb_linearize also use it to copy cloned data, so it's
useful to have a new function skb_linearize_cow to copy the data if it's
either non-linear or cloned.

Last but not least, I've removed the gfp argument since nobody uses it
anymore.  If it's ever needed we can easily add it back.

Misc bugs fixed by this patch:

* via-velocity error handling (also, no SG => no frags)

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NET]: Add netif_tx_lock
Herbert Xu [Fri, 9 Jun 2006 19:20:56 +0000]
[NET]: Add netif_tx_lock

Various drivers use xmit_lock internally to synchronise with their
transmission routines.  They do so without setting xmit_lock_owner.
This is fine as long as netpoll is not in use.

With netpoll it is possible for deadlocks to occur if xmit_lock_owner
isn't set.  This is because if a printk occurs while xmit_lock is held
and xmit_lock_owner is not set can cause netpoll to attempt to take
xmit_lock recursively.

While it is possible to resolve this by getting netpoll to use
trylock, it is suboptimal because netpoll's sole objective is to
maximise the chance of getting the printk out on the wire.  So
delaying or dropping the message is to be avoided as much as possible.

So the only alternative is to always set xmit_lock_owner.  The
following patch does this by introducing the netif_tx_lock family of
functions that take care of setting/unsetting xmit_lock_owner.

I renamed xmit_lock to _xmit_lock to indicate that it should not be
used directly.  I didn't provide irq versions of the netif_tx_lock
functions since xmit_lock is meant to be a BH-disabling lock.

This is pretty much a straight text substitution except for a small
bug fix in winbond.  It currently uses
netif_stop_queue/spin_unlock_wait to stop transmission.  This is
unsafe as an IRQ can potentially wake up the queue.  So it is safer to
use netif_tx_disable.

The hamradio bits used spin_lock_irq but it is unnecessary as
xmit_lock must never be taken in an IRQ handler.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NETFILTER]: hashlimit match: fix random initialization
Patrick McHardy [Fri, 9 Jun 2006 19:18:47 +0000]
[NETFILTER]: hashlimit match: fix random initialization

hashlimit does:

        if (!ht->rnd)
                get_random_bytes(&ht->rnd, 4);

ignoring that 0 is also a valid random number.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NETFILTER]: recent match: missing refcnt initialization
Patrick McHardy [Fri, 9 Jun 2006 19:18:17 +0000]
[NETFILTER]: recent match: missing refcnt initialization

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

15 years ago[NETFILTER]: recent match: fix "sleeping function called from invalid context"
Patrick McHardy [Fri, 9 Jun 2006 19:17:41 +0000]
[NETFILTER]: recent match: fix "sleeping function called from invalid context"

create_proc_entry must not be called with locks held. Use a mutex
instead to protect data only changed in user context.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>