Commit Graph

3847 Commits

Author SHA1 Message Date
Patrick McHardy
9666dae510 [NETFILTER]: Fix connection tracking bug in 2.6.12
In 2.6.12 we started dropping the conntrack reference when a packet
leaves the IP layer. This broke connection tracking on a bridge,
because bridge-netfilter defers calling some NF_IP_* hooks to the bridge
layer for locally generated packets going out a bridge, where the
conntrack reference is no longer available. This patch keeps the
reference in this case as a temporary solution, long term we will
remove the defered hook calling. No attempt is made to drop the
reference in the bridge-code when it is no longer needed, tc actions
could already have sent the packet anywhere.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 16:04:44 -07:00
Arnd Bergmann
bcd61272db [NET]: Add missing include to linux/netdevice.h
linux/etherdevice.h can't be included standalone at the moment, which
is required in order to sort the header files in the recommended
alphabetic order. This patch fixes that and is needed to build spider_net.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 15:58:50 -07:00
Denis Vlasenko
ff593c592a [NET]: Micro optimization in eth_header()
Signed-off-by: Denis Vlasenko <vda@ilport.com.ua>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 15:49:06 -07:00
YOSHIFUJI Hideaki
7fe40f73d7 [IPV6]: remove more unused IPV6_AUTHHDR things.
Remove two more unused IPV6_AUTHHDR option things, 
which I failed to remove them last time,
plus, mark IPV6_AUTHHDR obsolete.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 15:46:24 -07:00
Neil Horman
fb3d89498d [IPVS]: Close race conditions on ip_vs_conn_tab list modification
In an smp system, it is possible for an connection timer to expire, calling
ip_vs_conn_expire while the connection table is being flushed, before
ct_write_lock_bh is acquired.

