GitHub/moto-9609/android_kernel_motorola_exynos9610.git
18 years ago[PATCH] document i_size_write locking rules
Miklos Szeredi [Tue, 17 Oct 2006 07:10:07 +0000 (00:10 -0700)]
[PATCH] document i_size_write locking rules

Unless someone reads the documentation for write_seqcount_{begin,end} it is
not obvious, that i_size_write() needs locking.  Especially, that lack of such
locking can result in a system hang.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fuse: fix hang on SMP
Miklos Szeredi [Tue, 17 Oct 2006 07:10:06 +0000 (00:10 -0700)]
[PATCH] fuse: fix hang on SMP

Fuse didn't always call i_size_write() with i_mutex held which caused rare
hangs on SMP/32bit.  This bug has been present since fuse-2.2, well before
being merged into mainline.

The simplest solution is to protect i_size_write() with the per-connection
spinlock.  Using i_mutex for this purpose would require some restructuring of
the code and I'm not even sure it's always safe to acquire i_mutex in all
places i_size needs to be set.

Since most of vmtruncate is already duplicated for other reasons, duplicate
the remaining part as well, making all i_size_write() calls internal to fuse.

Using i_size_write() was unnecessary in fuse_init_inode(), since this function
is only called on a newly created locked inode.

Reported by a few people over the years, but special thanks to Dana Henriksen
who was persistent enough in helping me debug it.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sx: fix user-visible typo (devic)
Alexey Dobriyan [Tue, 17 Oct 2006 07:10:05 +0000 (00:10 -0700)]
[PATCH] sx: fix user-visible typo (devic)

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] genirq: clean up irq-flow-type naming
Ingo Molnar [Tue, 17 Oct 2006 07:10:03 +0000 (00:10 -0700)]
[PATCH] genirq: clean up irq-flow-type naming

Introduce desc->name and eliminate the handle_irq_name() hack.  Add
set_irq_chip_and_handler_name() to set the flow type and name at once.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Matthew Wilcox <willy@debian.org>
Cc: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix `make headers_install'
David Woodhouse [Tue, 17 Oct 2006 07:10:02 +0000 (00:10 -0700)]
[PATCH] fix `make headers_install'

Fix this:

make[3]: *** No rule to make target
`/mnt/md0/devel/linux-git/include/linux/version.h', needed by
`/mnt/md0/devel/linux-git-obj/usr/include/linux/version.h'.  Stop.
make[2]: *** [linux] Error 2
make[1]: *** [headers_install] Error 2

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/char/specialix.c: fix the baud conversion
Adrian Bunk [Tue, 17 Oct 2006 07:10:00 +0000 (00:10 -0700)]
[PATCH] drivers/char/specialix.c: fix the baud conversion

Correct the following bugs introduced by commit
67cc0161ecc9ebee6eba4af6cbfdba028090b1b9:

- remove one remaining and now incorrect baud_table[] usage
- "baud +=" is no longer correct

The former bug was spotted by the Coverity checker.

Rolf Eike Beer spotted a bug in the initial version of my patch.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] swsusp: fix memory leaks
Andrew Morton [Tue, 17 Oct 2006 07:09:59 +0000 (00:09 -0700)]
[PATCH] swsusp: fix memory leaks

My fancy new swsusp IO code had a big memory leak.  It's somewhat invisible
because the whole mem_map[] gets overwritten after resume, but it can cause us
to get low on memory during the actual suspend process.

Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] acpi_processor_latency_notifier(): UP warning fix
Andrew Morton [Tue, 17 Oct 2006 07:09:58 +0000 (00:09 -0700)]
[PATCH] acpi_processor_latency_notifier(): UP warning fix

drivers/acpi/processor_idle.c:1112: warning: 'smp_callback' defined but not used

Cc: Len Brown <lenb@kernel.org>
Cc: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] vmalloc(): don't pass __GFP_ZERO to slab
Andrew Morton [Tue, 17 Oct 2006 07:09:57 +0000 (00:09 -0700)]
[PATCH] vmalloc(): don't pass __GFP_ZERO to slab

A recent change to the vmalloc() code accidentally resulted in us passing
__GFP_ZERO into the slab allocator.  But we only wanted __GFP_ZERO for the
actual pages whcih are being vmalloc()ed, and passing __GFP_ZERO into slab is
not a rational thing to ask for.

Cc: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rtc-max6902: month conversion fix
Francisco Larramendi [Tue, 17 Oct 2006 07:09:53 +0000 (00:09 -0700)]
[PATCH] rtc-max6902: month conversion fix

Fix October-only BCD-to-binary conversion bug:

0x08 -> 7
0x09 -> 8
0x10 -> 15 (!)
0x11 -> 19

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=7361

Cc: Raphael Assenat <raph@raphnet.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] w1 kconfig fix
Evgeniy Polyakov [Tue, 17 Oct 2006 07:09:47 +0000 (00:09 -0700)]
[PATCH] w1 kconfig fix

Remove dependency of w1 subsytem from connector, only w1_con must depend on
it.  With attached patch applied to vanilla 2.6.19-git things works fine.

Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Cc: <dmb@pochta.ru>
Cc: Greg KH <greg@kroah.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: "Randy.Dunlap" <rdunlap@xenotime.net>
Cc: Adrian Bunk <bunk@stusta.de>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] knfsd: add nfs-export support to tmpfs
David M. Grimes [Tue, 17 Oct 2006 07:09:45 +0000 (00:09 -0700)]
[PATCH] knfsd: add nfs-export support to tmpfs

We need to encode a decode the 'file' part of a handle.  We simply use the
inode number and generation number to construct the filehandle.

The generation number is the time when the file was created.  As inode numbers
cycle through the full 32 bits before being reused, there is no real chance of
the same inum being allocated to different files in the same second so this is
suitably unique.  Using time-of-day rather than e.g.  jiffies makes it less
likely that the same filehandle can be created after a reboot.

In order to be able to decode a filehandle we need to be able to lookup by
inum, which means that the inode needs to be added to the inode hash table
(tmpfs doesn't currently hash inodes as there is never a need to lookup by
inum).  To avoid overhead when not exporting, we only hash an inode when it is
first exported.  This requires a lock to ensure it isn't hashed twice.

