Archived
14
0
Fork 0
Commit graph

39039 commits

Author SHA1 Message Date
Grant Grundler
6e5dc42b5a [PARISC] Further updates to timer_interrupt()
This version (relative to the current tree):
o eliminates "while (ticks_elapsed)" loop. It's not needed.
o drop "ticks_elapsed" completely from timer_interrupt().
o Estimates elapsed cycles (based on HZ) to see which kind of
  math we want to use to calculate "cycles_remainder".
o Fixes a bug where we would loose a tick if we decided
  we wanted to skip one interrupt.

Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:48:48 -06:00
Grant Grundler
6b799d9222 [PARISC] remove halftick and copy clocktick to local var (gcc can optimize usage)
Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:48:38 -06:00
Grant Grundler
bed583f76e [PARISC] Rewrite timer_interrupt() and gettimeoffset() using "unsigned" math.
It's just a bit easier to follow and timer code is complex enough.

So far, only tested on A500-5x (64-bit SMP), ie: gettimeoffset() code
hasn't been tested at all.

Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:48:28 -06:00
Matthew Wilcox
65ee8f0a7f [PARISC] Enable interrupts while spinning
Use the __raw_spin_lock_flags routine so we can take an interrupt while
spinning.  This re-fixes a bug jejb found on 2005-10-20:

CPU0 does a flush_tlb_all holding the vmlist_lock for write.
CPU1 tries a cat of /proc/meminfo which tries to acquire vmlist_lock for read
CPU1 is now spinning with interrupts disabled
CPU0 tries to execute a smp_call_function to flush the local tlb caches
This is now a deadlock because CPU1 is spinning with interrupts disabled and
can never receive the IPI

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:48:17 -06:00
Grant Grundler
56f335c89e [PARISC] Add new function to start local Interval Timer, start_cpu_itimer()
I couldn't find where the itimer was getting started for slave CPUs.
CPU 0 (master) itimer was started in time_init() (arch/parisc/kernel/time.c).
start_cpu_itimer() code was striped from time_init().
Slaves now start their itimer in smp_cpu_init().

This is a first step towards making gettimeoffset() work for SMP.
Next step will be to determine the CR16 (cycle counter)
offsets for each CPU relative to the master (CPU 0).

Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:48:07 -06:00
Grant Grundler
7908a0c72e [PARISC] Prevent processor_probe() from clobbering cpu_data[0]
processor_probe() shouldn't clobber cpu_data[0]
cpu_data[0].it_value (used by timer_interrupt()) is already set.

Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:57 -06:00
Grant Grundler
9cf8f370f0 [PARISC] Use CONFIG_HZ to determine interval timer rate (aka clock ticks)
This isn't likely to be causing problems for other bits of
kernel code. I can't find any other user of CONFIG_HZ outside
of arch specific code.

Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:46 -06:00
Carlos O'Donell
342a0497c2 [PARISC] Implement futex_atomic_cmpxchg_inatomic
Implement trivial futex_atomic_cmpxchg_inatomic for testing.

Signed-off-by: Carlos O'Donell <carlos@systemhalted.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:36 -06:00
Matthew Wilcox
6e071852a1 [PARISC] Improve rwlock implementation
Rewrite rwlock implementation to avoid various deadlocks in the current
scheme.

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:25 -06:00
Kyle McMartin
9c2c54574e [PARISC] [BUGFIX] nullify branch delay slot of the jump back to
intr_restore in intr_do_preempt. This prevents the execution
of an unwanted insn...

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:15 -06:00
Matthew Wilcox
136ce40e9f [PARISC] Clean up asm-parisc/serial.h
Russell King pointed out that asm/serial.h is anachronistic and we were
misusing BASE_BAUD.  So fix BASE_BAUD for PCI 16550 UARTs, move LASI_BASE_BAUD
into 8250_gsc, and fix the obsolete comment about reserving serial port slots.

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:47:03 -06:00
Kyle McMartin
75a4958154 [PARISC] Allow overriding personality with sys_personality
And now suddenly, linux32 works on parisc...

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:46:53 -06:00
Kyle McMartin
df570b9c28 [PARISC] Switch is_compat_task to use TIF_32BIT
Stop using PER_LINUX32 to designate processes needing
compaterizing. Convert is_compat_task to use TIF_32BIT and
set TIF_32BIT in binfmt_elf32.c

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:46:42 -06:00
Kyle McMartin
8f611c453c [PARISC] Prevent multiple includes of asm-parisc/parisc-device.h
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:46:32 -06:00
James Bottomley
20f4d3cb9b [PARISC] parisc specific kmap API implementation for pa8800
This patch fixes the pa8800 at a gross level (there are still other
subtle incoherency issues which can still cause crashes and HPMCs).

