GitHub/LineageOS/G12/android_kernel_amlogic_linux-4.9.git
17 years agospidernet: separate hardware state from driver state.
Linas Vepstas [Tue, 20 Feb 2007 22:40:06 +0000 (16:40 -0600)]
spidernet: separate hardware state from driver state.

This patch separates the hardware descriptor state from the
driver descriptor state, per (old) suggestion from Ben Herrenschmidt.
This compiles and boots and seems to work.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: move medium variable into card struct
Jens Osterkamp [Tue, 20 Feb 2007 22:39:13 +0000 (16:39 -0600)]
spidernet: move medium variable into card struct

This moves the medium variable into the spidernet card structure.
It renames the GMII_ variables to BCM54XX specific ones.

Signed-off-by: Jens Osterkamp <jens@de.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: remove txram full logging
Ishizaki Kou [Tue, 20 Feb 2007 22:37:42 +0000 (16:37 -0600)]
spidernet: remove txram full logging

This patches removes logging for SPIDER_NET_GTMFLLINT interrupts.
Since the interrupts are not irregular, and they happen frequently
when using 100Mbps network switches.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: spidernet: add support for Celleb
Kou Ishizaki [Tue, 20 Feb 2007 22:36:14 +0000 (16:36 -0600)]
spidernet: spidernet: add support for Celleb

This patch adds or changes some HW specific settings for spider_net on
Celleb.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: load firmware when open
Kou Ishizaki [Tue, 20 Feb 2007 22:34:50 +0000 (16:34 -0600)]
spidernet: load firmware when open

This patch moves calling init_firmware() from spider_net_probe() to
spider_net_open() so as to use the driver by built-in.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: autoneg support for Celleb
Kou Ishizaki [Tue, 20 Feb 2007 22:33:41 +0000 (16:33 -0600)]
spidernet: autoneg support for Celleb

Add auto negotiation support for Celleb.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: compile break.
Linas Vepstas [Tue, 20 Feb 2007 22:32:00 +0000 (16:32 -0600)]
spidernet: compile break.

As of 2.6.20-git4, the spider_net driver does not compile.
This appears to be due to some archaic usage involving kobjects.

It also fixes a nasty double-free during ifdown of the interface.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosungem_phy: support bcm5461 phy, autoneg.
Jens Osterkamp [Tue, 20 Feb 2007 22:30:50 +0000 (16:30 -0600)]
sungem_phy: support bcm5461 phy, autoneg.

This version moves the medium variable to the card specific structure and
changes the GMII_* to BCM54XX_* #defines.

This patch adds improved version of enable_fiber for both the 5421 and
the 5461 phy. It is now possible to specify with these wether you want
autonegotiation or not. This is needed for bladecenter switches where
some expect autonegotiation and some dont seem to like this at all.
Depending on this flag it sets phy->autoneg accordingly for the fiber mode.

More importantly it implements proper read_link and poll_link functions
for both phys which can handle both copper and fiber mode by determining
the medium first and then branching to the required functions. For fiber
they all work fine, for copper they are not tested but return the result
of the genmii_* function anyway which is supposed to work.

The patch moves the genmii_* functions around to avoid foreward declarations.

Signed-off-by: Jens Osterkamp <jens@de.ibm.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: fix checksum feature in mcp65
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:44 +0000 (03:34 -0500)]
forcedeth: fix checksum feature in mcp65

This patch removes checksum offload feature in mcp65 chipsets as they
are not supported in hw.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: disable msix
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:40 +0000 (03:34 -0500)]
forcedeth: disable msix

There seems to be an issue when both MSI-X is enabled and NAPI is
configured. This patch disables MSI-X until the issue is root caused.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: fixed missing call in napi poll
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:30 +0000 (03:34 -0500)]
forcedeth: fixed missing call in napi poll

The napi poll routine was missing the call to the optimized rx process
routine. This patch adds the missing call for the optimized path.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[netdrvr] tc35815: fix obvious bugs
Jeff Garzik [Sat, 24 Feb 2007 22:02:16 +0000 (17:02 -0500)]
[netdrvr] tc35815: fix obvious bugs

* clear_page() use is wrong.  We might have multiple pages.
  Use memset() instead.
* Call pci_unregister_driver() in module exit.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[MIPS] Make SMTC_IDLE_HOOK_DEBUG a proper option in Kconfig.debug.
Ralf Baechle [Mon, 26 Feb 2007 20:46:34 +0000 (20:46 +0000)]
[MIPS] Make SMTC_IDLE_HOOK_DEBUG a proper option in Kconfig.debug.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix foobar in wiring up compat_sys_epoll_pwait syscall.
Ralf Baechle [Sat, 24 Feb 2007 21:15:11 +0000 (21:15 +0000)]
[MIPS] Fix foobar in wiring up compat_sys_epoll_pwait syscall.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Always fixup unaligned accesses in kernel mode.
Ralf Baechle [Sat, 24 Feb 2007 21:04:04 +0000 (21:04 +0000)]
[MIPS] Always fixup unaligned accesses in kernel mode.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix dma_sync_*_for_device() functions
Thomas Bogendoerfer [Fri, 23 Feb 2007 18:58:48 +0000 (19:58 +0100)]
[MIPS] Fix dma_sync_*_for_device() functions

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Remove unreferenced _IOC_SLMASK macro in ioctl.h.
Robert P. J. Day [Sat, 24 Feb 2007 11:17:09 +0000 (06:17 -0500)]
[MIPS] Remove unreferenced _IOC_SLMASK macro in ioctl.h.