This code is separate from the patch posted in June06 from Atal Shargorodsky
which provided the same functionality, but does borrow slightly from it.

Locking comment: Most filesystems that hash their inodes do so at the point
where the 'struct inode' is initialised, and that has suitable locking
(I_NEW).  Here in shmem, we are hashing the inode later, the first time we
need an NFS file handle for it.  We no longer have I_NEW to ensure only one
thread tries to add it to the hash table.

Cc: Atal Shargorodsky <atal@codefidence.com>
Cc: Gilad Ben-Yossef <gilad@codefidence.com>
Signed-off-by: David M. Grimes <dgrimes@navisite.com>
Signed-off-by: Neil Brown <neilb@suse.de>
Acked-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] remove carta_random32
Andrew Morton [Tue, 17 Oct 2006 07:09:44 +0000 (00:09 -0700)]
[PATCH] remove carta_random32

This library function should be in obj-y and not in lib-y.  But when we do
that it clashes unpleasantly with the assembly-language implementation in the
ia64 architecture.

Instead of trying to fix it all up, just remove the generic carta_random32 in
the expectation that the recently-made-generic random32() will suffice.

If/when perfmon is migrated to random32, ia64's private carta_random32
implementation can also be removed.

Cc: Stephane Eranian <eranian@hpl.hp.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rename net_random to random32
Stephen Hemminger [Tue, 17 Oct 2006 07:09:42 +0000 (00:09 -0700)]
[PATCH] rename net_random to random32

Make net_random() more widely available by calling it random32

akpm: hopefully this will permit the removal of carta_random32.  That needs
confirmation from Stephane - this code looks somewhat more computationally
expensive, and has a different (ie: callee-stateful) interface.

[akpm@osdl.org: lots of build fixes, cleanups]
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Stephane Eranian <eranian@hpl.hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] PROC_NUMBUF is wrong
Andrew Morton [Tue, 17 Oct 2006 07:09:41 +0000 (00:09 -0700)]
[PATCH] PROC_NUMBUF is wrong

Actually, the decimal representation of a 32-bit signed number can take 12
bytes, including the \0.

And then some code adds a \n as well, so let's give it 13 bytes.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] posix-cpu-timers: prevent signal delivery starvation
Thomas Gleixner [Tue, 17 Oct 2006 07:09:39 +0000 (00:09 -0700)]
[PATCH] posix-cpu-timers: prevent signal delivery starvation

The integer divisions in the timer accounting code can round the result
down to 0.  Adding 0 is without effect and the signal delivery stops.

Clamp the division result to minimum 1 to avoid this.

Problem was reported by Seongbae Park <spark@google.com>, who provided
also an inital patch.

Roland sayeth:

  I have had some more time to think about the problem, and to reproduce it
  using Toyo's test case.  For the record, if my understanding of the problem
  is correct, this happens only in one very particular case.  First, the
  expiry time has to be so soon that in cputime_t units (usually 1s/HZ ticks)
  it's < nthreads so the division yields zero.  Second, it only affects each
  thread that is so new that its CPU time accumulation is zero so now+0 is
  still zero and ->it_*_expires winds up staying zero.  For the VIRT and PROF
  clocks when cputime_t is tick granularity (or the SCHED clock on
  configurations where sched_clock's value only advances on clock ticks), this
  is not hard to arrange with new threads starting up and blocking before they
  accumulate a whole tick of CPU time.  That's what happens in Toyo's test
  case.

  Note that in general it is fine for that division to round down to zero,
  and set each thread's expiry time to its "now" time.  The problem only
  arises with thread's whose "now" value is still zero, so that now+0 winds up
  0 and is interpreted as "not set" instead of ">= now".  So it would be a
  sufficient and more precise fix to just use max(ticks, 1) inside the loop
  when setting each it_*_expires value.

  But, it does no harm to round the division up to one and always advance
  every thread's expiry time.  If the thread didn't already fire timers for
  the expiry time of "now", there is no expectation that it will do so before
  the next tick anyway.  So I followed Thomas's patch in lifting the max out
  of the loops.

  This patch also covers the reload cases, which are harder to write a test
  for (and I didn't try).  I've tested it with Toyo's case and it fixes that.

[toyoa@mvista.com: fix: min_t -> max_t]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Roland McGrath <roland@redhat.com>
Cc: Daniel Walker <dwalker@mvista.com>
Cc: Toyo Abe <toyoa@mvista.com>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Seongbae Park <spark@google.com>
Cc: Peter Mattis <pmattis@google.com>
Cc: Rohit Seth <rohitseth@google.com>
Cc: Martin Bligh <mbligh@google.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] md: fix /proc/mdstat refcounting
Akinobu Mita [Tue, 17 Oct 2006 07:09:38 +0000 (00:09 -0700)]
[PATCH] md: fix /proc/mdstat refcounting

I have seen mdadm oops after successfully unloading md module.

This patch privents from unloading md module while
mdadm is polling /proc/mdstat.

Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Akinbou Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] invalidate: remove_mapping() fix
Andrew Morton [Tue, 17 Oct 2006 07:09:36 +0000 (00:09 -0700)]
[PATCH] invalidate: remove_mapping() fix

If remove_mapping() failed to remove the page from its mapping, don't go and
mark it not uptodate!  Makes kernel go dead.

(Actually, I don't think the ClearPageUptodate is needed there at all).

Says Nick Piggin:

   "Right, it isn't needed because at this point the page is guaranteed
    by remove_mapping to have no references (except us) and cannot pick
    up any new ones because it is removed from pagecache.

    We can delete it."

Signed-off-by: Andrew Morton <akpm@osdl.org>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] null dereference in fs/jbd2/journal.c
Dave Kleikamp [Tue, 17 Oct 2006 07:09:35 +0000 (00:09 -0700)]
[PATCH] null dereference in fs/jbd2/journal.c

This is Eric Sesterhenn's jbd patch applied to jbd2.
Commit: 41716c7c21b15e7ecf14f0caf1eef3980707fb74