What it does is try to force eject inequivalent aliases before they
become visible to the L2 cache (which is where we get the incoherence
problems).

A new function (parisc_requires_coherency) is introduced in
asm/processor.h to identify the pa8x00 processors (8800 and 8900)
which have the issue.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:46:21 -06:00
Carlos O'Donell
e45da35e18 [PARISC] Document that D-class can also use serial_mux
Signed-off-by: Carlos O'Donell <carlos@systemhalted.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:46:11 -06:00
Kyle McMartin
5cfe87d3f5 [PARISC] Fix up parisc irq handling for genirq changes
Clean up enough to get things compiling again in the interim.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:45:59 -06:00
Kyle McMartin
6f03495d65 [PARISC] Add asm-parisc/mckinley.h bus header
Add header for McKinley bus related code. Remove extern decl
of proc_mckinley_root in drivers/parisc/sba_iommu.c

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:45:48 -06:00
Kyle McMartin
3d73cf5e18 [PARISC] Abstract shift register left in .S
Abstract existing shift register left macros as shift register
right are. This lends itself to a nice clean up of some #ifdef
blocks in entry.S

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:45:37 -06:00
Kyle McMartin
f86e45131f [PATCH] Need forward decl of task_struct in linux/debug_locks.h
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:45:23 -06:00
Kyle McMartin
c51d476af3 [PARISC] Remove variables decls duplicated from asm-generic/sections.h
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:45:11 -06:00
Kyle McMartin
32104b29cd [PARISC] PA7200 also supports prefetch for read
It seems PA7200 processors also suppress traps on loads to
%r0. This means we can prefetch for read on these cpus. Of course,
we can't support prefetch for write, since that requires
LOAD DOUBLEWORD which was added with PA2.0

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:44:58 -06:00
Kyle McMartin
4068d93cd1 [PARISC] Untangle <asm/processor.h> header include mess
asm/processor.h on parisc wants spinlocks for cpuinfo, but
linux/spinlock_types.h needs lockdep, and lockdep wants prefetch.

This leads to a horrible circular dependancy, because <asm/processor.h>
is including something which depends on things which are not defined
until the end of the file.

Kludge around this by moving prefetch related code into <asm/prefetch.h>
and including it before <linux/spinlock_types.h>, however this is just
a temporary solution until this mess can be cleaned up.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-10-04 06:44:47 -06:00
Steve Grubb
c8e649ba90 [PATCH] message types updated
Hi,

This patch adds a new type for 3rd party module use and cleans up a deprecated
message type.

Signed-off-by: Steve Grubb <sgrubb@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-10-04 08:31:24 -04:00
Steve Grubb
ac9910ce01 [PATCH] name_count array overrun
Hi,

This patch removes the rdev logging from the previous patch

The below patch closes an unbounded use of name_count. This can lead to oopses
in some new file systems.

