Eric Dumazet [Fri, 20 Oct 2006 07:28:35 +0000 (00:28 -0700)]
[IPV4] inet_peer: Group together avl_left, avl_right, v4daddr to speedup lookups on some CPUS
Lot of routers/embedded devices still use CPUS with 16/32 bytes cache
lines. (486, Pentium, ... PIII) It makes sense to group together
fields used at lookup time so they fit in one cache line. This reduce
cache footprint and speedup lookups.
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric Dumazet [Fri, 20 Oct 2006 07:22:25 +0000 (00:22 -0700)]
[TCP]: One NET_INC_STATS() could be NET_INC_STATS_BH in tcp_v4_err()
I believe this NET_INC_STATS() call can be replaced by
NET_INC_STATS_BH(), a little bit cheaper.
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Björn Steinbrink [Fri, 20 Oct 2006 07:21:10 +0000 (00:21 -0700)]
[NETFILTER]: Missing check for CAP_NET_ADMIN in iptables compat layer
The 32bit compatibility layer has no CAP_NET_ADMIN check in
compat_do_ipt_get_ctl, which for example allows to list the current
iptables rules even without having that capability (the non-compat
version requires it). Other capabilities might be required to exploit
the bug (eg. CAP_NET_RAW to get the nfnetlink socket?), so a plain user
can't exploit it, but a setup actually using the posix capability system
might very well hit such a constellation of granted capabilities.
Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stephen Hemminger [Fri, 20 Oct 2006 06:58:23 +0000 (23:58 -0700)]
[NETPOLL]: initialize skb for UDP
Need to fully initialize skb to keep lower layers and queueing happy.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Thu, 19 Oct 2006 04:20:57 +0000 (21:20 -0700)]
[IPV6]: Fix route.c warnings when multiple tables are disabled.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Thu, 19 Oct 2006 03:56:06 +0000 (20:56 -0700)]
[TG3]: Bump driver version and release date.
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan [Thu, 19 Oct 2006 03:55:18 +0000 (20:55 -0700)]
[TG3]: Add lower bound checks for tx ring size.
The minimum tx ring size must be greater than MAX_SKB_FRAGS or 3
times that on some chips with TSO bugs.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ranjit Manomohan [Thu, 19 Oct 2006 03:54:26 +0000 (20:54 -0700)]
[TG3]: Fix set ring params tx ring size implementation
Fixes the implementation of the ethtool set ring parameters for the
tg3 transmit ring. The size of tx_pending is taken into account
before doing a netif_wake_queue. This prevents the interface from
locking up when smaller transmit ring sizes are used.
Signed-off-by: Ranjit Manomohan <ranjitm@google.com>
Acked-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric Dumazet [Thu, 19 Oct 2006 03:51:57 +0000 (20:51 -0700)]
[NET]: reduce per cpu ram used for loopback stats
We dont need a full struct net_device_stats (currently 23 long : 184 bytes on
x86_64) per possible CPU, but only two counters : bytes and packets
We save few CPU cycles too in loopback_xmit() not updating 4 fields, but 2.
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Thomas Graf [Thu, 19 Oct 2006 03:46:54 +0000 (20:46 -0700)]
[IPv6] route: Fix prohibit and blackhole routing decision
Lookups resolving to ip6_blk_hole_entry must result in silently
discarding the packets whereas an ip6_pkt_prohibit_entry is
supposed to cause an ICMPV6_ADM_PROHIBITED message to be sent.
Thanks to Kim Nordlund <kim.nordlund@nokia.com> for noticing
this bug.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Steven Whitehouse [Thu, 19 Oct 2006 03:45:22 +0000 (20:45 -0700)]
[DECNET]: Fix input routing bug
This patch fixes a silly bug that has been in the input routing code
for some time. It results in trying to send to a node directly when
the origin of the packet is via the default router.
Its been tested by Alan Kemmerer <alan.kemmerer@mittalsteel.com> who
reported the bug and its a fairly obvious fix for a typo.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Signed-off-by: Patrick Caulfield <patrick@tykepenguin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
John Heffner [Thu, 19 Oct 2006 03:36:48 +0000 (20:36 -0700)]
[TCP]: Bound TSO defer time
This patch limits the amount of time you will defer sending a TSO segment
to less than two clock ticks, or the time between two acks, whichever is
longer.
On slow links, deferring causes significant bursts. See attached plots,
which show RTT through a 1 Mbps link with a 100 ms RTT and ~100 ms queue
for (a) non-TSO, (b) currnet TSO, and (c) patched TSO. This burstiness
causes significant jitter, tends to overflow queues early (bad for short
queues), and makes delay-based congestion control more difficult.
Deferring by a couple clock ticks I believe will have a relatively small
impact on performance.
Signed-off-by: John Heffner <jheffner@psc.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Thomas Graf [Thu, 19 Oct 2006 03:26:36 +0000 (20:26 -0700)]
[IPv4] fib: Remove unused fib_config members
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:14:26 +0000 (22:14 -0700)]
[IPV6]: Always copy rt->u.dst.error when copying a rt6_info.
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:12:21 +0000 (22:12 -0700)]
[IPV6]: Make IPV6_SUBTREES depend on IPV6_MULTIPLE_TABLES.
As IPV6_SUBTREES can't work without IPV6_MULTIPLE_TABLES have IPV6_SUBTREES
depend on it.
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:11:11 +0000 (22:11 -0700)]
[IPV6]: Clean up BACKTRACK().
The fn check is unnecessary as fn can never be NULL in BACKTRACK().
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:10:05 +0000 (22:10 -0700)]
[IPV6]: Make sure error handling is done when calling ip6_route_output().
As ip6_route_output() never returns NULL, error checking must be done by
looking at dst->error in stead of comparing dst against NULL.
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:08:28 +0000 (22:08 -0700)]
[SCTP]: Fix minor typo
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ville Nuorvala [Tue, 17 Oct 2006 05:05:55 +0000 (22:05 -0700)]
[IPV6]: Remove struct pol_chain.
Struct pol_chain has existed since at least the 2.2 kernel, but isn't used
anymore. As the IPv6 policy routing is implemented in a totally different
way in the current kernel, just get rid of it.
Signed-off-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 05:01:32 +0000 (22:01 -0700)]
[TIPC]: Updated TIPC version number to 1.6.2
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 05:00:56 +0000 (22:00 -0700)]
[TIPC]: Unrecognized configuration command now returns error message
This patch causes TIPC to return an error message when it receives
an unrecognized configuration command. (Previously, the sender
received no feedback.)
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Lijun Chen [Tue, 17 Oct 2006 04:59:42 +0000 (21:59 -0700)]
[TIPC]: Added subscription cancellation capability
This patch allows a TIPC application to cancel an existing
topology service subscription by re-requesting the subscription
with the TIPC_SUB_CANCEL filter bit set. (All other bits of
the cancel request must match the original subscription request.)
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:57:56 +0000 (21:57 -0700)]
[TIPC]: Can now list multicast link on an isolated network node
This patch fixes a minor bug that prevents "tipc-config -l" from
displaying the multicast link if a TIPC node has never successfully
established at least one unicast link.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:57:13 +0000 (21:57 -0700)]
[TIPC]: Fixed slow link reactivation when link tolerance is large
This patch corrects an issue wherein a previouly failed node could
not reestablish a links to a non-failing node in the TIPC network
until the latter node detected the link failure itself (which might
be configured to take up to 30 seconds). The non-failing node now
responds to link setup requests from a previously failed node in at
most 1 second, allowing it to detect the link failure more quickly.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:56:04 +0000 (21:56 -0700)]
[TIPC]: Name publication events now delivered in chronological order
This patch tivially re-orders the entries in TIPC's list of local
publications so that applications will receive publication events
in the order they were published.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:50:20 +0000 (21:50 -0700)]
[TIPC]: Add support for Ethernet VLANs
This patch enhances TIPC's Ethernet support to include VLAN interfaces.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:49:03 +0000 (21:49 -0700)]
[TIPC]: Remove code bloat introduced by print buffer rework
This patch allows the compiler to optimize out any code that tries to
send debugging output to the null print buffer (TIPC_NULL), a capability
that was unintentionally broken during the recent print buffer rework.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:47:18 +0000 (21:47 -0700)]
[TIPC]: Optimize wakeup logic when socket has no waiting processes
This patch adds a simple test so TIPC doesn't try waking up processes
waiting on a socket if there are none waiting.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:44:59 +0000 (21:44 -0700)]
[TIPC]: Added duplicate node address detection capability
TIPC now rejects and logs link setup requests from node <Z.C.N> if the
receiving node already has a functional link to that node on the associated
interface, or if the requestor is using the same <Z.C.N> as the receiver.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:43:54 +0000 (21:43 -0700)]
[TIPC]: Stream socket can now send > 66000 bytes at a time
The stream socket send code was not initializing some required fields
of the temporary msghdr structure it was utilizing; this is now fixed.
A check has also been added to detect if a user illegally specifies
a destination address when sending on an established stream connection.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:42:04 +0000 (21:42 -0700)]
[TIPC]: Debug print buffer enhancements and fixes
This change modifies TIPC's print buffer code as follows:
1) Now supports small print buffers (min. size reduced from 512 bytes to 64)
2) Now uses TIPC_NULL print buffer structure to indicate null device
instead of NULL pointer (this simplified error handling)
3) Fixed misuse of console buffer structure by tipc_dump()
4) Added and corrected comments in various places
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan Stephens [Tue, 17 Oct 2006 04:38:05 +0000 (21:38 -0700)]
[TIPC]: Add missing unlock in port timeout code.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Thu, 19 Oct 2006 01:30:00 +0000 (18:30 -0700)]
Merge branch 'ubuntu-updates' of /linux/kernel/git/bcollins/ubuntu-2.6
* 'ubuntu-updates' of master.kernel.org:/pub/scm/linux/kernel/git/bcollins/ubuntu-2.6:
[pci_ids] Add Quicknet XJ vendor/device ID's.
[valkyriefb] Ifdef for when CONFIG_NVRAM isn't enabled.
[platinumfb] Ifdef for when CONFIG_NVRAM isn't enabled.
[igafb] Add pci dev table for module auto loading.
[controlfb] Ifdef for when CONFIG_NVRAM isn't enabled.
[hid-core] TurboX Keyboard needs NOGET quirk.
[ixj] Add pci dev table for module auto loading.
[initio] Add pci dev table for module auto loading.
[fdomain] Add pci dev table for module auto loading.
[BusLogic] Add pci dev table for auto module loading.
[mv643xx] Add pci device table for auto module loading.
[alim7101] Add pci dev table for auto module loading.
Linus Torvalds [Thu, 19 Oct 2006 00:52:27 +0000 (17:52 -0700)]
Merge git://git./linux/kernel/git/gregkh/hwmon-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/hwmon-2.6:
hwmon: Fix debug messages in w83781d
hwmon: Let w83781d and lm78 load again
w83627ehf: Fix the detection of fan5
k8temp: Documentation update
smsc47m1: List the SMSC LPC47M112 as supported
hwmon: Fix documentation typos
adm9240: Update Grant Coady's email address
w83791d: Fix unchecked return status
Linus Torvalds [Thu, 19 Oct 2006 00:51:05 +0000 (17:51 -0700)]
Merge git://git./linux/kernel/git/gregkh/aoe-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/aoe-2.6:
aoe: fix sysfs_create_file warnings
aoe: revert printk macros
aoe: update driver version
aoe: remove sysfs comment
aoe: use bio->bi_idx
aoe: module parameter for device timeout
aoe: zero copy write 2 of 2
aoe: improve retransmission heuristics
aoe: jumbo frame support 2 of 2
aoe: clean up printks via macros
aoe: jumbo frame support 1 of 2
aoe: zero copy write 1 of 2
aoe: remove unused NARGS enum
aoe: update copyright date
aoe: eliminate isbusy message
Linus Torvalds [Thu, 19 Oct 2006 00:50:40 +0000 (17:50 -0700)]
Merge git://git./linux/kernel/git/gregkh/pci-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6: (22 commits)
PCI Hotplug: move pci_hotplug.h to include/linux/
change pci hotplug subsystem maintainer to Kristen
PCI: optionally sort device lists breadth-first
cpcihp_generic: prevent loading without "bridge" parameter
pci: Additional search functions
PCI: quirks: switch quirks code offender to use pci_get API
PCI: Update MSI-HOWTO.txt according to pci_msi_supported()
PCI: Improve pci_msi_supported() comments
PCI hotplug: ioremap balanced with iounmap
shpchp: remove unnecessary cmd_busy member from struct controller
shpchp: fix command completion check
pci: Stamp out pci_find_* usage in fakephp
PCI: fix pcie_portdrv_restore_config undefined without CONFIG_PM error
Fix DMA resource allocation in ACPIPnP
PCI: Turn pci_fixup_video into generic for embedded VGA
PCI: add ICH7/8 ACPI/GPIO io resource quirks
PCI: pcie-check-and-return-bus_register-errors fix
PCI: VIA IRQ quirk behaviour change
pciehp: Remove unnecessary check in pciehp_ctrl.c
pciehp - add missing locking
...
Linus Torvalds [Thu, 19 Oct 2006 00:50:16 +0000 (17:50 -0700)]
Merge git://git./linux/kernel/git/gregkh/driver-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
driver core: kmalloc() failure check in driver_probe_device
Driver core: bus: remove indentation level
Driver core: Don't ignore error returns from probing
Driver core: Don't leak 'old_class_name' in drivers/base/core.c::device_rename()
driver core fixes: sysfs_create_group() retval in topology.c
driver core fixes: device_create_file() retval check in dmapool.c
driver core fixes: device_add() cleanup on error
driver core fixes: bus_add_device() cleanup on error
driver core fixes: bus_add_attrs() retval check
driver core fixes: sysfs_create_link() retval check in class.c
sysfs: update obsolete comment in sysfs_update_file
sysfs: remove duplicated dput in sysfs_update_file
HOWTO: bug report addition
Fix dev_printk() is now GPL-only
Driver core: plug device probe memory leak
Documentation: feature-removal-schedule typo
Linus Torvalds [Thu, 19 Oct 2006 00:49:42 +0000 (17:49 -0700)]
Merge branch 'for-linus' of git://git390.osdl.marist.edu/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] update default configuration
[S390] cio: update documentation.
[S390] dasd: clean up timer.
[S390] Fix pte type checking.
[S390] monwriter find header logic.
[S390] cio: sch_no -> schid.sch_no conversion.
[S390] Wire up epoll_pwait syscall.
[S390] cio: invalid device operational notification
[S390] fix vmlinux link when CONFIG_SYSIPC=n
Linus Torvalds [Thu, 19 Oct 2006 00:49:19 +0000 (17:49 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
[IA64] Count resched interrupts
[IA64] remove unused acpi_kbd_controller_present, acpi_legacy_devices
[IA64] update sn2_defconfig
[IA64] reformat pal.S to fit in 80 columns, fix typos
[IA64] remove unused PAL_CALL_IC_OFF
[IA64] - Allow IPIs in timer loop
[IA64] move ioremap/ioremap_nocache under __KERNEL__
[IA64] perfmon fix for global IRQ fix
Jean Delvare [Fri, 13 Oct 2006 15:03:42 +0000 (17:03 +0200)]
hwmon: Fix debug messages in w83781d
Fix debug messages in w83781d at detection time. We can't use dev_dbg()
on an i2c client's device before calling i2c_attach_client() on that
client.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jean Delvare [Fri, 13 Oct 2006 14:56:28 +0000 (16:56 +0200)]
hwmon: Let w83781d and lm78 load again
Let the w83781d and lm78 hardware monitoring drivers load even when
no chip was detected at the ISA address. There can still be supported
chips connected to an I2C bus or SMBus.
This fixes bug #7293.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Rudolf Marek [Sun, 8 Oct 2006 20:02:09 +0000 (22:02 +0200)]
w83627ehf: Fix the detection of fan5
Fix the detection of fan5 and preserve the bit between the
register writes, because the bit is write only.
Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Rudolf Marek [Sun, 8 Oct 2006 20:01:26 +0000 (22:01 +0200)]
k8temp: Documentation update
Update the documentation for the k8temp driver.
Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jean Delvare [Sun, 8 Oct 2006 20:00:44 +0000 (22:00 +0200)]
smsc47m1: List the SMSC LPC47M112 as supported
The SMSC LPC47M112 Super-I/O chip appears to be compatible with the
LPC47M10x and LPC47M13x as far as hardware monitoring is concerned.
The device ID is even the same, so it's really only a documentation
update.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jean Delvare [Sun, 8 Oct 2006 19:59:54 +0000 (21:59 +0200)]
hwmon: Fix documentation typos
Fix typos in hardware monitoring documentation.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Grant Coady [Sun, 8 Oct 2006 19:57:41 +0000 (21:57 +0200)]
adm9240: Update Grant Coady's email address
Replace a bouncing email that I cannot recover from Mr Google.
Signed-off-by: Grant Coady <gcoady.lk@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jim Cromie [Sun, 8 Oct 2006 19:56:29 +0000 (21:56 +0200)]
w83791d: Fix unchecked return status
Replace all unchecked calls to device_create_file with a single group
declaration, and one call to sysfs_create_group, and check that one
return status. Also remove the files on device detach.
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
Signed-off by: Charles Spirakis <bezaur@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Tue, 9 Apr 2002 19:14:34 +0000 (12:14 -0700)]
aoe: fix sysfs_create_file warnings
Moved the attributes into a group, making the compiler be quiet about
ignoring the return value of the file create calls. This also also
fixed a bug when removing the files, which were not symlinks.
Cc: "Ed L. Cashin" <ecashin@coraid.com>
Cc: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:51 +0000 (14:36 -0400)]
aoe: revert printk macros
This patch addresses the concern that the aoe driver should
not introduce unecessary conventions that must be learned by
the reader. It reverts patch 6.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:51 +0000 (14:36 -0400)]
aoe: update driver version
Update aoe driver version number to 32.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:51 +0000 (14:36 -0400)]
aoe: remove sysfs comment
Remove unecessary comment.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:50 +0000 (14:36 -0400)]
aoe: use bio->bi_idx
Instead of starting with bio->bi_io_vec, use the offset in bio->bi_idx.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:50 +0000 (14:36 -0400)]
aoe: module parameter for device timeout
The aoe_deadsecs module parameter sets the number of seconds that
elapse before a nonresponsive AoE device is marked as dead.
This is runtime settable in sysfs or settable with a module load or
kernel boot parameter.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: zero copy write 2 of 2
Avoid memory copy on writes.
(This patch follows patch 4.)
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: improve retransmission heuristics
Add a dynamic minimum timer for better retransmission behavior.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: jumbo frame support 2 of 2
Add support for jumbo ethernet frames.
(This patch follows patch 5.)
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: clean up printks via macros
Use simple macros to clean up the printks.
(This patch is reverted by the 14th patch to follow.)
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: jumbo frame support 1 of 2
Add support for jumbo ethernet frames.
(This patch depends on patch 7 to follow.)
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:49 +0000 (14:36 -0400)]
aoe: zero copy write 1 of 2
Avoid memory copy on writes.
(This patch depends on fixes in patch 9 to follow.)
Although skb->len should not be set when working with linear skbuffs,
the skb->tail pointer maintained by skb_put/skb_trim is not relevant
to what happens when the skb_fill_page_desc function is called. This
issue was raised without comment in linux-kernel and netdev earlier
this month:
http://thread.gmane.org/gmane.linux.kernel/446474/
http://thread.gmane.org/gmane.linux.network/45444/
So until there is something analogous to skb_put that works for
zero-copy write skbuffs, we will do what the other callers of
skb_fill_page_desc are doing.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:48 +0000 (14:36 -0400)]
aoe: remove unused NARGS enum
The NARGS enum is left over from older code versions.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:36:48 +0000 (14:36 -0400)]
aoe: update copyright date
Update the copyright year to 2006.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Ed L. Cashin [Wed, 20 Sep 2006 18:34:41 +0000 (14:34 -0400)]
aoe: eliminate isbusy message
This message doesn't help users because the circumstance isn't problematic.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Akinobu Mita [Mon, 9 Oct 2006 09:04:30 +0000 (18:04 +0900)]
driver core: kmalloc() failure check in driver_probe_device
driver_probe_device() is missing kmalloc() failure check.
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jeff Garzik [Wed, 4 Oct 2006 11:48:03 +0000 (07:48 -0400)]
Driver core: bus: remove indentation level
Before potentially fixing up these functions, this cosmetic change
reduces the indentation level to make the code easier to read and
maintain.
No functional changes at all.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Thu, 5 Oct 2006 21:03:24 +0000 (17:03 -0400)]
Driver core: Don't ignore error returns from probing
This patch (as797) fixes device_add() in the driver core. It needs to
pay attention when the driver for a new device reports an error.
At the same time, since bus_remove_device() undoes the effects of both
bus_add_device() and bus_attach_device(), it needs to check whether
the bus_attach_device step failed.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Jesper Juhl [Thu, 28 Sep 2006 21:56:01 +0000 (23:56 +0200)]
Driver core: Don't leak 'old_class_name' in drivers/base/core.c::device_rename()
If kmalloc() fails to allocate space for 'old_symlink_name' in
drivers/base/core.c::device_rename(), then we'll leak 'old_class_name'.
Spotted by the Coverity checker.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:32 +0000 (11:37 +0200)]
driver core fixes: sysfs_create_group() retval in topology.c
Return the return value of sysfs_create_group() in topology_add_dev().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:27 +0000 (11:37 +0200)]
driver core fixes: device_create_file() retval check in dmapool.c
Check for device_create_file() return value in dma_pool_create().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:13 +0000 (11:37 +0200)]
driver core fixes: device_add() cleanup on error
Check for return code of device_create_file() and correct cleanup in
the error case in device_add().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:08 +0000 (11:37 +0200)]
driver core fixes: bus_add_device() cleanup on error
Correct cleanup in the error path of bus_add_device().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:04 +0000 (11:37 +0200)]
driver core fixes: bus_add_attrs() retval check
Check return value of bus_add_attrs() in bus_register().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Cornelia Huck [Fri, 22 Sep 2006 09:37:00 +0000 (11:37 +0200)]
driver core fixes: sysfs_create_link() retval check in class.c
Check for return value of sysfs_create_link() in class_device_add().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Hidetoshi Seto [Wed, 20 Sep 2006 07:49:02 +0000 (16:49 +0900)]
sysfs: update obsolete comment in sysfs_update_file
And the obsolete comment should be updated (or totally removed).
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Hidetoshi Seto [Wed, 20 Sep 2006 07:38:00 +0000 (16:38 +0900)]
sysfs: remove duplicated dput in sysfs_update_file
Following function can drops d_count twice against one reference
by lookup_one_len.
<SOURCE>
/**
* sysfs_update_file - update the modified timestamp on an object attribute.
* @kobj: object we're acting for.
* @attr: attribute descriptor.
*/
int sysfs_update_file(struct kobject * kobj, const struct attribute * attr)
{
struct dentry * dir = kobj->dentry;
struct dentry * victim;
int res = -ENOENT;
mutex_lock(&dir->d_inode->i_mutex);
victim = lookup_one_len(attr->name, dir, strlen(attr->name));
if (!IS_ERR(victim)) {
/* make sure dentry is really there */
if (victim->d_inode &&
(victim->d_parent->d_inode == dir->d_inode)) {
victim->d_inode->i_mtime = CURRENT_TIME;
fsnotify_modify(victim);
/**
* Drop reference from initial sysfs_get_dentry().
*/
dput(victim);
res = 0;
} else
d_drop(victim);
/**
* Drop the reference acquired from sysfs_get_dentry() above.
*/
dput(victim);
}
mutex_unlock(&dir->d_inode->i_mutex);
return res;
}
</SOURCE>
PCI-hotplug (drivers/pci/hotplug/pci_hotplug_core.c) is only user of
this function. I confirmed that dentry of /sys/bus/pci/slots/XXX/*
have negative d_count value.
This patch removes unnecessary dput().
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Acked-by: Maneesh Soni <maneesh@in.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diego Calleja [Thu, 21 Sep 2006 20:37:10 +0000 (22:37 +0200)]
HOWTO: bug report addition
I suspect that not many people is subscribed to the bugzilla mailing list,
not surprising since the URLs doesn't seem to be in the tree :)
After fixing my english, I wonder if the following patch could be applied...
Signed-off-by: Diego Calleja <diegocg@gmail.com>
Acked-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Matthew Wilcox [Sun, 24 Sep 2006 05:35:04 +0000 (23:35 -0600)]
Fix dev_printk() is now GPL-only
Make dev_printk usable from non-GPL modules again
dev_printk now calls dev_driver_string. We want even proprietary modules
to be calling dev_printk, so the export of dev_driver_string needs to be
non-GPL-only.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Duncan Sands [Wed, 27 Sep 2006 21:38:08 +0000 (23:38 +0200)]
Driver core: plug device probe memory leak
Make sure data is freed if the kthread fails to start.
Signed-off-by: Duncan Sands <baldrick@free.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Dominik Brodowski [Sun, 1 Oct 2006 02:41:43 +0000 (22:41 -0400)]
Documentation: feature-removal-schedule typo
Fix typo in newly added feature remove schedule item.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Greg Kroah-Hartman [Sat, 14 Oct 2006 03:05:19 +0000 (20:05 -0700)]
PCI Hotplug: move pci_hotplug.h to include/linux/
This makes it possible to build pci hotplug drivers outside of the main
kernel tree, and Sam keeps telling me to move local header files to
their proper places...
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kristen Carlson Accardi [Fri, 29 Sep 2006 17:30:27 +0000 (10:30 -0700)]
change pci hotplug subsystem maintainer to Kristen
Here's a patch adding me to the maintainers file for the pci
hotplug subsystem, as we discussed.
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Matt Domsch [Fri, 29 Sep 2006 20:23:23 +0000 (15:23 -0500)]
PCI: optionally sort device lists breadth-first
Problem:
New Dell PowerEdge servers have 2 embedded ethernet ports, which are
labeled NIC1 and NIC2 on the chassis, in the BIOS setup screens, and
in the printed documentation. Assuming no other add-in ethernet ports
in the system, Linux 2.4 kernels name these eth0 and eth1
respectively. Many people have come to expect this naming. Linux 2.6
kernels name these eth1 and eth0 respectively (backwards from
expectations). I also have reports that various Sun and HP servers
have similar behavior.
Root cause:
Linux 2.4 kernels walk the pci_devices list, which happens to be
sorted in breadth-first order (or pcbios_find_device order on i386,
which most often is breadth-first also). 2.6 kernels have both the
pci_devices list and the pci_bus_type.klist_devices list, the latter
is what is walked at driver load time to match the pci_id tables; this
klist happens to be in depth-first order.
On systems where, for physical routing reasons, NIC1 appears on a
lower bus number than NIC2, but NIC2's bridge is discovered first in
the depth-first ordering, NIC2 will be discovered before NIC1. If the
list were sorted breadth-first, NIC1 would be discovered before NIC2.
A PowerEdge 1955 system has the following topology which easily
exhibits the difference between depth-first and breadth-first device
lists.
-[0000:00]-+-00.0 Intel Corporation 5000P Chipset Memory Controller Hub
+-02.0-[0000:03-08]--+-00.0-[0000:04-07]--+-00.0-[0000:05-06]----00.0-[0000:06]----00.0 Broadcom Corporation NetXtreme II BCM5708S Gigabit Ethernet (labeled NIC2, 2.4 kernel name eth1, 2.6 kernel name eth0)
+-1c.0-[0000:01-02]----00.0-[0000:02]----00.0 Broadcom Corporation NetXtreme II BCM5708S Gigabit Ethernet (labeled NIC1, 2.4 kernel name eth0, 2.6 kernel name eth1)
Other factors, such as device driver load order and the presence of
PCI slots at various points in the bus hierarchy further complicate
this problem; I'm not trying to solve those here, just restore the
device order, and thus basic behavior, that 2.4 kernels had.
Solution:
The solution can come in multiple steps.
Suggested fix #1: kernel
Patch below optionally sorts the two device lists into breadth-first
ordering to maintain compatibility with 2.4 kernels. It adds two new
command line options:
pci=bfsort
pci=nobfsort
to force the sort order, or not, as you wish. It also adds DMI checks
for the specific Dell systems which exhibit "backwards" ordering, to
make them "right".
Suggested fix #2: udev rules from userland
Many people also have the expectation that embedded NICs are always
discovered before add-in NICs (which this patch does not try to do).
Using the PCI IRQ Routing Table provided by system BIOS, it's easy to
determine which PCI devices are embedded, or if add-in, which PCI slot
they're in. I'm working on a tool that would allow udev to name
ethernet devices in ascending embedded, slot 1 .. slot N order,
subsort by PCI bus/dev/fn breadth-first. It'll be possible to use it
independent of udev as well for those distributions that don't use
udev in their installers.
Suggested fix #3: system board routing rules
One can constrain the system board layout to put NIC1 ahead of NIC2
regardless of breadth-first or depth-first discovery order. This adds
a significant level of complexity to board routing, and may not be
possible in all instances (witness the above systems from several
major manufacturers). I don't want to encourage this particular train
of thought too far, at the expense of not doing #1 or #2 above.
Feedback appreciated. Patch tested on a Dell PowerEdge 1955 blade
with 2.6.18.
You'll also note I took some liberty and temporarily break the klist
abstraction to simplify and speed up the sort algorithm. I think
that's both safe and appropriate in this instance.
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Akinobu Mita [Fri, 13 Oct 2006 18:07:30 +0000 (03:07 +0900)]
cpcihp_generic: prevent loading without "bridge" parameter
cpcihp_generic module requires configured "bridge" module parameter.
But it can be loaded successfully without that parameter.
Because module init call ends up returning positive value.
This patch prevents from loading without setting "bridge" module parameter.
Signed-off-by: Akinbou Mita <akinobu.mita@gmail.com>
Signed-off-by: Scott Murray <scottm@somanetworks.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Cox [Mon, 16 Oct 2006 23:20:21 +0000 (16:20 -0700)]
pci: Additional search functions
In order to finish converting to pci_get_* interfaces we need to add a couple
of bits of missing functionaility
pci_get_bus_and_slot() provides the equivalent to pci_find_slot()
(pci_get_slot is already taken as a name for something similar but not the
same)
pci_get_device_reverse() is the equivalent of pci_find_device_reverse but
refcounting
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Cox [Tue, 10 Oct 2006 21:39:00 +0000 (14:39 -0700)]
PCI: quirks: switch quirks code offender to use pci_get API
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Brice Goglin [Thu, 5 Oct 2006 08:24:42 +0000 (10:24 +0200)]
PCI: Update MSI-HOWTO.txt according to pci_msi_supported()
Update MSI-HOWTO.txt according to pci_msi_supported().
Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Brice Goglin [Thu, 5 Oct 2006 08:24:31 +0000 (10:24 +0200)]
PCI: Improve pci_msi_supported() comments
Improve pci_msi_supported() comments.
Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Amol Lad [Thu, 5 Oct 2006 06:37:32 +0000 (12:07 +0530)]
PCI hotplug: ioremap balanced with iounmap
1. ioremap must be balanced by an iounmap and failing to do so can
result in a memory leak.
2. Handle return value correctly
Tested (compilation only) with:
- allmodconfig
Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kenji Kaneshige [Thu, 28 Sep 2006 22:51:36 +0000 (15:51 -0700)]
shpchp: remove unnecessary cmd_busy member from struct controller
This patch removes unnecessary cmd_busy member from struct
controller. Read command status register instead of using cmd_busy.
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kenji Kaneshige [Thu, 28 Sep 2006 22:51:21 +0000 (15:51 -0700)]
shpchp: fix command completion check
This patch fixes the problem that shpchp driver could mis-detect
command failures if the system was under heavy load.
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Cox [Fri, 29 Sep 2006 17:36:15 +0000 (18:36 +0100)]
pci: Stamp out pci_find_* usage in fakephp
pci_find is not hotplug safe, so it really doesn't want to be in an
actual hotplug driver either.
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Zhang, Yanmin [Thu, 28 Sep 2006 06:35:59 +0000 (14:35 +0800)]
PCI: fix pcie_portdrv_restore_config undefined without CONFIG_PM error
On Thu, 2006-09-28 at 03:42, Olaf Hering wrote:
> PCI-Express AER implemetation: pcie_portdrv error handler
>
> This patch breaks if CONFIG_PM is not enabled,
> pcie_portdrv_restore_config() will be undefined.
I move the definition of pcie_portdrv_restore_config
out of CONFIG_PM.
Below patch is against 2.6.18-mm1. Could you try it?
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Vojtech Pavlik [Fri, 7 Apr 2006 18:00:27 +0000 (20:00 +0200)]
Fix DMA resource allocation in ACPIPnP
The ACPIPnP implementation had the understanding of Linux resource flags very
wrong, resulting in a nonfunctional implementation of DMA resource
allocation.
This was usually not a problem, since almost no on-board PnP devices use ISA
DMA, with the exception of ECP parallel ports. Even with that, parallel port
DMA is preconfigured by the BIOS, so this routine isn't normally called.
Except in the case where somebody does 'rmmod parport_pc; modprobe
parport_pc', where the rmmod case disables the ECP parallel port resources,
and they need to be enabled again to initialize the module. This didn't
work, resulting in a non-printing printer.
The application doing exactly the above to force reprobing of printers is
the YaST printer module. Thus without this fix YaST wedged the printer when
configuring it, and was not able to print a test page.
Reported-by: Ralf Flaxa <rf@suse.de>
Reproduced-by: Jiri Dluhos <jdluhos@suse.cz>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
eiichiro.oiwa.nm@hitachi.com [Thu, 28 Sep 2006 04:55:47 +0000 (13:55 +0900)]
PCI: Turn pci_fixup_video into generic for embedded VGA
pci_fixup_video turns into generic code because there are many platforms need this fixup
for embedded VGA as well as x86. The Video BIOS integrates into System BIOS on a machine
has embedded VGA although embedded VGA generally don't have PCI ROM. As a result,
embedded VGA need the way that the sysfs rom points to the Video BIOS of System
RAM (0xC0000). PCI-to-PCI Bridge Architecture specification describes the condition whether
or not PCI ROM forwards VGA compatible memory address. fixup_video suits this specification.
Although the Video ROM generally implements in x86 code regardless of platform, some
application such as X Window System can run this code by dosemu86. Therefore,
pci_fixup_video should turn into generic code.
Signed-off-by: Eiichiro Oiwa <eiichiro.oiwa.nm@hitachi.com>
Acked-by: Alan Cox <alan@redhat.com>
Acked-by: Jesse Barnes <jesse.barnes@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Daniel Ritz [Mon, 25 Sep 2006 23:52:21 +0000 (16:52 -0700)]
PCI: add ICH7/8 ACPI/GPIO io resource quirks
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andrew Morton [Mon, 25 Sep 2006 23:52:20 +0000 (16:52 -0700)]
PCI: pcie-check-and-return-bus_register-errors fix
__must_check goes on the declaration, not the definition.
Cc: "Randy.Dunlap" <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Daniel Drake [Mon, 25 Sep 2006 23:52:19 +0000 (16:52 -0700)]
PCI: VIA IRQ quirk behaviour change
The most recent VIA IRQ quirk changes have broken various VIA devices for
some users. We are not able to add these devices to the blacklist as they
are also available in PCI-card form, and running the quirk on these devices
brings us back to square one (running the VIA quirk on non-VIA boards where
the quirk is not needed).
This patch, based on suggestions from Sergey Vlasov, implements a scheme
similar to but more restrictive than the scheme we had in 2.6.16 and
earlier. It runs the quirk on all VIA hardware, but *only* if a VIA
southbridge was detected on the system.
To further reduce the amount of quirked devices, this patch includes a
change suggested by Linus at http://lkml.org/lkml/2005/9/27/113 This
ensures that devices bound to non-legacy IO-APIC interrupt lines are not
quirked. We have made one change to Linus' suggestion: we do a comparison
of ">15" rather than ">=15", as 15 is still in the legacy interrupt range.
There is still a downside to this patch: if the user inserts a VIA PCI card
into a VIA-based motherboard, in some circumstances the quirk will also run
on the VIA PCI card. This corner case is hard to avoid.
Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Eric Sesterhenn [Sun, 24 Sep 2006 22:56:53 +0000 (00:56 +0200)]
pciehp: Remove unnecessary check in pciehp_ctrl.c
this was spotted by coverity (cid #819). We dereference p_slot
earlier in the function, and i found no way it could become NULL
anywhere.
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kenji Kaneshige [Fri, 22 Sep 2006 17:17:29 +0000 (10:17 -0700)]
pciehp - add missing locking
This patch fixes the problem that system will panic if multiple power
on/off operations are issued to the same slot in parallel. This
problem can be easily reproduced by commands below.
# while true; do echo 1 > power; echo 0 > power; done &
# while true; do echo 1 > power; echo 0 > power; done &
The cause is lack of locking for enable/disable operations. This patch
fixes this problem.
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kenji Kaneshige [Fri, 22 Sep 2006 17:17:10 +0000 (10:17 -0700)]
pciehp: fix improper info messages
The slot number displayed in info messages would cause a confusion
because those are displayed in several ways (decimal and hex).
Furthermore, those slot number is not same as slot name (directory
name). This patch fixes those improper info messages.
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Kenji Kaneshige [Fri, 22 Sep 2006 19:52:37 +0000 (12:52 -0700)]
shpchp: fix shpchp_wait_cmd in poll
This patch fixes the problem that issuing SHPC command in poll mode
always fails with the following message.
shpchp: Command not completed in 2000 msec
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>