Delete the definition of the apparently unreferenced macro _IOC_SLMASK.

Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SNI: MIPS_CPU_IRQ_BASE cleanup
Thomas Bogendoerfer [Fri, 23 Feb 2007 20:39:38 +0000 (21:39 +0100)]
[MIPS] SNI: MIPS_CPU_IRQ_BASE cleanup

Use MIPS_CPU_IRQ_BASE instead of own define.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] RTLX: Delete multiple definition of ret shaddowing each other.
Ralf Baechle [Fri, 23 Feb 2007 14:12:32 +0000 (14:12 +0000)]
[MIPS] RTLX: Delete multiple definition of ret shaddowing each other.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] RTLX, VPE: Make open actually atomic.
Ralf Baechle [Fri, 23 Feb 2007 13:40:45 +0000 (13:40 +0000)]
[MIPS] RTLX, VPE: Make open actually atomic.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] excite: Set serial driver iotype to UPIO_RM9000
Thomas Koeller [Fri, 23 Feb 2007 00:39:41 +0000 (01:39 +0100)]
[MIPS] excite: Set serial driver iotype to UPIO_RM9000

Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] excite: Rename CONFIG option
Thomas Koeller [Fri, 23 Feb 2007 00:40:34 +0000 (01:40 +0100)]
[MIPS] excite: Rename CONFIG option

This change is purely cosmetical.

Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Mark pcibios_fixup_device_resources() as __devinit
Atsushi Nemoto [Thu, 22 Feb 2007 16:13:17 +0000 (01:13 +0900)]
[MIPS] Mark pcibios_fixup_device_resources() as __devinit

pcibios_fixup_device_resources() is called by pcibios_fixup_bus() which is
marked as __devinit.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Kill redundant EXTRA_AFLAGS
Atsushi Nemoto [Thu, 22 Feb 2007 15:39:48 +0000 (00:39 +0900)]
[MIPS] Kill redundant EXTRA_AFLAGS

Many Makefiles in arch/mips have EXTRA_AFLAGS := $(CFLAGS) line.  This
is redundant while AFLAGS contains $(cflags-y) and any options only
listed in CFLAGS (not in cflags-y) should be unnecessary for asm
sources.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] RTLX: Handle signals when sleeping.
Ralf Baechle [Thu, 22 Feb 2007 14:19:48 +0000 (14:19 +0000)]
[MIPS] RTLX: Handle signals when sleeping.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] TB0287: Enable SM501 driver support in defconfig
Yoichi Yuasa [Thu, 22 Feb 2007 13:31:00 +0000 (22:31 +0900)]
[MIPS] TB0287: Enable SM501 driver support in defconfig

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 26 Feb 2007 22:58:03 +0000 (14:58 -0800)]
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: (51 commits)
  [libata] bump versions
  [libata] Trim trailing whitespace.
  [libata] sata_mv: Fix 50xx irq mask
  [libata] sata_mv: don't touch reserved bits in EDMA config register
  libata: Use new id_to_dma_mode function to tidy reporting in more drivers (minimally tested)
  pata_pcmcia: Fix oops in 2.6.21-rc1
  Add id_to_dma_mode function for printing DMA modes
  sata_promise: simplify port setup
  sata_promise: fix 20619 new EH merge error
  [libata] ACPI: remove needless ->qc_issue hook existence test
  sata_vsc: refactor vsc_sata_interrupt and hook up error handling
  sata_sil: ignore and clear spurious IRQs while executing commands by polling
  sata_mv: fix pci_enable_msi() error handling
  pata_amd: fix an obvious bug in cable detection
  [libata] ata_piix: remove duplicate PCI IDs
  sata_nv: complain on spurious completion notifiers
  libata: test major version in ata_id_is_sata()
  sata_nv: kill old private BMDMA helper functions
  libata: fix remaining ap->id
  ahci: consider SDB FIS containing spurious NCQ completions HSM violation (regenerated)
  ...

17 years agoRevert "[CPUFREQ] constify cpufreq_driver where possible."
Linus Torvalds [Mon, 26 Feb 2007 22:55:48 +0000 (14:55 -0800)]
Revert "[CPUFREQ] constify cpufreq_driver where possible."

This reverts commit aeeddc1435c37fa3fc844f31d39c185b08de4158, which was
half-baked and broken.  It just resulted in compile errors, since
cpufreq_register_driver() still changes the 'driver_data' by setting
bits in the flags field.  So claiming it is 'const' _really_ doesn't
work.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
Linus Torvalds [Mon, 26 Feb 2007 22:17:50 +0000 (14:17 -0800)]
Merge /pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] constify some data tables.
  [CPUFREQ] constify cpufreq_driver where possible.
  {rd,wr}msr_on_cpu SMP=n optimization
  [CPUFREQ] cpufreq_ondemand.c: don't use _WORK_NAR
  rdmsr_on_cpu, wrmsr_on_cpu
  [CPUFREQ] Revert default on deprecated config X86_SPEEDSTEP_CENTRINO_ACPI