His words:

Since commit d1807793e1e7e502e3dc047115e9dbc3b50e4534 we dereference a NULL
pointer.  Coverity id #1432.  We set journal to NULL, and use it directly
afterwards.

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
Cc: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] i386 Time: Avoid PIT SMP lockups
john stultz [Tue, 17 Oct 2006 07:09:32 +0000 (00:09 -0700)]
[PATCH] i386 Time: Avoid PIT SMP lockups

Avoid possible PIT livelock issues seen on SMP systems (and reported by
Andi), by not allowing it as a clocksource on SMP boxes.

However, since the PIT may no longer be present, we have to properly handle
the cases where SMP systems have TSC skew and fall back from the TSC.
Since the PIT isn't there, it would "fall back" to the TSC again.  So this
changes the jiffies rating to 1, and the TSC-bad rating value to 0.

Thus you will get the following behavior priority on i386 systems:

tsc [if present & stable]
hpet [if present]
cyclone [if present]
acpi_pm [if present]
pit [if UP]
jiffies

Rather then the current more complicated:
tsc [if present & stable]
hpet [if present]
cyclone [if present]
acpi_pm [if present]
pit [if cpus < 4]
tsc [if present & unstable]
jiffies

Signed-off-by: John Stultz <johnstul@us.ibm.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] New MMC maintainer
Pierre Ossman [Tue, 17 Oct 2006 07:09:30 +0000 (00:09 -0700)]
[PATCH] New MMC maintainer

I will be taking over after Russell King as the new maintainer of the
MMC layer.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] lockdep: increase max allowed recursion depth
Ingo Molnar [Tue, 17 Oct 2006 07:09:28 +0000 (00:09 -0700)]
[PATCH] lockdep: increase max allowed recursion depth

In general, lockdep warnings are intended to be non-fatal, so I have put in
various practical limits on internal data structure failure modes.  We haven't
had a /single/ lockdep-internal crash ever since lockdep went upstream [the
unwinder crashes are outside of lockdep], and that's largely due to the good
internal checks it does.

Recursion within the dependency graph is currently limited to 20, that's
probably not enough on some many-CPU boxes - this patch doubles it to 40.  I
have written the lockdep functions to have as small stackframes as possible,
so 40 should be OK too.  (The practical recursion limit should be somewhere
between 100 and 200 entries.  If we hit that then I'll change the algorithm to
be iteration-based.  Graph walking logic is so easy to program via recursion,
so i'd like to keep recursion as long as possible.)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] synclink: remove PAGE_SIZE reference
Paul Fulghum [Tue, 17 Oct 2006 07:09:27 +0000 (00:09 -0700)]
[PATCH] synclink: remove PAGE_SIZE reference

Remove reference to PAGE_SIZE that causes errors if PAGE_SIZE != 4096

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ioc4: Enable build on non-SN2
Brent Casavant [Tue, 17 Oct 2006 07:09:25 +0000 (00:09 -0700)]
[PATCH] ioc4: Enable build on non-SN2

The SGI PCI-RT card, based on the SGI IOC4 chip, will be made available on
Altix XE (x86_64) platforms in the near future.  As such it is now a
misnomer for the IOC4 base device driver to live under drivers/sn, and
would complicate builds for non-SN2.

This patch moves the IOC4 base driver code from drivers/sn to drivers/misc,
and updates the associated Makefiles and Kconfig files to allow building on
non-SN2 configs.  Due to the resulting change in link order, it is now
necessary to use late_initcall() for IOC4 subdriver initialization.

[akpm@osdl.org: __udivdi3 fix]
[akpm@osdl.org: fix default in Kconfig]
Acked-by: Pat Gefre <pfg@sgi.com>
Acked-by: Jeremy Higdon <jeremy@sgi.com>
Signed-off-by: Brent Casavant <bcasavan@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ioc4: Remove SN2 feature and config dependencies
Brent Casavant [Tue, 17 Oct 2006 07:09:24 +0000 (00:09 -0700)]
[PATCH] ioc4: Remove SN2 feature and config dependencies

The SGI PCI-RT card, based on the SGI IOC4 chip, will be made available on
Altix XE (x86_64) platforms in the near future.  As such dependencies on
SN2-specific features and config dependencies need to be removed.

This patch updates the Kconfig files to remove the config dependency, and
updates the IOC4 bus speed detection routine to use universally available
time interfaces instead of mmtimer.

Signed-off-by: Brent Casavant <bcasavan@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] CONFIG_TELCLOCK depends on X86
Geert Uytterhoeven [Mon, 16 Oct 2006 17:59:43 +0000 (19:59 +0200)]
[PATCH] CONFIG_TELCLOCK depends on X86

The telecom clock driver for MPBL0010 ATCA SBC depends on X86

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Mark Gross <mark.gross@intel.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix epoll_pwait when EPOLL=n
Randy Dunlap [Mon, 16 Oct 2006 16:01:46 +0000 (09:01 -0700)]
[PATCH] fix epoll_pwait when EPOLL=n

Fixes http://bugzilla.kernel.org/show_bug.cgi?id=7371