Signed-off-by: Steve Grubb <sgrubb@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-10-04 08:31:21 -04:00
Alexander Viro
419c58f11f [PATCH] PPID filtering fix
On Thu, Sep 28, 2006 at 04:03:06PM -0400, Eric Paris wrote:
> After some looking I did not see a way to get into audit_log_exit
> without having set the ppid.  So I am dropping the set from there and
> only doing it at the beginning.
>
> Please comment/ack/nak as soon as possible.

Ehh...  That's one hell of an overhead to be had ;-/  Let's be lazy.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-10-04 08:31:19 -04:00
Eric Paris
4b8a311bb1 [PATCH] arch filter lists with < or > should not be accepted
Currently the kernel audit system represents arch's as numbers and will
gladly accept comparisons between archs using >, <, >=, <= when the only
thing that makes sense is = or !=.  I'm told that the next revision of
auditctl will do this checking but this will provide enforcement in the
kernel even for old userspace.  A simple command to show the issue would
be to run

auditctl -d entry,always -F arch>i686 -S chmod

with this patch the kernel will reject this with -EINVAL

Please comment/ack/nak as soon as possible.

-Eric

 kernel/auditfilter.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-10-04 08:31:16 -04:00
Mauro Carvalho Chehab
e1634208b7 V4L/DVB (4712): Fix warning when compiling on x86_i64
drivers/media/dvb/dvb-usb/usb-urb.c: In function 'usb_allocate_stream_buffers':
drivers/media/dvb/dvb-usb/usb-urb.c:125: warning: format '%u' expects type 'unsigned int', but argument 4 has type 'long long unsigned int'

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:15:53 -03:00
Tobias Klauser
1396275319 V4L/DVB (4711): Radio: No need to return void
The module_exit function has return-type void and
pci_unregister_driver() returns void anyway.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:15:38 -03:00
Hans Verkuil
003138cf52 V4L/DVB (4708): Add tveeprom support for Philips FM1236/FM1216ME MK5
Add new Philips tuners: Philips FM1236 MK5 and Philips FM1216ME MK5.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:06:55 -03:00
Alan Cox
e491cbc8b2 V4L/DVB (4707): 4linux: complete conversion to hotplug safe PCI API
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:06:50 -03:00
Maciej W. Rozycki
a868b45dad V4L/DVB (4706): Do not enable VIDEO_V4L2 unconditionally
The VIDEO_V4L2 config setting is enabled unconditionally, even for 
configurations with no support for this subsystem whatsoever.  The 
following patch adds the necessary dependency.

Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:06:38 -03:00
Hartmut Hackmann
9448025be0 V4L/DVB (4704): SAA713x: fixed compile warning in SECAM fixup
The variable fixup could be used uninitialized.

Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:06:00 -03:00
Hartmut Hackmann
cf146ca4c2 V4L/DVB (4703): Add support for the ASUS EUROPA2 OEM board
This is a analog DVB-T hybrid board

Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:05:50 -03:00
Hermann Pitton
6b14ff9e90 V4L/DVB (4702): Fix: set antenna input for DVB-T for Asus P7131 Dual hybrid
This patch forces the correct antenna input input in DVB-T
mode for this card.

Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:05:42 -03:00
Hartmut Hackmann
17b10a73e6 V4L/DVB (4701): Saa713x audio fixes
This change fixes the following issues:
- resolve the SECAM D/K vs SECAM-L sound conflict
  It is now possible to select the SECAM version either by the VIDEOIOC_S_STD
  IO control or by the new secam= insmod option.
  The driver now adapts its audio standard search list to the selected
  standard.
- don't trigger a sound standard search when a LINE input is selected.

Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:04:30 -03:00
Mauro Carvalho Chehab
39666962a3 V4L/DVB (4676a): Remove Kconfig item for DiB7000M support
Support for DiB7000M frontend were not included on 2.6.19, since still not
completed. Removing Kconfig item.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-10-04 08:01:59 -03:00
Dave Jones
038b0a6d8d Remove all inclusions of <linux/config.h>
kbuild explicitly includes this at build time.