Since the list iterator loop in ip_vs_con_flush releases and re-acquires the
spinlock (even though it doesn't re-enable softirqs), it is possible for the
expiration function to modify the connection list, while it is being traversed
in ip_vs_conn_flush.

The result is that the next pointer gets set to NULL, and subsequently
dereferenced, resulting in an oops.

Signed-off-by: Neil Horman <nhorman@redhat.com>
Acked-by: JulianAnastasov
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 15:40:02 -07:00
David S. Miller
689be43945 [NET]: Remove gratuitous use of skb->tail in network drivers.
Many drivers use skb->tail unnecessarily.

In these situations, the code roughly looks like:

	dev = dev_alloc_skb(...);

	[optional] skb_reserve(skb, ...);

	... skb->tail ...

But even if the skb_reserve() happens, skb->data equals
skb->tail.  So it doesn't make any sense to use anything
other than skb->data in these cases.

Another case was the s2io.c driver directly mucking with
the skb->data and skb->tail pointers.  It really just wanted
to do an skb_reserve(), so that's what the code was changed
to do instead.

Another reason I'm making this change as it allows some SKB
cleanups I have planned simpler to merge.  In those cleanups,
skb->head, skb->tail, and skb->end pointers are removed, and
replaced with skb->head_room and skb->tail_room integers.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Jeff Garzik <jgarzik@pobox.com>
2005-06-28 15:25:31 -07:00
Robert Olsson
f835e471b5 [IPV4]: Broken memory allocation in fib_trie
This should help up the insertion... but the resize is more crucial.
and complex and needs some thinking. 

Signed-off-by: Robert Olsson <robert.olsson@its.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 15:00:39 -07:00
Vlad Yasevich
2f85a42964 [SCTP] Make init & delayed sack timeouts configurable by user.
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>
2005-06-28 13:24:23 -07:00
Maxime Bizon
7a1af5d7bb [IPV4]: ipconfig.c: fix dhcp timeout behaviour
I think there is a small bug in ipconfig.c in case IPCONFIG_DHCP is set
and dhcp is used.

When a DHCPOFFER is received, ip address is kept until we get DHCPACK.
If no ack is received, ic_dynamic() returns negatively, but leaves the
offered ip address in ic_myaddr.

This makes the main loop in ip_auto_config() break and uses the maybe
incomplete configuration.

Not sure if it's the best way to do, but the following trivial patch
correct this. 

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 13:21:12 -07:00
Dietmar Eggemann
2c2910a401 [IPV4]: Snmpv2 Mib IP counter ipInAddrErrors support
I followed Thomas' proposal to see every martian destination as a case
where the ipInAddrErrors counter has to be incremented. There are
two advantages by doing so: (1) The relation between the ipInReceive
counter and all the other ipInXXX counters is more accurate in the
case the RTN_UNICAST code check fails and (2) it makes the code in
ip_route_input_slow easier.

Signed-off-by: Dietmar Eggemann <dietmar.eggemann@gmx.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 13:06:23 -07:00
YOSHIFUJI Hideaki
ae9cda5d65 [IPV6]: Don't dump temporary addresses twice
Each IPv6 Temporary Address (w/ CONFIG_IPV6_PRIVACY) is dumped twice
to netlink.

Because temporary addresses are listed in idev->addr_list,
there's no need to dump idev->tempaddr separately.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 13:00:30 -07:00
Patrick McHardy
8a47077a0b [NETLINK]: Missing padding fields in dumped structures
Plug holes with padding fields and initialized them to zero.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 12:56:45 -07:00
Patrick McHardy
9ef1d4c7c7 [NETLINK]: Missing initializations in dumped data
Mostly missing initialization of padding fields of 1 or 2 bytes length,
two instances of uninitialized nlmsgerr->msg of 16 bytes length.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 12:55:30 -07:00
Patrick McHardy
b3563c4fbf [NETLINK]: Clear padding in netlink messages
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 12:54:43 -07:00
Harald Welte
4095ebf1e6 [NETFILTER]: ipt_CLUSTERIP: fix ARP mangling
This patch adds mangling of ARP requests (in addition to replies),
since ARP caches are made from snooping both requests and replies.

Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 12:49:30 -07:00
David S. Miller
85c1937b26 [EBTABLES]: Fix thinkos in ebt_log.c
When converting over the skb_header_pointer(), I converted parts of
this module incorrectly.  Kill the 'u' union in ebt_log() and all the
bogus references to it.

Signed-off-by: David S. Miller <davem@davemloft.net>
2005-06-28 12:39:40 -07:00
Linus Torvalds
61998bcb4b Merge head 'upstream-20050628-1' of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev 2005-06-28 10:20:11 -07:00
Jeff Garzik
c36ad397a3 Merge /spare/repo/linux-2.6/ 2005-06-28 00:46:22 -04:00
Tejun Heo
0a139e7997 [PATCH] libata: ahci: remove ata_port_start/stop() calls
This patch removes unnecessary ata_port_start/stop() calls from
ahci_port_start/stop().

Signed-off-by: Tejun Heo <htejun@gmail.com>
2005-06-28 00:08:00 -04:00
Tejun Heo
62ba2841f2 [PATCH] libata: lengthen COMMRESET delay
This patch lengthens the delay between DET setting and clearing for
COMMRESET from 400us to 1ms.  I couldn't find any requiremen regarding
the duration of COMMRESET in SATA I/II specs but AHCI-1.1 10.4.2
states that it should be at least 1ms.

Signed-off-by: Tejun Heo <htejun@gmail.com>
2005-06-28 00:05:57 -04:00
Jeff Garzik
e922256ae4 libata: update DMA blacklist
Contributions from Alan Cox and maximilian attems.
2005-06-28 00:03:37 -04:00
Andrew Morton
99f95e5286 [PATCH] cfq build fix
drivers/block/cfq-iosched.c: In function 'cfq_put_queue':
drivers/block/cfq-iosched.c:303: sorry, unimplemented: inlining failed in call to 'cfq_pending_requests': function body not available
drivers/block/cfq-iosched.c:1080: sorry, unimplemented: called from here
drivers/block/cfq-iosched.c: In function '__cfq_may_queue':
drivers/block/cfq-iosched.c:1955: warning: the address of 'cfq_cfqq_must_alloc_slice', will always evaluate as 'true'
make[1]: *** [drivers/block/cfq-iosched.o] Error 1
make: *** [drivers/block/cfq-iosched.o] Error 2

Cc: Jeff Garzik <jgarzik@pobox.com>
Cc: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 20:31:02 -07:00
Komuro
c903e41e67 drivers/net/at1700: remove incorrect comment
"Allied Telesis RE1000 Plus" is not supported at all
by kernel 2.6.12.

Signed-off-by: komurojun-mbn@nifty.com
2005-06-27 23:23:05 -04:00
Edward Falk
8b2af8f0ca [PATCH] Minor libata documentation patch
I fleshed out libata.tmpl a bit while I was taking notes.
2005-06-27 23:21:00 -04:00
Linus Torvalds
6e5a32754c Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2005-06-27 20:10:18 -07:00
Tobias Klauser
cac8c81a59 [PATCH] Use pci_set_dma_mask() instead of direct assignment of DMA mask
The amd8111e driver directly assigns the DMA mask to the dma_mask
member of the struct pci_dev instead of using pci_set_dma_mask(). This
makes the call to pci_dma_supported() redundant as pci_set_dma_mask()
does this check.

I do not own this device so I only compile-tested this patch.

Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
2005-06-27 23:09:08 -04:00
David Brownell
5f13e7ec5c [PATCH] smc91x needs settable IRQ trigger type
For boards that invert the SMC91x IRQ line (maybe an FPGA inverts it),
the set_irq_type() call can't assume IRQT_RISING.  These particular
boards currently use OMAP-specific calls to change the trigger type,
but the boards break when set_irq_type() stops being a NOP.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
2005-06-27 23:08:09 -04:00
Jeff Garzik
a5fe736eaf Update is_multicast_ether_addr() definition; net/ieee80211.h cleanups. 2005-06-27 22:47:18 -04:00
Jeff Garzik
1bad3f4050 Merge /spare/repo/linux-2.6/ 2005-06-27 22:05:03 -04:00
Dominik Brodowski
b6d00f0de9 [PATCH] ACPI-based PCI resources: PCMCIA bugfix, but resources missing in trees
Don't auto-configure yenta sockets for PCMCIA devices if it is connected to
the root PCI bus on the x86 or x86_64 architectures.  Previously, this was
handled by the "ioport_resource"/"iomem_resource" check a few lines below,
but with the new ACPI-based resource handling this doesn't catch all cases
any longer.

pci-yenta-cardbus-fix.patch and this patch should solve the initialization
time trouble.  However, the ACPI-based PCI resource handling is badly
broken, IMHO:

- many resources of devices don't show up in the resource trees (
  /proc/iomem and /proc/ioports) any longer. This means that PCMCIA, but
  also possibly other subsystems (ISA, PnP, ...) do not know which resources
  it cannot use.