sys_epoll_pwait needs to be listed as a conditional (weak)
entry point for CONFIG_EPOLL=n.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 16 Oct 2006 15:33:06 +0000 (08:33 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (25 commits)
  [Bluetooth] Use work queue to trigger URB submission
  [Bluetooth] Add locking for bt_proto array manipulation
  [Bluetooth] Check if DLC is still attached to the TTY
  [Bluetooth] Fix reference count when connection lookup fails
  [Bluetooth] Disconnect HID interrupt channel first
  [Bluetooth] Support concurrent connect requests
  [Bluetooth] Make use of virtual devices tree
  [Bluetooth] Handle return values from driver core functions
  [Bluetooth] Fix compat ioctl for BNEP, CMTP and HIDP
  [IPV6] sit: Add missing MODULE_LICENSE
  [IPV6]: Remove bogus WARN_ON in Proxy-NA handling.
  [IPv6] rules: Use RT6_LOOKUP_F_HAS_SADDR and fix source based selectors
  [XFRM]: Fix xfrm_state_num going negative.
  [NET]: reduce sizeof(struct inet_peer), cleanup, change in peer_check_expire()
  NetLabel: the CIPSOv4 passthrough mapping does not pass categories correctly
  NetLabel: better error handling involving mls_export_cat()
  NetLabel: only deref the CIPSOv4 standard map fields when using standard mapping
  [BRIDGE]: flush forwarding table when device carrier off
  [NETFILTER]: ctnetlink: Remove debugging messages
  [NETFILTER]: Update MAINTAINERS entry
  ...

18 years ago[PATCH] FRV: Use the correct preemption primitives in kmap_atomic() and co
David Howells [Mon, 16 Oct 2006 13:10:49 +0000 (14:10 +0100)]
[PATCH] FRV: Use the correct preemption primitives in kmap_atomic() and co

Use inc/dec_preempt_count() rather than preempt_enable/disable() and manually
add in the compiler barriers that were provided by the latter.  This makes FRV
consistent with other archs.

Furthermore, the compiler barrier effects are now there unconditionally - at
least as far as preemption is concerned - because we don't want the compiler
moving memory accesses out of the section of code in which the mapping is in
force - in effect the kmap_atomic() must imply a LOCK-class barrier and the
kunmap_atomic() must imply an UNLOCK-class barrier to the compiler.

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] scsi: megaraid_{mm,mbox}: 64-bit DMA capability fix
Andrey Mirkin [Mon, 16 Oct 2006 08:08:43 +0000 (12:08 +0400)]
[PATCH] scsi: megaraid_{mm,mbox}: 64-bit DMA capability fix

It is known that 2 LSI Logic MegaRAID SATA RAID Controllers (150-4 and
150-6) don't support 64-bit DMA.  Unfortunately currently this check is
wrong and driver sets 64-bit DMA mode for these devices.

Signed-off-by: Andrey Mirkin <amirkin@sw.ru>
Acked-by: Vasily Averin <vvs@sw.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ide: add sanity checking to ide taskfile ioctl
Alan Cox [Mon, 16 Oct 2006 15:31:02 +0000 (16:31 +0100)]
[PATCH] ide: add sanity checking to ide taskfile ioctl

Without this the user can feed in bogus values and get very bogus
results. Security impact is minimal as this ioctl isn't available to
unpriviledged processes anyway.

Reported to the l/k list and found with an auditing tool.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rio: fix array checking
Alan Cox [Mon, 16 Oct 2006 15:28:44 +0000 (16:28 +0100)]
[PATCH] rio: fix array checking

Found by an analysis tool and reported to the list. Fix is simple enough

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[Bluetooth] Use work queue to trigger URB submission
Marcel Holtmann [Sun, 15 Oct 2006 15:31:19 +0000 (17:31 +0200)]
[Bluetooth] Use work queue to trigger URB submission

The bcm203x firmware loading driver uses a timer to trigger the URB
submission. It is better to use a work queue instead.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Add locking for bt_proto array manipulation
Marcel Holtmann [Sun, 15 Oct 2006 15:31:14 +0000 (17:31 +0200)]
[Bluetooth] Add locking for bt_proto array manipulation

The bt_proto array needs to be protected by some kind of locking to
prevent a race condition between bt_sock_create and bt_sock_register.

And in addition all calls to sk_alloc need to be made GFP_ATOMIC now.

Signed-off-by: Masatake YAMATO <jet@gyve.org>
Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Check if DLC is still attached to the TTY
Marcel Holtmann [Sun, 15 Oct 2006 15:31:10 +0000 (17:31 +0200)]
[Bluetooth] Check if DLC is still attached to the TTY

If the DLC device is no longer attached to the TTY device, then it
makes no sense to go through with changing the termios settings.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Fix reference count when connection lookup fails
Marcel Holtmann [Sun, 15 Oct 2006 15:31:05 +0000 (17:31 +0200)]
[Bluetooth] Fix reference count when connection lookup fails

When the connection lookup for the device structure fails, the reference
count for the HCI device needs to be decremented.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Disconnect HID interrupt channel first
Marcel Holtmann [Sun, 15 Oct 2006 15:31:00 +0000 (17:31 +0200)]
[Bluetooth] Disconnect HID interrupt channel first

The Bluetooth HID specification demands that the interrupt channel
shall be disconnected first. This is needed to pass the qualification
tests.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Support concurrent connect requests
Marcel Holtmann [Sun, 15 Oct 2006 15:30:56 +0000 (17:30 +0200)]
[Bluetooth] Support concurrent connect requests

Most Bluetooth chips don't support concurrent connect requests, because
this would involve a multiple baseband page with only one radio. In the
case an upper layer like L2CAP requests a concurrent connect these chips
return the error "Command Disallowed" for the second request. If this
happens it the responsibility of the Bluetooth core to queue the request
and try again after the previous connect attempt has been completed.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Make use of virtual devices tree
Marcel Holtmann [Sun, 15 Oct 2006 15:30:50 +0000 (17:30 +0200)]
[Bluetooth] Make use of virtual devices tree

The Bluetooth subsystem currently uses a platform device for devices
with no parent. It is a better idea to use the new virtual devices
tree for these.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Handle return values from driver core functions
Marcel Holtmann [Sun, 15 Oct 2006 15:30:45 +0000 (17:30 +0200)]
[Bluetooth] Handle return values from driver core functions

Some return values of the driver core register and create functions
are not handled and so might cause unexpected problems.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[Bluetooth] Fix compat ioctl for BNEP, CMTP and HIDP
Marcel Holtmann [Sun, 15 Oct 2006 15:30:22 +0000 (17:30 +0200)]
[Bluetooth] Fix compat ioctl for BNEP, CMTP and HIDP

There exists no attempt do deal with the fact that a structure with
a uint32_t followed by a pointer is going to be different for 32-bit
and 64-bit userspace. Any 32-bit process trying to use it will be
failing with -EFAULT if it's lucky; suffering from having data dumped
at a random address if it's not.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
18 years ago[IPV6] sit: Add missing MODULE_LICENSE
Jan Dittmer [Fri, 13 Oct 2006 22:05:53 +0000 (15:05 -0700)]
[IPV6] sit: Add missing MODULE_LICENSE