Signed-off-by: Dave Jones <davej@redhat.com>
2006-10-04 03:38:54 -04:00
Diego Beltrami
0a69452cb4 [XFRM]: BEET mode
This patch introduces the BEET mode (Bound End-to-End Tunnel) with as
specified by the ietf draft at the following link:

http://www.ietf.org/internet-drafts/draft-nikander-esp-beet-mode-06.txt

The patch provides only single family support (i.e. inner family =
outer family).

Signed-off-by: Diego Beltrami <diego.beltrami@gmail.com>
Signed-off-by: Miika Komu     <miika@iki.fi>
Signed-off-by: Herbert Xu     <herbert@gondor.apana.org.au>
Signed-off-by: Abhinav Pathak <abhinav.pathak@hiit.fi>
Signed-off-by: Jeff Ahrenholz <ahrenholz@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:09 -07:00
David S. Miller
80246ab36e [TCP]: Kill warning in tcp_clean_rtx_queue().
GCC can't tell we always initialize 'tv' in all the cases
we actually use it, so explicitly set it up with zeros.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:08 -07:00
2473ffe3ca [NET_SCHED]: Remove old estimator implementation
Remove unused file, estimators live in net/core/gen_estimator.c now.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:07 -07:00
Chas Williams
3e0c0ac84c [ATM]: [zatm] always *pcr in alloc_shaper()
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:06 -07:00
Jeff Garzik
3a4e5e2033 [ATM]: [ambassador] Change the return type to reflect reality
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:05 -07:00
Om Narasimhan
0c1cca1d8e [ATM]: kmalloc to kzalloc patches for drivers/atm
Signed-off-by: Om Narasimhan <om.turyx@gmail.com>
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:04 -07:00
Jeff Garzik
617dbeaa3f [TIPC]: fix printk warning
gcc spits out this warning:

net/tipc/link.c: In function ‘link_retransmit_failure’:
net/tipc/link.c:1669: warning: cast from pointer to integer of different
size

More than a little bit ugly, storing integers in void*, but at least the
code is correct, unlike some of the more crufty Linux kernel code found
elsewhere.

Rather than having two casts to massage the value into u32, it's easier
just to have a single cast and use "%lu", since it's just a printk.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:03 -07:00
David S. Miller
ae8c05779a [XFRM]: Clearing xfrm_policy_count[] to zero during flush is incorrect.
When we flush policies, we do a type match so we might not
actually delete all policies matching a certain direction.

So keep track of how many policies we actually kill and
subtract that number from xfrm_policy_count[dir] at the
end.

Based upon a patch by Masahide NAKAMURA.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:02 -07:00
Masahide NAKAMURA
667bbcb6c0 [XFRM] STATE: Use destination address for src hash.
Src hash is introduced for Mobile IPv6 route optimization usage.
On current kenrel code it is calculated with source address only.
It results we uses the same hash value for outbound state (when
the node has only one address for Mobile IPv6).
This patch use also destination address as peer information for
src hash to be dispersed.

Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:02 -07:00
Julian Anastasov
c5e29460f5 [NEIGH]: always use hash_mask under tbl lock
Make sure hash_mask is protected with tbl->lock in all cases just like
the hash_buckets.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:01 -07:00
Herbert Xu
1e0c14f49d [UDP]: Fix MSG_PROBE crash
UDP tracks corking status through the pending variable.  The
IP layer also tracks it through the socket write queue.  It
is possible for the two to get out of sync when MSG_PROBE is
used.

This patch changes UDP to check the write queue to ensure
that the two stay in sync.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:31:00 -07:00
Herbert Xu
132a55f3c5 [UDP6]: Fix flowi clobbering
The udp6_sendmsg function uses a shared buffer to store the
flow without taking any locks.  This leads to races with SMP.
This patch moves the flowi object onto the stack.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: James Morris <jmorris@namei.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-10-04 00:30:59 -07:00