17 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 26 Feb 2007 21:19:17 +0000 (13:19 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] CLPS7500 doesn't have IO ports
  [ARM] Fix more apm-emulation.h
  [ARM] 4234/1: Introduce get_irqnr_preamble and arch_ret_to_user for ns9xxx.
  [ARM] 4233/1: nand/s3c2410.c: warning fix
  [ARM] 4226/1: initial .data and .bss mappings of XIP kernel should be TEXT_OFFSET
  [ARM] 4224/2: allow XIP kernel to boot again
  [ARM] 4232/1: AT91: Generic GPIO bug
  [ARM] 4231/1: AT91: Merge and typo fixes.
  [ARM] 4229/1: S3C2410: Add MACH_QT2410 to s3c2410_defconfig
  [ARM] 4228/2: S3C24XX: update s3c2410_defconfig for 2.6.21-rc1

17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Mon, 26 Feb 2007 21:18:43 +0000 (13:18 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IPoIB: Correct debugging output when path record lookup fails
  RDMA/cxgb3: Stop the EP Timer on BAD CLOSE
  RDMA/cxgb3: cleanups
  RDMA/cma: Remove unused node_guid from cma_device structure
  IB/cm: Remove ca_guid from cm_device structure
  RDMA/cma: Request reversible paths only
  IB/core: Set hop limit in ib_init_ah_from_wc correctly
  IB/uverbs: Return correct error for invalid PD in register MR
  IPoIB: Remove unused local_rate tracking
  IPoIB/cm: Improve small message bandwidth
  IB/mthca: Make 2 functions static

17 years ago[ARM] CLPS7500 doesn't have IO ports
Russell King [Mon, 26 Feb 2007 21:07:30 +0000 (21:07 +0000)]
[ARM] CLPS7500 doesn't have IO ports

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix more apm-emulation.h
Russell King [Mon, 26 Feb 2007 21:04:29 +0000 (21:04 +0000)]
[ARM] Fix more apm-emulation.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[PATCH] Fix oops in pata_pcmcia
Alan [Wed, 21 Feb 2007 16:41:23 +0000 (16:41 +0000)]
[PATCH] Fix oops in pata_pcmcia

The change to the devres layer re-orders the execution of cleanup
functions and in turn causes the pcmcia layer to oops as it zaps a
pointer now needed later on. We simply leave the pointer alone.

Signed-off-by: Alan Cox <alan@redhat.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Make hvc_console.c compile on non-powerpc: Remove NO_IRQ
Rusty Russell [Fri, 23 Feb 2007 03:12:02 +0000 (14:12 +1100)]
[PATCH] Make hvc_console.c compile on non-powerpc: Remove NO_IRQ

Paulus preferred this over #defining NO_IRQ in the file, since that's
0 for powerpc anyway.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoIPoIB: Correct debugging output when path record lookup fails
Roland Dreier [Mon, 26 Feb 2007 20:57:08 +0000 (12:57 -0800)]
IPoIB: Correct debugging output when path record lookup fails

If path_rec_completion() is passed a non-NULL path record pointer
along with an unsuccessful status value, the tracing code incorrectly
prints the (invalid) DLID from the path record rather than the more
interesting status code.  The actual logic of the function correctly
uses the path record only if the status indicates a successful lookup.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
17 years ago[PATCH] Fix build-failure in drivers/video/s3fb.c
Ondrej Zajicek [Thu, 22 Feb 2007 16:00:41 +0000 (17:00 +0100)]
[PATCH] Fix build-failure in drivers/video/s3fb.c

Toralf Förster pointed out that drivers/video/s3fb.c would fail to compile:
> ...
>   CC      drivers/video/s3fb.o
> drivers/video/s3fb.c: In function `s3_pci_remove':
> drivers/video/s3fb.c:1003: warning: unused variable `par'
> drivers/video/s3fb.c: In function `s3fb_setup':
> drivers/video/s3fb.c:1141: error: `mtrr' undeclared (first use in this function)
> drivers/video/s3fb.c:1141: error: (Each undeclared identifier is reported only once
> drivers/video/s3fb.c:1141: error: for each function it appears in.)
> make[2]: *** [drivers/video/s3fb.o] Error 1
> make[1]: *** [drivers/video] Error 2
> make: *** [drivers] Error 2

Here is fix, it also fixes broken boot options.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86: add -freg-struct-return to CFLAGS
Ingo Molnar [Thu, 22 Feb 2007 08:38:22 +0000 (09:38 +0100)]
[PATCH] x86: add -freg-struct-return to CFLAGS

Jeremy Fitzhardinge suggested the use of -freg-struct-return, which does
structure-returns (such as when using pte_t) in registers instead of on
the stack.

that is indeed so, and this option reduced the kernel size a bit:

    text    data     bss     dec     hex filename
 4799506  543456 3760128 9103090  8ae6f2 vmlinux.before
 4798117  543456 3760128 9101701  8ae185 vmlinux.after

the resulting kernel booted fine on my testbox. Lets go for it.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] add MAINTAINERS entry for high-res timers, clockevents, dynticks
Ingo Molnar [Thu, 22 Feb 2007 08:09:34 +0000 (09:09 +0100)]
[PATCH] add MAINTAINERS entry for high-res timers, clockevents, dynticks