This is missing the MODULE_LICENSE statements and taints the kernel
upon loading. License is obvious from the beginning of the file.

Signed-off-by: Jan Dittmer <jdi@l4x.org>
Signed-off-by: Joerg Roedel <joro-lkml@zlug.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6]: Remove bogus WARN_ON in Proxy-NA handling.
YOSHIFUJI Hideaki [Fri, 13 Oct 2006 22:03:34 +0000 (15:03 -0700)]
[IPV6]: Remove bogus WARN_ON in Proxy-NA handling.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPv6] rules: Use RT6_LOOKUP_F_HAS_SADDR and fix source based selectors
Thomas Graf [Fri, 13 Oct 2006 22:01:03 +0000 (15:01 -0700)]
[IPv6] rules: Use RT6_LOOKUP_F_HAS_SADDR and fix source based selectors

Fixes rt6_lookup() to provide the source address in the flow
and sets RT6_LOOKUP_F_HAS_SADDR whenever it is present in
the flow.

Avoids unnecessary prefix comparisons by checking for a prefix
length first.

Fixes the rule logic to not match packets if a source selector
has been specified but no source address is available.

Thanks to Kim Nordlund <kim.nordlund@nokia.com> for working
on this patch with me.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Acked-by: Ville Nuorvala <vnuorval@tcs.hut.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[XFRM]: Fix xfrm_state_num going negative.
David S. Miller [Fri, 13 Oct 2006 05:03:24 +0000 (22:03 -0700)]
[XFRM]: Fix xfrm_state_num going negative.

Missing counter bump when hashing in a new ACQ
xfrm_state.

Now that we have two spots to do the hash grow
check, break it out into a helper function.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: reduce sizeof(struct inet_peer), cleanup, change in peer_check_expire()
Eric Dumazet [Fri, 13 Oct 2006 04:21:06 +0000 (21:21 -0700)]
[NET]: reduce sizeof(struct inet_peer), cleanup, change in peer_check_expire()

1) shrink struct inet_peer on 64 bits platforms.

18 years agoNetLabel: the CIPSOv4 passthrough mapping does not pass categories correctly
Paul Moore [Wed, 11 Oct 2006 23:10:49 +0000 (19:10 -0400)]
NetLabel: the CIPSOv4 passthrough mapping does not pass categories correctly

The CIPSO passthrough mapping had a problem when sending categories which
would cause no or incorrect categories to be sent on the wire with a packet.
This patch fixes the problem which was a simple off-by-one bug.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: better error handling involving mls_export_cat()
Paul Moore [Wed, 11 Oct 2006 23:10:48 +0000 (19:10 -0400)]
NetLabel: better error handling involving mls_export_cat()

Upon inspection it looked like the error handling for mls_export_cat() was
rather poor.  This patch addresses this by NULL'ing out kfree()'d pointers
before returning and checking the return value of the function everywhere
it is called.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: only deref the CIPSOv4 standard map fields when using standard mapping
Paul Moore [Wed, 11 Oct 2006 23:10:47 +0000 (19:10 -0400)]
NetLabel: only deref the CIPSOv4 standard map fields when using standard mapping

Fix several places in the CIPSO code where it was dereferencing fields which
did not have valid pointers by moving those pointer dereferences into code
blocks where the pointers are valid.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years ago[BRIDGE]: flush forwarding table when device carrier off
Stephen Hemminger [Thu, 12 Oct 2006 21:45:38 +0000 (14:45 -0700)]
[BRIDGE]: flush forwarding table when device carrier off

Flush the forwarding table when carrier is lost. This helps for
availability because we don't want to forward to a downed device and
new packets may come in on other links.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: ctnetlink: Remove debugging messages
Pablo Neira Ayuso [Thu, 12 Oct 2006 21:09:16 +0000 (14:09 -0700)]
[NETFILTER]: ctnetlink: Remove debugging messages

Remove (compilation-breaking) debugging messages introduced at early
development stage.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: Update MAINTAINERS entry
Patrick McHardy [Thu, 12 Oct 2006 21:08:55 +0000 (14:08 -0700)]
[NETFILTER]: Update MAINTAINERS entry

Patches should go to myself CC netfilter-devel.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: xt_CONNSECMARK: fix Kconfig dependencies
Patrick McHardy [Thu, 12 Oct 2006 21:08:41 +0000 (14:08 -0700)]
[NETFILTER]: xt_CONNSECMARK: fix Kconfig dependencies

CONNSECMARK needs conntrack, add missing dependency to fix linking error
with CONNSECMARK=y and CONNTRACK=m.

Reported by Toralf Förster <toralf.foerster@gmx.de>.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: ipt_ECN/ipt_TOS: fix incorrect checksum update
Patrick McHardy [Thu, 12 Oct 2006 21:08:26 +0000 (14:08 -0700)]
[NETFILTER]: ipt_ECN/ipt_TOS: fix incorrect checksum update

Even though the tos field is only a single byte large, the values need to
be converted to net-endian for the checkum update so they are in the
corrent byte position. Also fix incorrect endian annotations.

Reported by Stephane Chazelas <Stephane_Chazelas@yahoo.fr>

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: arp_tables: missing unregistration on module unload
Patrick McHardy [Thu, 12 Oct 2006 21:08:11 +0000 (14:08 -0700)]
[NETFILTER]: arp_tables: missing unregistration on module unload

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: fix cut-and-paste error in exit functions
Patrick McHardy [Thu, 12 Oct 2006 21:07:52 +0000 (14:07 -0700)]
[NETFILTER]: fix cut-and-paste error in exit functions

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[DECNET]: Use correct config option for routing by fwmark in compare_keys()
Patrick McHardy [Thu, 12 Oct 2006 20:53:32 +0000 (13:53 -0700)]
[DECNET]: Use correct config option for routing by fwmark in compare_keys()

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] make UML compile (FC6/x86-64)
Ulrich Drepper [Sun, 15 Oct 2006 19:03:48 +0000 (15:03 -0400)]
[PATCH] make UML compile (FC6/x86-64)