- verify_root_windows() should fail if there are no iomem _or_ ioport
  resources, not only if there are no iomem _and_ ioport resources.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:22 -07:00
Dominik Brodowski
3248ff43f8 [PATCH] pcmcia: export modalias in sysfs
Provide a "modalias" entry in sysfs for PCMCIA devices.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:22 -07:00
Dominik Brodowski
57b6281cea [PATCH] pcmcia: 8 and 16 bit access for static_map
The PCMCIA card services layer is never setting the i/o map attributes when
SS_CAP_STATIC_MAP is specified.  Net result, sockets' set_io_map() calls
always see requests with most flags clear, meaning 8 bit access.

For hardware that always autosizes, that won't matter; and all current
STATIC_MAP drivers ignore those attributes.  A new driver (for at91rm9200)
suffers badly from this, since this forces everything into 8 bit mode and
that breaks both (a) cards requiring 16 bit access, and (b) ide-cs; but of
course 8-bit cards work OK (as does accessing card attributes).

So this patch arranges to pass the attributes down, matching the behavior
for non-static mappings (using the first/only I/O window).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:22 -07:00
Dominik Brodowski
1a8ceafce5 [PATCH] pcmcia: properly handle all errors of register_chrdev
register_chrdev() can return errors (negative) other then -EBUSY, so check
for any negative error code.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:22 -07:00
Jar
a9a55243d4 [PATCH] pcmcia: documentation fix
Fix example hash generator in Documentation.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:22 -07:00
Dominik Brodowski
2ad0a0a793 [PATCH] pcmcia: resource handling fixes
- properly bail out in set_cis_map if call to socket driver's set_mem_map
  failed
