Pádraig Brady [Tue, 1 Jun 2004 09:52:38 +0000 (11:52 +0200)]
[WATCHDOG] v2.6.6 w83627hf_wdt.c-patch
Add w83627hf_select_wd_register and w83627hf_unselect_wd_register.
Add w83627hf_init to fix initialization problem on certain motherboards.
Make ping and disable code return 0 (int) on success.
Extract set_heartbeat code to seperate function.
Alexander Viro [Sun, 30 May 2004 14:35:38 +0000 (07:35 -0700)]
[PATCH] sparse alpha: the rest of it
A bunch of "return in void function" dealt with, removed bogus extern
from definition of __load_new_mm_context(), sanitized fscking ugly
CROSS_64K() helper (even if sparse doesn't segfault on that anymore,
it's _still_ fscking ugly).
Alexander Viro [Sun, 30 May 2004 13:09:42 +0000 (06:09 -0700)]
[PATCH] sparse: SIOCGIFCONF handling - the rest of it
Fixed the type of SIOCGIFCONF callback; inet instance was already
correctly annotated, decnet one was _not_. Moreover, decnet callback
needed fixing - dereferencing userland address.
Alexander Viro [Sun, 30 May 2004 13:07:30 +0000 (06:07 -0700)]
[PATCH] sparse: amd64 annotation - beginning
Annotated basic primitives (copy_.._user, get_user, ...).
Functions got __user in prototypes, macros (in uaccess.h) got a
conditional check - see CHECK_UPTR() below. If you have more elegant
way to deal with the macros - please, tell.
Andi Kleen [Sun, 30 May 2004 04:55:13 +0000 (21:55 -0700)]
[PATCH] x86-64 update
Add accumulated bug fixes for x86-64 and some minor cleanups.
- Add ptep_set_access_flags from i386
- Change memory text mapping to 10MB from 40MB to make alias window
smaller
- Disable change_page_attr for kernel mapoing for now (wrong, but the
other code also doesn't work)
- Add .bss.page_aligned and align interrupt/exception stacks (idea from
Matt Mackall)
- Protect sysenter MSR setup against missing registers.
- Set mce tolerance level to 1 (panic instead of deadlock)
- Fix cross 4GB bug in find_first_bit (Michael Matz)
- Add missing memory clobbers in bitops.h (Suresh B. Siddha)
- Check kernel size at boot up
- Set boot cpu online at boot to fix early printk
- Fix EFER bit definitions (Dave Jones)
- Fix comments in 32bit syscall table.
- Quieten all 32bit syscalls that are unimplemented in 32bit.
- Various MCE fixes suggested by Eric Morton, David Boles et.al.
More to come.
- Quieten some printks
- Fix cpu online check in msr driver
- Lower polling interval for machine checks to 5 minutes to avoid
overrunning the registers.
- Make memcpy_{from,to}io more compatible with i386 (Roland Dreier)
Alexander Viro [Sat, 29 May 2004 12:36:13 +0000 (05:36 -0700)]
[PATCH] sparse: nf_sockopt() annotation
netfilter set/getsockopt annotated. That's a continuation of previous
patch - by now the only remaining place where setsockopt()/getsockopt()
userland pointers are not traced is vcc_[sg]etsockopt() and down into the
ATM drivers. Everything from that area in net/* should be done by now.
That's pretty much it as far as non-trivial splitting counts; remaining
patches in net/* are independent, tty and console stuff is also not hard to
split (not much of it, anyway) and what remains is arch-dependent code for
alpha and amd64. Of course there'll be more stuff coming, but as far as I'm
concerned the rest of my pile is managable - and finally below 200Kb. That'll
go tomorrow - right now I'm going down and getting some sleep...
Alexander Viro [Sat, 29 May 2004 11:44:03 +0000 (04:44 -0700)]
[PATCH] sparse: final bits of compat_ioctl
ethtool_ioctl() annotated; it would go in the first compat_ioctl
chunk (trivial ones) if it wouldn't be right after SIOCGIFCONF mess; was
easier to split in that order...
Alexander Viro [Sat, 29 May 2004 11:43:20 +0000 (04:43 -0700)]
[PATCH] sparse (compat_ioctl): font stuff
Annotated, cleaned up, wholesale copying of structure with
subsequeunt casts from hell replaced with get_user()/put_user() on
the fields we really need.
Alexander Viro [Sat, 29 May 2004 11:42:59 +0000 (04:42 -0700)]
[PATCH] sparse (compat_ioctl): raw_ioctl() fixes
Whoever had done the translation apparently never heard of
big-endian boxen. Replaced the kludge with get_user()/put_user() on
64bit values. Note that
struct raw_config_request
{
int raw_minor;
__u64 block_major;
__u64 block_minor;
};
has __u64 on _all_ platforms and it is used as an integer in raw.c code.
The only reason why translation is needed at all is alignment for 64bit
values; block_major and block_minor themselves should be passed as-is.
Alexander Viro [Sat, 29 May 2004 11:42:48 +0000 (04:42 -0700)]
[PATCH] sparse: compat_ioctl - easy part
Easy parts of compat_ioctl fixes - pure __user annotation.
In one place (SG_IO handling) replaced dereference of user pointer
with put_user() (why whoever had noticed that just put a FIXME instead
of obvios fix is a mistery...)
a bunch of trivial ->read() and ->write() instances (and their procfs
relatives) __user-annotated. All chunks are independent, but IMO not
worth splitting.
Alexander Viro [Sat, 29 May 2004 09:18:12 +0000 (02:18 -0700)]
[PATCH] sparse: bits and pieces
Independent minor bits caught by sparse:
- paride.h mixing void and int in ? :, used always in a void context
ide-iops.c return insw() - insw is void()
- scsi/constants.c uses undefined macros in #if; added #define to 0 in
case that used to leave it undefined
- usb/host/hcd.h: fixed-point arithmetics in constant
- fs/exec.c: missing UL on a large constant
- fs/locks.c: #if where #ifdef should've been
- fs.h: missing UL on MAX_LFS_FILESIZE in 64bit case
[NET]: Simplify netdev_sysfs_xxx if SYSFS is not configured.
Don't need all the network sysfs code if CONFIG_SYSFS is not enabled.
Also:
* netdev_sysfs_unregister is declaration mismatch
* if netdev_sysfs_register fails print a warning.
Need to still mark it as registered so the unregister_netdevice works,
but we will probably end up leaking memory in that case.