I need this patch to get a UML kernel to compile.  This is with the
kernel headers in FC6 which are automatically generated from the kernel
tree.  Some headers are missing but those files don't need them.  At
least it appears so since the resuling kernel works fine.

Tested on x86-64.

Signed-off-by: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoFix VM_MAYEXEC calculation
Linus Torvalds [Sun, 15 Oct 2006 21:09:55 +0000 (14:09 -0700)]
Fix VM_MAYEXEC calculation

.. and clean up the file mapping code while at it.  No point in having a
"if (file)" repeated twice, and generally doing similar checks in two
different sections of the same code

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix core files so they make sense to gdb...
Petr Vandrovec [Fri, 13 Oct 2006 16:42:07 +0000 (18:42 +0200)]
[PATCH] Fix core files so they make sense to gdb...

It is silly to use non-static variable for writting zeroes to the file.

And more seriously, foffset in core dump file dump function was incremented
too much, so some parts of core dump were shifted by size of few phdrs and
notes down, so although gdb was able to load that file, it did not make lot
of sense - in my test case data pages were shifted down by about 900 bytes.

Signed-off-by: Petr Vandrovec <petr@vandrovec.name>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Sun, 15 Oct 2006 18:02:52 +0000 (11:02 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (28 commits)
  ACPI: check battery status on resume for un/plug events during sleep
  ACPICA: Fix incorrect handling of PCI Express Root Bridge _HID
  ACPI: asus_acpi: don't printk on writing garbage to proc files
  ACPI: asus_acpi: fix proc files parsing
  ACPI: SCI interrupt source override
  ACPI: fix printk format warnings
  ACPI: fix section for CPU init functions
  ACPI: update comments in motherboard.c
  ACPI: acpi_pci_link_set() can allocate with either GFP_ATOMIC or GFP_KERNEL
  ACPI: fix potential OOPS in power driver with CONFIG_ACPI_DEBUG
  ACPI: ibm_acpi: delete obsolete documentation
  ACPI: created a dedicated workqueue for notify() execution
  ACPI: Remove deferred execution from global lock acquire wakeup path
  MSI S270 Laptop support: backlight, wlan, bluetooth states
  ACPI: EC: export ec_transaction() for msi-laptop driver
  ACPI: EC: Simplify acpi_hw_low_level*() with inb()/outb().
  ACPI: EC: Unify poll and interrupt gpe handlers
  ACPI: EC: Unify poll and interrupt mode transaction functions
  ACPI: EC: Remove unused variables and duplicated code
  ACPI: EC: Remove unnecessary delay added by previous transation patch.
  ...

18 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Sun, 15 Oct 2006 18:01:53 +0000 (11:01 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/mchehab/v4l-dvb

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
  V4L/DVB (4750): AGC command1/2 is board specific
  V4L/DVB (4748): Fixed oops for Nova-T USB2
  V4L/DVB (4746): HM12 is YUV 4:2:0, not YUV 4:1:1
  V4L/DVB (4744): The Samsung TCPN2121P30A does not have a tda9887
  V4L/DVB (4743): Fix oops in VIDIOC_G_PARM
  V4L/DVB (4742): Drivers/media/video: handle sysfs errors
  V4L/DVB (4741): {ov511,stv680}: handle sysfs errors
  V4L/DVB (4740): Fixed an if-block to avoid floating with debug-messages
  V4L/DVB (4739): SECAM support for saa7113 into saa7115
  V4L/DVB (4738): Bt8xx/dvb-bt8xx.c: check kmalloc() return value.
  V4L/DVB (4734): Tda826x: fix frontend selection for dvb_attach
  V4L/DVB (4733): Tda10086: fix frontend selection for dvb_attach
  V4L/DVB (4732): Fix spelling error in Kconfig help text for DVB_CORE_ATTACH
  V4L/DVB (4731a): Kconfig: restore pvrusb2 menu items
  V4L/DVB (4729): Fix VIDIOC_G_FMT for NTSC in cx25840.
  V4L/DVB (4727): Support status readout for saa713x based FM radio
  V4L/DVB (4725): Fix vivi compile on parisc
  V4L/DVB (4692): Add WinTV-HVR3000 DVB-T support

18 years ago[PATCH] serial167 __user annotations, NULL noise removal
Al Viro [Sat, 14 Oct 2006 15:51:49 +0000 (16:51 +0100)]
[PATCH] serial167 __user annotations, NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sun3_ioremap() prototype
Al Viro [Sat, 14 Oct 2006 15:53:38 +0000 (16:53 +0100)]
[PATCH] sun3_ioremap() prototype

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hp drivers/input stuff: C99 initializers, NULL noise removal, __user annotations
Al Viro [Sat, 14 Oct 2006 15:52:36 +0000 (16:52 +0100)]
[PATCH] hp drivers/input stuff: C99 initializers, NULL noise removal, __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] new cifs endianness bugs
Al Viro [Sat, 14 Oct 2006 15:48:26 +0000 (16:48 +0100)]
[PATCH] new cifs endianness bugs

* missing cpu_to_le64() for ChangeTime (introduced by
    [CIFS] Legacy time handling for Win9x and OS/2 part 1)
* missing le16_to_cpu() for DialectIndex (introduced by
    [CIFS] Do not send newer QFSInfo to legacy servers which can not support it)

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] gfp_t in netlabel
Al Viro [Sat, 14 Oct 2006 15:50:38 +0000 (16:50 +0100)]
[PATCH] gfp_t in netlabel

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoPull trivial into test branch
Len Brown [Sat, 14 Oct 2006 06:28:07 +0000 (02:28 -0400)]
Pull trivial into test branch

18 years agoPull sci into test branch
Len Brown [Sat, 14 Oct 2006 06:27:52 +0000 (02:27 -0400)]
Pull sci into test branch

18 years agoPull bugzilla-5534 into test branch
Len Brown [Sat, 14 Oct 2006 06:26:42 +0000 (02:26 -0400)]
Pull bugzilla-5534 into test branch