Thomas is the maintainer and primary author of the high-res timers,
clockevents and dynticks code.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:48:06 +0000 (12:48 -0800)]
Merge /pub/scm/linux/kernel/git/kyle/parisc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6: (78 commits)
  [PARISC] Use symbolic last syscall in __NR_Linux_syscalls
  [PARISC] Add missing statfs64 and fstatfs64 syscalls
  Revert "[PARISC] Optimize TLB flush on SMP systems"
  [PARISC] Compat signal fixes for 64-bit parisc
  [PARISC] Reorder syscalls to match unistd.h
  Revert "[PATCH] make kernel/signal.c:kill_proc_info() static"
  [PARISC] fix sys_rt_sigqueueinfo
  [PARISC] fix section mismatch warnings in harmony sound driver
  [PARISC] do not export get_register/set_register
  [PARISC] add ENTRY()/ENDPROC() and simplify assembly of HP/UX emulation code
  [PARISC] convert to use CONFIG_64BIT instead of __LP64__
  [PARISC] use CONFIG_64BIT instead of __LP64__
  [PARISC] add ASM_EXCEPTIONTABLE_ENTRY() macro
  [PARISC] more ENTRY(), ENDPROC(), END() conversions
  [PARISC] fix ENTRY() and ENDPROC() for 64bit-parisc
  [PARISC] Fixes /proc/cpuinfo cache output on B160L
  [PARISC] implement standard ENTRY(), END() and ENDPROC()
  [PARISC] kill ENTRY_SYS_CPUS
  [PARISC] clean up debugging printks in smp.c
  [PARISC] factor syscall_restart code out of do_signal
  ...

Fix conflict in include/linux/sched.h due to kill_proc_info() being made
publicly available to PARISC again.

17 years ago[PATCH] CREDITS: update my email address
Mikael Pettersson [Sun, 25 Feb 2007 11:49:01 +0000 (12:49 +0100)]
[PATCH] CREDITS: update my email address

Update my email address in CREDITS to one that works.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] drivers/mfd/sm501.c: Replace pci_module_init with pci_register_driver
Richard Knutsson [Sat, 24 Feb 2007 10:46:06 +0000 (11:46 +0100)]
[PATCH] drivers/mfd/sm501.c: Replace pci_module_init with pci_register_driver

Replace pci_module_init with pci_register_driver