- don't abort do_mem_probe cycle if one entry failed (!CONFIG_PCMCIA_PROBE)
- don't do iomem probing in chunks larger than 0x800000 (1 << 23) as
  yenta_socket and vrc4173_cardu.c fail to set_mem_map for windows equal to
  or larger than (1 << 24).

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:21 -07:00
Dominik Brodowski
f861bd2307 [PATCH] pcmcia: select crc32 in Kconfig for PCMCIA
PCMCIA needs CRC32.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:21 -07:00
Dominik Brodowski
aecab27aea [PATCH] pcmcia: mod_devicetable.h fix for different sizes in kernel- and userspace
The size of pointers may differ between (userspace) modpost and (kernelspace)
modules -- so fix mod_devicetable.h to reflect this possibility.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:21 -07:00
Dominik Brodowski
0c7ab67602 [PATCH] pcmcia: synclink_cs IRQ_INFO2_INFO is gone
Remove the IRQ_INFO2_VALID flag in synclink_cs -- I overlooked it when
removing all other users in PCMCIA drivers for 2.6.11.  Thanks to Marcelo
Tosatti for noticing it.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:21 -07:00
Dominik Brodowski
f354942cb3 [PATCH] pcmcia: use request_region in i82365
randy_dunlap <rdunlap@xenotime.net>

Convert deprecated check_region() calls to request/release region.
Add return value check on one request_region().

I suspect that it may do an extra release_region(), which should
generate a warning message from the kernel.

Signed-off-by: randy_dunlap <rdunlap@xenotime.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:21 -07:00
Dominik Brodowski
378a33a686 [PATCH] pcmcia: release_class
Properly wait for the class refcount to reach zero.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:20 -07:00
Dominik Brodowski
3448139b41 [PATCH] pcmcia: ds.c cleanup
Clean up ds.c

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:20 -07:00
Dominik Brodowski
33519ddd43 [PATCH] pcmcia: cs.c cleanup
Clean up cs.c

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:20 -07:00
Dominik Brodowski
1a8d46631e [PATCH] pcmcia: move pcmcia resource handling out of cs.c
Move the 16-bit PCMICA resource handling from pcmcia_core.o to pcmcia.o.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:20 -07:00
Dominik Brodowski
e6ea0b9ec5 [PATCH] pcmcia: rename some functions
Rename some functions in drivers/pcmcia/ to show they belong to the PCMCIA
subsystem.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:19 -07:00
Dominik Brodowski
3b659fb862 [PATCH] pcmcia: remove unneeded includes in ds.c
Remove unnecessary includes in ds.c and pcmcia_ioctl.c

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:19 -07:00
Dominik Brodowski
dc109497bd [PATCH] pcmcia: merge struct pcmcia_bus_socket into struct pcmcia_socket
Merge struct pcmcia_bus_socket into struct pcmcia_socket.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:19 -07:00
Dominik Brodowski
b5e43913cf [PATCH] pcmcia: make PCMCIA status a bitfield
make pcmcia_bus_socket->state a bitfield, and rename it pcmcia_state to
prepare for struct pcmcia_bus_socket integration into struct pcmcia_socket.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:19 -07:00
Dominik Brodowski
90c6cdd1fa [PATCH] pcmcia: clean up cs ds callback
struct pcmcia_callback isn't needed for each socket, one is enough for all
sockets.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:19 -07:00
Dominik Brodowski
e7a480d229 [PATCH] pcmcia: move PCMCIA ioctl to a separate file
Move all PCMCIA_IOCTL-related code to a different file.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>

From: Richard Purdie <rpurdie@rpsys.net>

The pcmcia-move-pcmcia-ioctl-to-a-separate-file patch was corrupted in -mm2
causing this problem.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:18 -07:00
Dominik Brodowski
9a5555b81f [PATCH] pcmcia: add a config option for the PCMICA ioctl
Add a new config option to control the building of the PCMCIA IOCTL. Currently,
it is not yet made public, though the help text is there already.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowksi.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-27 18:03:18 -07:00