18 years agoPull msi-laptop into test branch
Len Brown [Sat, 14 Oct 2006 06:26:18 +0000 (02:26 -0400)]
Pull msi-laptop into test branch

18 years agoPull ec into test branch
Len Brown [Sat, 14 Oct 2006 06:26:10 +0000 (02:26 -0400)]
Pull ec into test branch

18 years agoPull mwait into test branch
Len Brown [Sat, 14 Oct 2006 06:25:59 +0000 (02:25 -0400)]
Pull mwait into test branch

18 years agoPull battery into test branch
Len Brown [Sat, 14 Oct 2006 06:25:48 +0000 (02:25 -0400)]
Pull battery into test branch

18 years agoPull ibm into test branch
Len Brown [Sat, 14 Oct 2006 06:25:40 +0000 (02:25 -0400)]
Pull ibm into test branch

18 years agoPull asus into test branch
Len Brown [Sat, 14 Oct 2006 06:25:33 +0000 (02:25 -0400)]
Pull asus into test branch

18 years agoACPI: check battery status on resume for un/plug events during sleep
Jiri Kosina [Tue, 10 Oct 2006 21:20:41 +0000 (14:20 -0700)]
ACPI: check battery status on resume for un/plug events during sleep

Add ->resume method to the ACPI battery handler to check
if the battery state has changed during sleep.
If yes, update the ACPI internal data structures
for benefit of /proc/acpi/battery/.

Signed-off-by: Jiri Kosina <jikos@jikos.cz>
Cc: Stefan Seyfried <seife@suse.de>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPICA: Fix incorrect handling of PCI Express Root Bridge _HID
Eiichiro Oiwa [Mon, 2 Oct 2006 15:18:03 +0000 (19:18 +0400)]
ACPICA: Fix incorrect handling of PCI Express Root Bridge _HID

I could not get correct PCI Express bus number from the structure of
acpi_object_extra. I always get zero as bus number regardless of bus
location. I found that there is incorrect comparison with _HID (PNP0A08) in
acpi/events/evrgnini.c and PCI Express _BBN method always fail.
Therefore, we always get zero as PCI Express bus number.
http://bugzilla.kernel.org/show_bug.cgi?id=7145

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Alexey Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: asus_acpi: don't printk on writing garbage to proc files
Alexey Dobriyan [Tue, 10 Oct 2006 21:20:36 +0000 (14:20 -0700)]
ACPI: asus_acpi: don't printk on writing garbage to proc files

This reporting is useless (we errno anyway).

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: asus_acpi: fix proc files parsing
Darren Jenkins [Tue, 10 Oct 2006 21:20:35 +0000 (14:20 -0700)]
ACPI: asus_acpi: fix proc files parsing

ICC complains about a "Pointless comparsion of unsigned interger with zero"
@ line 760 & 808 of asus_acpi.c

parse_arg() mentioned below returns -E but it's copied into unsigned variable...

Signed-off-by: Darren Jenkins <darrenrjenkins@gmail.com>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: SCI interrupt source override
Kimball Murray [Tue, 10 Oct 2006 21:20:33 +0000 (14:20 -0700)]
ACPI: SCI interrupt source override

The Linux group at Stratus Technologies has come across an issue with SCI
routing under ACPI.  We were bitten by this when we made an x86_64 platform
whose BIOS provides an Interrupt Source Override for the SCI itself.
Apparently the override has no effect for the System Control Interrupt, and
this appears to be because of the way the SCI is setup in the ACPI code.
It does not handle the case where busirq != gsi.

The code that sets up the SCI routing assumes that bus irq == global irq.
So there is simply no provision for telling it otherwise.  The attached
patch provides this mechanism.

This patch provided by David Bulkow, was tested on an i386 platform, which
does not use the SCI override, and also on an x86_64 platform which does
use an override.

Signed-off-by: David Bulkow <david.bulkow@stratus.com>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: fix printk format warnings
Randy Dunlap [Tue, 10 Oct 2006 21:20:32 +0000 (14:20 -0700)]
ACPI: fix printk format warnings

Fix printk format warnings in drivers/acpi:
drivers/acpi/tables/tbget.c:326: warning: format '%X' expects type 'unsigned int', but argument 5 has type 'long unsigned int'
drivers/acpi/tables/tbrsdt.c:189: warning: format '%X' expects type 'unsigned int', but argument 5 has type 'long unsigned int'

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: fix section for CPU init functions
Pierre Ossman [Tue, 10 Oct 2006 21:20:31 +0000 (14:20 -0700)]
ACPI: fix section for CPU init functions

The ACPI processor init functions should be marked as __cpuinit as they use
structures marked with __cpuinitdata.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: update comments in motherboard.c
Len Brown [Thu, 14 Sep 2006 21:16:22 +0000 (17:16 -0400)]
ACPI: update comments in motherboard.c

Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: acpi_pci_link_set() can allocate with either GFP_ATOMIC or GFP_KERNEL
Jiri Kosina [Thu, 24 Aug 2006 04:36:19 +0000 (00:36 -0400)]
ACPI: acpi_pci_link_set() can allocate with either GFP_ATOMIC or GFP_KERNEL

acpi_pci_link_set() allocates both with interrupts on
and with interrupts off (resume-time), so check interrupts
and decide on GFP_ATOMIC or GFP_KERNEL at run-time.

Signed-off-by: Jiri Kosina <jikos@jikos.cz>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: fix potential OOPS in power driver with CONFIG_ACPI_DEBUG
Dmitry Torokhov [Thu, 24 Aug 2006 03:18:06 +0000 (23:18 -0400)]
ACPI: fix potential OOPS in power driver with CONFIG_ACPI_DEBUG

device was set to null and used before set in a debug printk

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: ibm_acpi: delete obsolete documentation
Pavel Machek [Thu, 31 Aug 2006 12:15:54 +0000 (14:15 +0200)]
ACPI: ibm_acpi: delete obsolete documentation

As this module is now part of the kernel tree, there is no need
for instructions on how to download it and build an external module.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: created a dedicated workqueue for notify() execution
Alexey Y. Starikovskiy [Tue, 26 Sep 2006 08:20:47 +0000 (04:20 -0400)]
ACPI: created a dedicated workqueue for notify() execution