Signed-off-by: Richard Knutson <ricknu-0@student.ltu.se>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:23:08 +0000 (12:23 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (25 commits)
  [XFRM]: Fix oops in xfrm4_dst_destroy()
  [XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head
  [IPV4]: Use random32() in net/ipv4/multipath
  [BRIDGE]: eliminate workqueue for carrier check
  [BRIDGE]: get rid of miscdevice include
  [IPV6]: Fix __ipv6_addr_type() export in correct place.
  [IPV4] devinet: Register inetdev earlier.
  [IPV6] ADDRCONF: Register inet6_dev earlier.
  [IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.
  [IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.
  [IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.
  [IPV4]: Correct links in net/ipv4/Kconfig
  [SCTP]: Strike the transport before updating rto.
  [SCTP]: Fix connection hang/slowdown with PR-SCTP
  [TCP]: Fix MD5 signature pool locking.
  [TG3]: TSO workaround fixes.
  [AF_PACKET]: Remove unnecessary casts.
  [IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()
  [IPSEC]: More fix is needed for __xfrm6_bundle_create().
  [IRDA] net/irda/: proper prototypes
  ...

17 years ago[XFRM]: Fix oops in xfrm4_dst_destroy()
Bernhard Walle [Mon, 26 Feb 2007 20:10:32 +0000 (12:10 -0800)]
[XFRM]: Fix oops in xfrm4_dst_destroy()

With 2.6.21-rc1, I get an oops when running 'ifdown eth0' and an IPsec
connection is active. If I shut down the connection before running 'ifdown
eth0', then there's no problem.  The critical operation of this script is to
kill dhcpd.

The problem is probably caused by commit with git identifier
4337226228e1cfc1d70ee975789c6bd070fb597c (Linus tree) "[IPSEC]: IPv4 over IPv6
IPsec tunnel".

This patch fixes that oops. I don't know the network code of the Linux
kernel in deep, so if that fix is wrong, please change it. But please
fix the oops. :)

Signed-off-by: Bernhard Walle <bwalle@suse.de>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selin...
Linus Torvalds [Mon, 26 Feb 2007 20:06:43 +0000 (12:06 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/jmorris/selinux-2.6

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
  Always initialize scontext and scontext_len
  Reassign printk levels in selinux kernel code

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:06:08 +0000 (12:06 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC] uctrl: Check request_irq() return value.
  [SPARC64]: Update defconfig.
  [SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.
  [SPARC64]: Fix arch_teardown_msi_irq().
  [SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI
  [SPARC]: Remove the broken SUN_AURORA driver.

17 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
Linus Torvalds [Mon, 26 Feb 2007 19:45:50 +0000 (11:45 -0800)]
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds

* 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
  leds: Add support for Cobalt Server front LED
  leds: Add IPAQ h1940 LEDs support

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
Linus Torvalds [Mon, 26 Feb 2007 19:44:51 +0000 (11:44 -0800)]
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: Get rid of "may be used uninitialized" warnings

17 years agoAlways initialize scontext and scontext_len
Stephen Smalley [Mon, 26 Feb 2007 17:02:34 +0000 (12:02 -0500)]
Always initialize scontext and scontext_len

Always initialize *scontext and *scontext_len in security_sid_to_context.

(via http://lkml.org/lkml/2007/2/23/135)

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
17 years agoReassign printk levels in selinux kernel code
Eric Paris [Thu, 22 Feb 2007 23:11:31 +0000 (18:11 -0500)]
Reassign printk levels in selinux kernel code

Below is a patch which demotes many printk lines to KERN_DEBUG from
KERN_INFO.  It should help stop the spamming of logs with messages in
which users are not interested nor is there any action that users should
take.  It also promotes some KERN_INFO to KERN_ERR such as when there
are improper attempts to register/unregister security modules.

A similar patch was discussed a while back on list:
http://marc.theaimsgroup.com/?t=116656343500003&r=1&w=2
This patch addresses almost all of the issues raised.  I believe the
only advice not taken was in the demoting of messages related to
undefined permissions and classes.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
 security/selinux/hooks.c       |   20 ++++++++++----------
 security/selinux/ss/avtab.c    |    2 +-
 security/selinux/ss/policydb.c |    6 +++---
 security/selinux/ss/sidtab.c   |    2 +-
 4 files changed, 15 insertions(+), 15 deletions(-)
Signed-off-by: James Morris <jmorris@namei.org>
17 years ago[XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head
Arnaldo Carvalho de Melo [Sun, 25 Feb 2007 02:12:42 +0000 (18:12 -0800)]
[XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head

           Please consider applying, this was found on your latest
net-2.6 tree while playing around with that ip_hdr() + turn
skb->nh/h/mac pointers  as offsets on 64 bits idea :-)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV4]: Use random32() in net/ipv4/multipath
Joe Perches [Thu, 22 Feb 2007 09:26:32 +0000 (01:26 -0800)]
[IPV4]: Use random32() in net/ipv4/multipath

Removed local random number generator function

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[BRIDGE]: eliminate workqueue for carrier check
Stephen Hemminger [Thu, 22 Feb 2007 09:10:18 +0000 (01:10 -0800)]
[BRIDGE]: eliminate workqueue for carrier check

Having a work queue for checking carrier leads to lots of race issues.
Simpler to just get the cost when data structure is created and
update on change.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[BRIDGE]: get rid of miscdevice include
Stephen Hemminger [Thu, 22 Feb 2007 09:07:53 +0000 (01:07 -0800)]
[BRIDGE]: get rid of miscdevice include

The bridge hasn't used miscdevice for a long long time.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Fix __ipv6_addr_type() export in correct place.
David S. Miller [Thu, 22 Feb 2007 07:26:56 +0000 (23:26 -0800)]
[IPV6]: Fix __ipv6_addr_type() export in correct place.

It needs to be in net/ipv6/addrconf_core.c

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV4] devinet: Register inetdev earlier.
Herbert Xu [Wed, 21 Feb 2007 16:53:47 +0000 (01:53 +0900)]
[IPV4] devinet: Register inetdev earlier.

This patch allocates inetdev at registration for all devices
in line with IPv6.  This allows sysctl configuration on the
devices to occur before they're brought up or addresses are
added.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
17 years ago[IPV6] ADDRCONF: Register inet6_dev earlier.
YOSHIFUJI Hideaki [Wed, 14 Feb 2007 17:07:27 +0000 (02:07 +0900)]
[IPV6] ADDRCONF: Register inet6_dev earlier.

Allocate inet6_dev earlier to allow users to set up per-interface variables.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
17 years ago[IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.
YOSHIFUJI Hideaki [Wed, 7 Feb 2007 11:36:26 +0000 (20:36 +0900)]
[IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.

It is more natural to manage prefix routes corresponding to address which is
being added manually.

With help from Masafumi Aramoto <aramoto@linux-ipv6.org>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
17 years ago[IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.
Yasuyuki Kozakai [Sat, 9 Sep 2006 18:59:17 +0000 (03:59 +0900)]
[IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.

Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
17 years ago[IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.
YOSHIFUJI Hideaki [Wed, 21 Feb 2007 17:25:42 +0000 (02:25 +0900)]
[IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.

Link __ipv6_addr_type() statically for sunrpc code even if IPv6 is
built as module.

Signed-off-by: YOSHIFUJI Hidaki <yoshfuji@linux-ipv6.org>
17 years ago[IPV4]: Correct links in net/ipv4/Kconfig
Baruch Even [Thu, 22 Feb 2007 03:32:37 +0000 (19:32 -0800)]
[IPV4]: Correct links in net/ipv4/Kconfig

Correct dead/indirect links in net/ipv4/Kconfig

Signed-off-by: Baruch Even <baruch@ev-en.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SCTP]: Strike the transport before updating rto.
Vlad Yasevich [Wed, 21 Feb 2007 10:06:19 +0000 (02:06 -0800)]
[SCTP]: Strike the transport before updating rto.

Once we reach a point where we exceed the max.path.retrans, strike the
transport before updating the rto.  This will force transport switch at
the right time, instead of 1 retransmit too late.

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>
17 years ago[SCTP]: Fix connection hang/slowdown with PR-SCTP
Vlad Yasevich [Wed, 21 Feb 2007 10:06:04 +0000 (02:06 -0800)]
[SCTP]: Fix connection hang/slowdown with PR-SCTP

The problem that this patch corrects happens when all of the following
conditions are satisfisfied:
 1.  PR-SCTP is used and the timeout on the chunks is set below RTO.Max.
 2.  One of the paths on a multihomed associations is brought down.

In this scenario, data will expire within the rto of the initial
transmission and will never be retransmitted.  However this data still
fills the send buffer and is counted against the association as outstanding
data.  This causes any new data not to be sent and retransmission to not
happen.

The fix is to discount the abandoned data from the outstanding count and
peers rwnd estimation.  This allows new data to be sent and a retransmission
timer restarted.  Even though this new data will most likely expire within
the rto, the timer still counts as a strike against the transport and forces
the FORWARD-TSN chunk to be retransmitted as well.

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>
17 years ago[TCP]: Fix MD5 signature pool locking.
David S. Miller [Wed, 21 Feb 2007 07:51:47 +0000 (23:51 -0800)]
[TCP]: Fix MD5 signature pool locking.

The locking calls assumed that these code paths were only
invoked in software interrupt context, but that isn't true.

Therefore we need to use spin_{lock,unlock}_bh() throughout.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TG3]: TSO workaround fixes.
Michael Chan [Wed, 21 Feb 2007 07:25:40 +0000 (23:25 -0800)]
[TG3]: TSO workaround fixes.

1.  Add race condition check after netif_stop_queue().  tg3_tx() runs
    without netif_tx_lock and can race with tg3_start_xmit_dma_bug() ->
    tg3_tso_bug().

2.  Firmware TSO in 5703/5704/5705 also have the same TSO limitation,
    i.e. they cannot handle TSO headers bigger than 80 bytes.  Rename
    TG3_FL2_HW_TSO_1_BUG to TG3_FL2_TSO_BUG and set this flag on
    these chips as well.

3.  Update version to 3.74.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[AF_PACKET]: Remove unnecessary casts.
Jason Lunz [Wed, 21 Feb 2007 07:19:54 +0000 (23:19 -0800)]
[AF_PACKET]: Remove unnecessary casts.

packet_lookup_frame() always returns tpacket_hdr*, so there's no reason
to return char* and require casting by callers.

Also, remove a cast of void*.

Signed-off-by: Jason Lunz <lunz@falooley.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()
Joe Jin [Tue, 20 Feb 2007 09:30:15 +0000 (01:30 -0800)]
[IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()

This patch for adjust inet6_exit() to inverse sequence to inet6_init().

At ipv6_init, it first create proc_root/net/dev_snmp6 entry by call
ipv6_misc_proc_init(), then call addrconf_init() to create the corresponding
device entry at this directory, but at inet6_exit, ipv6_misc_proc_exit()
called first, then call addrconf_init().

Signed-off-by: Joe Jin <joe.jin@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPSEC]: More fix is needed for __xfrm6_bundle_create().
Noriaki TAKAMIYA [Tue, 20 Feb 2007 09:08:41 +0000 (01:08 -0800)]
[IPSEC]: More fix is needed for __xfrm6_bundle_create().

Fixed to set fl_tunnel.fl6_src correctly in xfrm6_bundle_create().

Signed-off-by: Noriaki TAKAMIYA <takamiya@po.ntts.co.jp>
Acked-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IRDA] net/irda/: proper prototypes
Adrian Bunk [Tue, 20 Feb 2007 09:06:40 +0000 (01:06 -0800)]
[IRDA] net/irda/: proper prototypes

This patch adds proper prototypes for some functions in
include/net/irda/irda.h

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[Bluetooth] Make use of MODULE_FIRMWARE
Marcel Holtmann [Sat, 17 Feb 2007 22:59:02 +0000 (23:59 +0100)]
[Bluetooth] Make use of MODULE_FIRMWARE

Some Bluetooth drivers need one or more binary firmware images. Export
these image names via the MODULE_FIRMWARE tag.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
17 years ago[Bluetooth] Make use of device_move() for RFCOMM TTY devices
Marcel Holtmann [Sat, 17 Feb 2007 22:58:57 +0000 (23:58 +0100)]
[Bluetooth] Make use of device_move() for RFCOMM TTY devices

In the case of bound RFCOMM TTY devices the parent is not available
before its usage. So when opening a RFCOMM TTY device, move it to
the corresponding ACL device as a child. When closing the device,
move it back to the virtual device tree.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
17 years ago[Bluetooth] Add open and close callbacks for HID device
Marcel Holtmann [Sat, 17 Feb 2007 22:58:53 +0000 (23:58 +0100)]
[Bluetooth] Add open and close callbacks for HID device

The open and close callbacks for the HID device are not optional, but
for the Bluetooth HID report mode support it is enough to add empty
dummy callbacks.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
17 years ago[Bluetooth] Add support for using the HID subsystem
Marcel Holtmann [Sat, 17 Feb 2007 22:58:49 +0000 (23:58 +0100)]
[Bluetooth] Add support for using the HID subsystem

This patch extends the current Bluetooth HID support to use the new
HID subsystem and adds full report mode support.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
17 years ago[Bluetooth] Fix wrong put_user() from HIDP compat ioctl patch
Marcel Holtmann [Sat, 17 Feb 2007 22:58:44 +0000 (23:58 +0100)]
[Bluetooth] Fix wrong put_user() from HIDP compat ioctl patch

The compat ioctl patch copied the parser version field into the
report descriptor size field by mistake.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/tick-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:42:10 +0000 (11:42 -0800)]
Merge /pub/scm/linux/kernel/git/davem/tick-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/tick-2.6:
  [TICK] tick-common: Fix one-shot handling in tick_handle_periodic().
  [TIME] tick-sched: Add missing asm/irq_regs.h include.

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:41:30 +0000 (11:41 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/driver-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6:
  Revert "Driver core: let request_module() send a /sys/modules/kmod/-uevent"
  Driver core: fix error by cleanup up symlinks properly
  make kernel/kmod.c:kmod_mk static
  power management: fix struct layout and docs
  power management: no valid states w/o pm_ops
  Driver core: more fallout from class_device changes for pcmcia
  sysfs: move struct sysfs_dirent to private header
  driver core: refcounting fix
  Driver core: remove class_device_rename

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:41:08 +0000 (11:41 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/usb-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6:
  USB: export autosuspend delay in sysfs
  sysfs: allow attributes to be added to groups
  USB: make autosuspend delay a module parameter
  USB: minor cleanups for sysfs.c
  USB: add a blacklist for devices that can't handle some things we throw at them.
  USB: refactor usb device matching and create usb_device_match
  USB: Wacom driver updates
  gadgetfs: Fixed bug in ep_aio_read_retry.
  USB: Use USB defines in usbmouse.c and usbkbd.c
  USB: add rationale on why usb descriptor structures have to be packed
  USB: ftdi_sio: Adding VID and PID for Tellstick
  UHCI: Eliminate asynchronous skeleton Queue Headers
  UHCI: Add macros for computing DMA values
  USB: Davicom DM9601 usbnet driver
  USB: asix.c - Add JVC-PRX1 ids
  usbmon: Remove erroneous __exit
  USB: add driver for iowarrior devices.
  USB: option: add a bunch of new device ids
  USB: option: remove duplicate device id table

17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Mon, 26 Feb 2007 19:40:46 +0000 (11:40 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Fix port 0 mac address for mips mv6434x platforms
  [SERIAL] serial_txx9 driver update
  Revert "[PATCH] Generic ioremap_page_range: mips conversion"
  [MIPS] Cobalt: Rename "Colo" MTD partition to "firmware".
  [MIPS] SMP: Get smp_tune_scheduling to do something useful.
  [MIPS] Add basic SMARTMIPS ASE support

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Mon, 26 Feb 2007 19:39:49 +0000 (11:39 -0800)]
Merge /pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] Further constification.
  [AGPGART] Fix modular agpgart ia64 allmodconfig

17 years ago[SPARC] uctrl: Check request_irq() return value.
David S. Miller [Mon, 26 Feb 2007 17:46:54 +0000 (09:46 -0800)]
[SPARC] uctrl: Check request_irq() return value.

Based upon a patch by Monakhov Dmitriy.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Update defconfig.
David S. Miller [Mon, 26 Feb 2007 18:45:43 +0000 (10:45 -0800)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.
David S. Miller [Mon, 26 Feb 2007 18:11:35 +0000 (10:11 -0800)]
[SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.

Based almost entirely upon a patch by Joerg Friedrich

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Fix arch_teardown_msi_irq().
David S. Miller [Mon, 26 Feb 2007 17:40:34 +0000 (09:40 -0800)]
[SPARC64]: Fix arch_teardown_msi_irq().

Need to use get_irq_msi() not get_irq_data().

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI
David S. Miller [Tue, 20 Feb 2007 09:26:48 +0000 (01:26 -0800)]
[SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI

Noticed by Meelis Roos.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC]: Remove the broken SUN_AURORA driver.
Adrian Bunk [Tue, 20 Feb 2007 09:03:48 +0000 (01:03 -0800)]
[SPARC]: Remove the broken SUN_AURORA driver.

The SUN_AURORA driver:
- has been marked as BROKEN for more than two years and
- is still marked as BROKEN.

Drivers that had been marked as BROKEN for such a long time seem to be
unlikely to be revived in the forseeable future.

But if anyone wants to ever revive this driver, the code is still
present in the older kernel releases.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TICK] tick-common: Fix one-shot handling in tick_handle_periodic().
David S. Miller [Sun, 25 Feb 2007 06:11:42 +0000 (22:11 -0800)]
[TICK] tick-common: Fix one-shot handling in tick_handle_periodic().

When clockevents_program_event() is given an expire time in the
past, it does not update dev->next_event, so this looping code
would loop forever once the first in-the-past expiration time
was used.

Keep advancing "next" locally to fix this bug.

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TIME] tick-sched: Add missing asm/irq_regs.h include.
David S. Miller [Sun, 25 Feb 2007 06:10:13 +0000 (22:10 -0800)]
[TIME] tick-sched: Add missing asm/irq_regs.h include.

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] genirq: Mask irqs when migrating them.
Eric W. Biederman [Fri, 23 Feb 2007 11:46:20 +0000 (04:46 -0700)]
[PATCH] genirq: Mask irqs when migrating them.

move_native_irqs tries to do the right thing when migrating irqs
by disabling them.  However disabling them is a software logical
thing, not a hardware thing.  This has always been a little flaky
and after Ingo's latest round of changes it is guaranteed to not
mask the apic.

So this patch fixes move_native_irq to directly call the mask and
unmask chip methods to guarantee that we mask the irq when we
are migrating it.  We must do this as it is required by
all code that call into the path.

Since we don't know the masked status when IRQ_DISABLED is
set so we will not be able to restore it.   The patch makes the code
just give up and trying again the next time this routing is called.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Safely cleanup an irq after moving it.
Eric W. Biederman [Fri, 23 Feb 2007 11:40:58 +0000 (04:40 -0700)]
[PATCH] x86_64 irq: Safely cleanup an irq after moving it.

The problem:  After moving an interrupt when is it safe to teardown
the data structures for receiving the interrupt at the old location?

With a normal pci device it is possible to issue a read to a device
to flush all posted writes.  This does not work for the oldest ioapics
because they are on a 3-wire apic bus which is a completely different
data path.  For some more modern ioapics when everything is using
front side bus delivery you can flush interrupts by simply issuing a
read to the ioapic.  For other modern ioapics emperical testing has
shown that this does not work.

So it appears the only reliable way to know the last of the irqs from an
ioapic have been received from before the ioapic was reprogrammed is to
received the first irq from the ioapic from after it was reprogrammed.

Once we know the last irq message has been received from an ioapic
into a local apic we then need to know that irq message has been
processed through the local apics.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Add constants for the reserved IRQ vectors.
Eric W. Biederman [Fri, 23 Feb 2007 11:38:26 +0000 (04:38 -0700)]
[PATCH] x86_64 irq: Add constants for the reserved IRQ vectors.

For the ISA irqs we reserve 16 vectors.  This patch adds constants for
those vectors and modifies the code to use them.  Making the code a
little clearer and making it possible to move these vectors in the future.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Remove unnecessary irq 0 setup.
Eric W. Biederman [Fri, 23 Feb 2007 11:36:25 +0000 (04:36 -0700)]
[PATCH] x86_64 irq: Remove unnecessary irq 0 setup.

The code in io_apic.c and in i8259.c currently hardcode the same
vector for the timer interrupt so there is no reason for a special
assignment for the timer as the setup for the i8259 already takes care
of this.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Simplify assign_irq_vector's arguments.
Eric W. Biederman [Fri, 23 Feb 2007 11:35:05 +0000 (04:35 -0700)]
[PATCH] x86_64 irq: Simplify assign_irq_vector's arguments.

Currently assign_irq_vector works mostly by side effect and returns
the results of it's changes to the caller.  Which makes for a lot of
arguments to pass/return and confusion as to what to do if you need
the status but you aren't calling assign_irq_vector.

This patch stops returning values from assign_irq_vector that can be
retrieved just as easily by examining irq_cfg, and modifies the
callers to retrive those values from irq_cfg when they need them.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Begin consolidating per_irq data in structures.
Eric W. Biederman [Fri, 23 Feb 2007 11:32:47 +0000 (04:32 -0700)]
[PATCH] x86_64 irq: Begin consolidating per_irq data in structures.

Currently the io_apic.c has several parallel arrays for different
kinds of data that can be know about an irq.  The parallel arrays
make the code harder to maintain and make it difficult to remove
the static limits on the number of the number of irqs.

This patch pushes irq_data and irq_vector into a irq_cfg array and
updates the code to use it.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Use NR_IRQS not NR_IRQ_VECTORS
Eric W. Biederman [Fri, 23 Feb 2007 11:26:53 +0000 (04:26 -0700)]
[PATCH] x86_64 irq: Use NR_IRQS not NR_IRQ_VECTORS

NR_IRQ_VECTORS is currently a compatiblity define set to NR_IRQs.
This patch updates the users of NR_IRQ_VECTORS to use NR_IRQs instead
so that NR_IRQ_VECTORS can be removed.

There is still shared code with arch/i386 that uses NR_IRQ_VECTORS
so we can't remove the #define just yet :(

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: In __DO_ACTION perform the FINAL action for every entry.
Eric W. Biederman [Fri, 23 Feb 2007 11:23:52 +0000 (04:23 -0700)]
[PATCH] x86_64 irq: In __DO_ACTION perform the FINAL action for every entry.

If we have an irq that comes from multiple io_apic pins the FINAL action
(which is io_apic_sync or nothing) needs to be called for every entry or
else if the two pins come from different io_apics we may not wait until
after the action happens on the io_apic.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Simplfiy the set_affinity logic.
Eric W. Biederman [Fri, 23 Feb 2007 11:20:59 +0000 (04:20 -0700)]
[PATCH] x86_64 irq: Simplfiy the set_affinity logic.

For some reason the code has been picking TARGET_CPUS when asked to
set the affinity to an empty set of cpus.  That is just silly it's
extra work.  Instead if there are no cpus to set the affinity to we
should just give up immediately.  That is simpler and a little more
intuitive.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Refactor setup_IO_APIC_irq
Eric W. Biederman [Fri, 23 Feb 2007 11:19:08 +0000 (04:19 -0700)]
[PATCH] x86_64 irq: Refactor setup_IO_APIC_irq

Currently we have two routines that do practically the same thing
setup_IO_APIC_irq and io_apic_set_pci_routing.  This patch makes
setup_IO_APIC_irq the common factor of these two previous routines.
For setup_IO_APIC_irq all that was needed was to pass the trigger
and polarity to make the code a proper subset of io_apic_set_pci_routing.

Hopefully consolidating these two routines will improve maintenance
there were several differences that simply appear to be one routine
or the other getting it wrong.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Remove the unused vector parameter from ioapic_register_intr
Eric W. Biederman [Fri, 23 Feb 2007 11:16:31 +0000 (04:16 -0700)]
[PATCH] x86_64 irq: Remove the unused vector parameter from ioapic_register_intr

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] x86_64 irq: Kill declaration of removed array, interrupt
Eric W. Biederman [Fri, 23 Feb 2007 11:15:15 +0000 (04:15 -0700)]
[PATCH] x86_64 irq: Kill declaration of removed array, interrupt

It's dead Jim.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] irq: Remove set_native_irq_info
Eric W. Biederman [Fri, 23 Feb 2007 11:13:55 +0000 (04:13 -0700)]
[PATCH] irq: Remove set_native_irq_info

This patch replaces all instances of "set_native_irq_info(irq, mask)"
with "irq_desc[irq].affinity = mask".  The latter form is clearer
uses fewer abstractions, and makes access to this field uniform
accross different architectures.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>