Thomas Graf [Tue, 21 Sep 2004 12:17:02 +0000 (05:17 -0700)]
[NET]: Fix ifmap alignment issues over rtnetlink
Introduces a fixed size variant of ifmap for rtnetlink. Fixes
issues with address size mismatch between kernel and userspace.
Obviously this will fail if userspace provides an address greater
than 32bit.
Signed-off-by: Thomas Graf <tgraf@suug.ch> SIgned-off-by: David S. Miller <davem@davemloft.net>
Alexander Viro [Tue, 21 Sep 2004 09:52:59 +0000 (02:52 -0700)]
[PATCH] cifs: assorted endianness bugfixes
a) Flags2 left little-endian. SMBFLG2_... definitions switched to
cpu_to_le16(...), which kills the need of conversions in ->Flags2.
b) FILE_SYSTEM_UNIX_INFO (never used anywhere) is left little-endian;
when users appear, they can convert themselves.
c) bugfix: in CIFSSessSetup() we used SecurityBlobLength of response
without conversion. That would screw bigendian clients with servers that
give wcnt=4.
d) bugfix: in CIFSNTLMSSPNegotiateSessSetup() we use
SecurityBlob2->NegotiateFlags without conversion. Again, problem on
big-endian.
e) bugfix: SecurityBlob->MessageType is *not* host-endian.
f) bugfix: ->sendmsg() expects its last argument to be equal to sum
of iovec lengths, so the value passed to kernel_sendmsg()/sock_sendmsg()
would better be correct...
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
[PATCH] i2c/i2c-mpc: replace schedule_timeout() with msleep_interruptible()
Properly orders set_current_state() and add_wait_queue(). Uses
msleep_interruptible() in place of schedule_timeout() to guarantee the
task delays as expected. Uses set_current_state() instead of direct
assignment of current->state.
Gordon Jin [Tue, 21 Sep 2004 19:41:02 +0000 (19:41 +0000)]
[IA64] ia32compat: Disable syscalls sys32_iopl() and sys32_ioperm() on ia64.
Disable syscalls sys32_iopl() and sys32_ioperm() on ia64.
To emulate these 2 syscalls correctly, we need to guarantee uncached
memory attributes on ia64, which is difficult. The only user of this
interface that we know of is X. So we think it's better to disable it.
Signed-off-by: Gordon Jin <gordon.jin@intel.com> Signed-off-by: Arun Sharma <arun.sharma@intel.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Kevin Tian [Tue, 21 Sep 2004 19:38:16 +0000 (19:38 +0000)]
[IA64] ia32compat: Put signal restorer code on a gate page
When userland doesn't specify sigaction->sa_restorer, we try to put
the restorer code on the stack. But this breaks ia32 binaries with
non-executable stacks. We now put the restorer code on a gate page.
Signed-off-by: Kevin Tian <kevin.tian@intel.com> Signed-off-by: Arun Sharma <arun.sharma@intel.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
David S. Miller [Tue, 21 Sep 2004 06:35:49 +0000 (23:35 -0700)]
[IPV4]: Zap CONFIG_IP_ROUTE_TOS
These facilities are now available by default.
The config option makes no sense because:
1) It makes no change to the layout of any
data structure, therefore it has no impact
upon memory usage of the routing tables.
2) It makes no significant change to code size,
only a handfull of lookup comparisons are
protected by the option.
3) It is needed for full RFC1812 compliance anyways.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Tue, 21 Sep 2004 06:29:32 +0000 (23:29 -0700)]
[IPV4]: Clean up fib_hash.c list handling.
1) Use linux/list.h facilities instead of by-hand
list implementation.
2) Use fib_alias structure, hung off of fib_node,
to represent routes which all have the same
destination prefix, yet have different TOS and
priority values.
Signed-off-by: David S. Miller <davem@davemloft.net>
Rusty Russell [Tue, 21 Sep 2004 00:40:31 +0000 (17:40 -0700)]
[PATCH] Warn that ipchains and ipfwadm are going away
At the recent netfilter workshop in Erlangen, we was decided to remove
the backwards compatibility code for ipchains and ipfwadm. This will
allow significant cleanup of interfaces, since we had to have a
mid-level interface for the backwards compatibility layer to use.
Start off with a warning for 2.6.9, so any remaining users have a chance
to migrate. Their firewall scripts might not check return values, and
they might get a nasty surprise when this goes away.
Linus removed the "volatile" statement from the definition of the
__raw_* IO accessors on ppc64, which cause some real bad optisations to
happen in some fbdev's like matroxfb to happen (just imagine that
matroxfb loops reading an IO register waiting for a bit to change).
The __raw_xxxx() functions still want ordered accesses (they avoid the
byteswap, though)
Signed-off-by: Benjamin Herrenschmidt <benh@kenrel.crashing.org>
The previous change is not the whole story - the mmc queue
thread may be handling a request. We must wait for outstanding
requests to complete before allowing the suspend to proceed,
otherwise we may suffer loss of data.
François Romieu [Mon, 20 Sep 2004 10:05:51 +0000 (06:05 -0400)]
[PATCH] r8169: default on disabling PCIDAC
Default to disabling PCI DAC as this option appears unsafe on amd64
(original suggestion by Hans-Frieder Vogt <hfvogt@arcor.de>).
The driver will typically report PCI System error when something goes
wrong. The relevant interrupt is not masked any more and the driver
can thus be disabled.
Russell King [Sat, 18 Sep 2004 17:32:07 +0000 (18:32 +0100)]
[MMC] Clean up MMC card CID/CSD decoding, stage 1.
Now that the raw CSD and CID information are available in mmc_card,
there's little point not passing the mmc_card structure into the
decode functions themselves.
This will be necessary, since there's several different formats of
CID decode, and the format appears to depend on data in the CSD.
If we are unable to decode the CID or CSD, we can mark the card bad
and refuse to bind it to any drivers. Users can then retrieve the
raw undecoded CID and CSD from sysfs for debugging purposes.
Russell King [Sat, 18 Sep 2004 11:50:57 +0000 (12:50 +0100)]
[MMC] Use raw CID rather than decoded CID
Save the raw CID information, and use this to match cards
with their corresponding mmc_card structure. Different
protocol revisions have different CID formats.
Nick Piggin [Sat, 18 Sep 2004 02:35:55 +0000 (19:35 -0700)]
[PATCH] fix missing unlock_page in mm/rmap.c
A required unlock_page will be missed in a very rare (but possible) race
condition. Acked by Hugh, who says:
It'll be hard to hit because of the additional page_mapped test above,
with truncate unmapping ptes from mms before it advances to removing
pages from cache; but nothing to prevent it happening.
David S. Miller [Fri, 17 Sep 2004 16:17:16 +0000 (09:17 -0700)]
[IPV4]: Fix BUG triggered in fib_sync_down()
If you modload then unload a network device,
without creating any ipv4 routes, it is possible
for the laddr hash to be not allocated yet
in fib_semantics.
Signed-off-by: David S. Miller <davem@davemloft.net>