http://bugzilla.kernel.org/show_bug.cgi?id=5534#c160

Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: Remove deferred execution from global lock acquire wakeup path
Alexey Y. Starikovskiy [Tue, 26 Sep 2006 08:18:16 +0000 (04:18 -0400)]
ACPI: Remove deferred execution from global lock acquire wakeup path

On acquiring the ACPI global lock, if there were sleepers on the lock,
we used to use acpi_os_execute() to defer a thread which would signal
sleepers.  Now just signal the semaphore directly.

http://bugzilla.kernel.org/show_bug.cgi?id=5534#c159

Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoMSI S270 Laptop support: backlight, wlan, bluetooth states
Lennart Poettering [Fri, 6 Oct 2006 05:27:02 +0000 (01:27 -0400)]
MSI S270 Laptop support: backlight, wlan, bluetooth states

Create a driver to support the platform-specific features
of MSI S270 laptops (and maybe other MSI laptops).
This driver implements a backlight device for controlling LCD brightness
(/sys/class/backlight/msi-laptop-bl/).
In addition it allows access to the WLAN and Bluetooth states
through a platform driver (/sys/devices/platform/msi-laptop-pf/).

Signed-off-by: Lennart Poettering <mzxreary@0pointer.de>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: export ec_transaction() for msi-laptop driver
Lennart Poettering [Wed, 4 Oct 2006 02:49:00 +0000 (22:49 -0400)]
ACPI: EC: export ec_transaction() for msi-laptop driver

Signed-off-by: Lennart Poettering <mzxreary@0pointer.de>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: Simplify acpi_hw_low_level*() with inb()/outb().
Denis M. Sadykov [Tue, 26 Sep 2006 15:50:33 +0000 (19:50 +0400)]
ACPI: EC: Simplify acpi_hw_low_level*() with inb()/outb().

Simplify acpi_hw_low_level_xxx() functions to inb() and outb().

Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: Unify poll and interrupt gpe handlers
Denis M. Sadykov [Tue, 26 Sep 2006 15:50:33 +0000 (19:50 +0400)]
ACPI: EC: Unify poll and interrupt gpe handlers

Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: Unify poll and interrupt mode transaction functions
Denis M. Sadykov [Tue, 26 Sep 2006 15:50:33 +0000 (19:50 +0400)]
ACPI: EC: Unify poll and interrupt mode transaction functions

Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: Remove unused variables and duplicated code
Denis M. Sadykov [Tue, 26 Sep 2006 15:50:33 +0000 (19:50 +0400)]
ACPI: EC: Remove unused variables and duplicated code

Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: EC: Remove unnecessary delay added by previous transation patch.
Denis M. Sadykov [Tue, 26 Sep 2006 15:50:33 +0000 (19:50 +0400)]
ACPI: EC: Remove unnecessary delay added by previous transation patch.

Remove unnecessary delay (50 ms) while reading data from EC in interrupt mode.

Signed-off-by: Alexey Y. Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: consolidate functions in acpi ec driver
Lennart Poettering [Tue, 5 Sep 2006 16:12:24 +0000 (12:12 -0400)]
ACPI: consolidate functions in acpi ec driver

Unify the following functions:

    acpi_ec_poll_read()
    acpi_ec_poll_write()
    acpi_ec_poll_query()
    acpi_ec_intr_read()
    acpi_ec_intr_write()
    acpi_ec_intr_query()

into:

    acpi_ec_poll_transaction()
    acpi_ec_intr_transaction()

These new functions take as arguments an ACPI EC command, a few bytes
to write to the EC data register and a buffer for a few bytes to read
from the EC data register. The old _read(), _write(), _query() are
just special cases of these functions.

Then unified the code in acpi_ec_poll_transaction() and
acpi_ec_intr_transaction() a little more. Both functions are now just
wrappers around the new acpi_ec_transaction_unlocked() function. The
latter contains the EC access logic, the two original
function now just do their special way of locking and call the the
new function for the actual work.

This saves a lot of very similar code. The primary reason for doing
this, however, is that my driver for MSI 270 laptops needs to issue
some non-standard EC commands in a safe way. Due to this I added a new
exported function similar to ec_write()/ec_write() which is called
ec_transaction() and is essentially just a wrapper around
acpi_ec_{poll,intr}_transaction().

Signed-off-by: Lennart Poettering <mzxreary@0pointer.de>
Acked-by: Luming Yu <luming.yu@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: Processor native C-states using MWAIT
Venkatesh Pallipadi [Mon, 25 Sep 2006 23:28:13 +0000 (16:28 -0700)]
ACPI: Processor native C-states using MWAIT

Intel processors starting with the Core Duo support
support processor native C-state using the MWAIT instruction.
Refer: Intel Architecture Software Developer's Manual
http://www.intel.com/design/Pentium4/manuals/253668.htm

Platform firmware exports the support for Native C-state to OS using
ACPI _PDC and _CST methods.
Refer: Intel Processor Vendor-Specific ACPI: Interface Specification
http://www.intel.com/technology/iapc/acpi/downloads/302223.htm

With Processor Native C-state, we use 'MWAIT' instruction on the processor
to enter different C-states (C1, C2, C3).  We won't use the special IO
ports to enter C-state and no SMM mode etc required to enter C-state.
Overall this will mean better C-state support.

One major advantage of using MWAIT for all C-states is, with this and
"treat interrupt as break event" feature of MWAIT, we can now get accurate
timing for the time spent in C1, C2, ..  states.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: sbs: fix module_param() initializers
Lebedev, Vladimir P [Tue, 5 Sep 2006 15:59:22 +0000 (19:59 +0400)]
ACPI: sbs: fix module_param() initializers

Signed-off-by: Len Brown <len.brown@intel.com>
18 years agoACPI: sbs: check for NULL device pointer
Lebedev, Vladimir P [Tue, 5 Sep 2006 15:49:13 +0000 (19:49 +0400)]
ACPI: sbs: check for NULL device pointer

Signed-off-by: Len Brown <len.brown@intel.com>