GitHub/LineageOS/android_kernel_motorola_exynos9610.git
17 years agox86 bitops: fix code style issues
Randy Dunlap [Thu, 25 Oct 2007 21:27:24 +0000 (14:27 -0700)]
x86 bitops: fix code style issues

Coding style cleanups:

- change __inline__ to inline;
- drop space in "* addr" parameters;
- drop space between func. name and '('

The "volatile" keywords are correct according to email from one
Linus Torvalds.

[Several other arches need some of this also.]

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agobitops kernel-doc: inline instead of macro
Randy Dunlap [Thu, 25 Oct 2007 21:21:49 +0000 (14:21 -0700)]
bitops kernel-doc: inline instead of macro

Use duplicated inline functions for test_and_set_bit_lock() on x86
instead of #define macros, thus avoiding a bad example.  This allows
kernel-doc to run cleanly instead of terminating with an error:

Error(linux-2.6.24-rc1//include/asm-x86/bitops_32.h:188): cannot understand prototype: 'test_and_set_bit_lock test_and_set_bit '

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
Linus Torvalds [Thu, 25 Oct 2007 22:58:40 +0000 (15:58 -0700)]
Merge git://git./linux/kernel/git/gregkh/usb-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (40 commits)
  USB: open disconnect race in usblcd
  USB: disconnect open race in legousbtower
  USB: open disconnect race in iowarrior
  USB: missing error check in emi62
  USB: missing error check in emi26
  USB: usb_serial_resume bug fix
  USB: remove new OHCI build warnings
  USB: amd5536udc - remove set_mwi() compiler warning
  USB: usbserial - fix potential deadlock between write() and IRQ
  usb: serial/pl2303: support for IO Data Device RSAQ5
  USB: fix read vs. disconnect race in cytherm driver
  USB: fix locking in idmouse
  USB: fix interface sysfs file-creation bug
  USB: fix ssb_ohci_probe() build bug
  USB: pl2303: remove can't happen checks, set speed properly and report baud rate
  USB: mos7840: Clean up old checks and stuff
  USB rio500.c: fix check-after-use
  USB iowarrior.c: fix check-after-use
  USB: add URB_FREE_BUFFER to permissible flags
  USB: isd200: sort out USB/IDE dependancy mess
  ...

17 years agoMerge branch 'warnings-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Thu, 25 Oct 2007 22:58:18 +0000 (15:58 -0700)]
Merge branch 'warnings-upstream' of git://git./linux/kernel/git/jgarzik/misc-2.6

* 'warnings-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6:
  ISDN/sc: fix longstanding warning

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 25 Oct 2007 22:50:48 +0000 (15:50 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/davem/sparc-2.6

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: pass correct addr in get_fb_unmapped_area(MAP_FIXED)

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 25 Oct 2007 22:50:32 +0000 (15:50 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/davem/net-2.6

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPV4]: Explicitly call fib_get_table() in fib_frontend.c
  [NET]: Use BUILD_BUG_ON in net/core/flowi.c
  [NET]: Remove in-code externs for some functions from net/core/dev.c
  [NET]: Don't declare extern variables in net/core/sysctl_net_core.c
  [TCP]: Remove unneeded implicit type cast when calling tcp_minshall_update()
  [NET]: Treat the sign of the result of skb_headroom() consistently
  [9P]: Fix missing unlock before return in p9_mux_poll_start
  [PKT_SCHED]: Fix sch_prio.c build with CONFIG_NETDEVICES_MULTIQUEUE
  [IPV4] ip_gre: sendto/recvfrom NBMA address
  [SCTP]: Consolidate sctp_ulpq_renege_xxx functions
  [NETLINK]: Fix ACK processing after netlink_dump_start
  [VLAN]: MAINTAINERS update
  [DCCP]: Implement SIOCINQ/FIONREAD
  [NET]: Validate device addr prior to interface-up

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
Linus Torvalds [Thu, 25 Oct 2007 22:48:05 +0000 (15:48 -0700)]
Merge git://git./linux/kernel/git/x86/linux-2.6-x86

* git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
  x86: fix bogus KERN_ALERT on oops
  x86: lguest build fix
  x86: fix CONFIG_KEXEC build breakage

17 years agoMerge branch 'sg' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Thu, 25 Oct 2007 22:44:54 +0000 (15:44 -0700)]
Merge branch 'sg' of git://git.kernel.dk/linux-2.6-block

* 'sg' of git://git.kernel.dk/linux-2.6-block:
  fix sg_phys to use dma_addr_t
  ub: add sg_init_table for sense and read capacity commands
  x86: pci-gart fix
  blackfin: fix sg fallout
  xtensa: dma-mapping.h is using linux/scatterlist.h functions, so include it
  SG: audit of drivers that use blk_rq_map_sg()
  arch/um/drivers/ubd_kern.c: fix a building error
  SG: Change sg_set_page() to take length and offset argument
  AVR32: Fix sg_page breakage
  mmc: sg fallout
  m68k: sg fallout
  More SG build fixes
  sg: add missing sg_init_table calls to zfcp
  SG build fix

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest
Linus Torvalds [Thu, 25 Oct 2007 22:38:19 +0000 (15:38 -0700)]
Merge git://git./linux/kernel/git/rusty/linux-2.6-lguest

* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest:
  lguest: documentation update
  lguest: Add to maintainers file.
  lguest: build fix
  lguest: clean up lguest_launcher.h
  lguest: remove unused "wake" element from struct lguest
  lguest: use defines from x86 headers instead of magic numbers
  lguest: example launcher header cleanup.

17 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzi...
Linus Torvalds [Thu, 25 Oct 2007 22:20:22 +0000 (15:20 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [libata] sata_nv: SWNCQ should not apply to MCP61
  libata-core: Be a bit more relaxed about early DMA zero devices
  ahci: ahci: implement workaround for ASUS P5W-DH Deluxe ahci_broken_hardreset(), take #2
  Fix pata_icside build for recent libata API changes
  libata: cosmetic clean up in ata_eh_reset()
  libata-core.c: make 2 functions static
  [libata] Create internal helper ata_dev_set_feature()

17 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzi...
Linus Torvalds [Thu, 25 Oct 2007 22:19:59 +0000 (15:19 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
  [netdrvr] forcedeth: add MCP77 device IDs
  rndis_host: reduce MTU instead of refusing to talk to devices with low max packet size
  cpmac: update to new fixed phy driver interface
  cpmac: convert to napi_struct interface
  cpmac: use print_mac() instead of MAC_FMT
  natsemi: fix oops, link back netdevice from private-struct
  ehea: fix port_napi_disable/enable
  bonding/bond_main.c: fix cut'n'paste error
  make bonding/bond_main.c:bond_deinit() static
  drivers/net/ipg.c: cleanups
  remove Documentation/networking/net-modules.txt

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched
Linus Torvalds [Thu, 25 Oct 2007 22:19:03 +0000 (15:19 -0700)]
Merge git://git./linux/kernel/git/mingo/linux-2.6-sched

* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
  sched: mark CONFIG_FAIR_GROUP_SCHED as !EXPERIMENTAL
  sched: isolate SMP balancing code a bit more
  sched: reduce balance-tasks overhead
  sched: make cpu_shares_{show,store}() static
  sched: clean up some control group code
  sched: constify sched.h
  sched: document profile=sleep requiring CONFIG_SCHEDSTATS
  sched: use show_regs() to improve __schedule_bug() output
  sched: clean up sched_domain_debug()
  sched: fix fastcall mismatch in completion APIs
  sched: fix sched_domain sysctl registration again

17 years agofs: Fix to correct the mbcache entries counter
Ram Gupta [Thu, 25 Oct 2007 15:03:28 +0000 (10:03 -0500)]
fs: Fix to correct the mbcache entries counter

This patch fixes the c_entry_count counter of the mbcache. Currently
it increments the counter first & allocate the cache entry later. In
case of failure to allocate the entry due to insufficient memory this
counter is still left incremented. This patch fixes this anomaly.

Signed-off-by: Ram Gupta <ram.gupta5@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix pointer mismatches in proc_sysctl.c
David Howells [Thu, 25 Oct 2007 14:27:40 +0000 (15:27 +0100)]
Fix pointer mismatches in proc_sysctl.c

Fix pointer mismatches in proc_sysctl.c.  The proc_handler() method returns a
size_t through an arg pointer, but is given a pointer to a ssize_t to return
into.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoPermit silencing of __deprecated warnings.
Jeff Garzik [Thu, 25 Oct 2007 08:06:13 +0000 (04:06 -0400)]
Permit silencing of __deprecated warnings.

The __deprecated marker is quite useful in highlighting the remnants of
old APIs that want removing.

However, it is quite normal for one or more years to pass, before the
(usually ancient, bitrotten) code in question is either updated or
deleted.

Thus, like __must_check, add a Kconfig option that permits the silencing
of this compiler warning.

This change mimics the ifdef-ery and Kconfig defaults of MUST_CHECK as
closely as possible.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix /proc/acpi/alarm BCD alarm encodings
Linus Torvalds [Thu, 18 Oct 2007 03:18:32 +0000 (23:18 -0400)]
Fix /proc/acpi/alarm BCD alarm encodings

This fixes some totally illogical and wrong code that converts things to
and from BCD mode essentially randomly, does math on values in BCD mode
etc etc.  Introduce a few helper functions to make it a bit more obvious
what is going on, and make sure that we always do all the arithmetic
(and anythign else, for that matter) in binary, not BCD.

Tested by Mark Lord, who found the problem originally, and also pushed
the patch back and reminded me about it.

Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoUSB: open disconnect race in usblcd
Oliver Neukum [Thu, 25 Oct 2007 14:05:53 +0000 (16:05 +0200)]
USB: open disconnect race in usblcd

this driver has a possible use after free due to a race when disconnect
and open handle intfdata without a lock.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: disconnect open race in legousbtower
Oliver Neukum [Thu, 25 Oct 2007 13:48:39 +0000 (15:48 +0200)]
USB: disconnect open race in legousbtower

again, possible use after free due to touching intfdata without lock.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: open disconnect race in iowarrior
Oliver Neukum [Thu, 25 Oct 2007 13:46:30 +0000 (15:46 +0200)]
USB: open disconnect race in iowarrior

the driver sets intfdata to NULL without lock. Data structures can be
freed and accessed.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: missing error check in emi62
Oliver Neukum [Thu, 25 Oct 2007 13:42:38 +0000 (15:42 +0200)]
USB: missing error check in emi62

the emi62 also lacks an error check.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: missing error check in emi26
Oliver Neukum [Thu, 25 Oct 2007 13:38:44 +0000 (15:38 +0200)]
USB: missing error check in emi26

this drivers lacks an error check.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: usb_serial_resume bug fix
Sarah Sharp [Thu, 25 Oct 2007 17:58:43 +0000 (10:58 -0700)]
USB: usb_serial_resume bug fix

Avoid potential null pointer dereference.

Signed-off-by: Sarah Sharp <sarah.a.sharp@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: remove new OHCI build warnings
David Brownell [Thu, 25 Oct 2007 00:23:42 +0000 (17:23 -0700)]
USB: remove new OHCI build warnings

Remove various newly-introduced compiler warnings for OHCI.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: amd5536udc - remove set_mwi() compiler warning
David Brownell [Thu, 25 Oct 2007 01:44:08 +0000 (18:44 -0700)]
USB: amd5536udc - remove set_mwi() compiler warning

Get rid of pointless pci_set_mwi() compiler warning.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: usbserial - fix potential deadlock between write() and IRQ
Jiri Kosina [Fri, 19 Oct 2007 22:05:19 +0000 (00:05 +0200)]
USB: usbserial - fix potential deadlock between write() and IRQ

USB: usbserial - fix potential deadlock between write() and IRQ

usb_serial_generic_write() doesn't disable interrupts when taking port->lock,
and could therefore deadlock with usb_serial_generic_read_bulk_callback()
being called from interrupt, taking the same lock. Fix it.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Acked-by: Larry Finger <larry.finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agousb: serial/pl2303: support for IO Data Device RSAQ5
Masakazu Mokuno [Tue, 23 Oct 2007 04:51:57 +0000 (13:51 +0900)]
usb: serial/pl2303: support for IO Data Device RSAQ5

This patch adds support for the IO Data Device USB-RSAQ5, PL2303 based
USB-serial converter, to pl2303 driver

Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix read vs. disconnect race in cytherm driver
Oliver Neukum [Tue, 23 Oct 2007 10:26:41 +0000 (12:26 +0200)]
USB: fix read vs. disconnect race in cytherm driver

the disconnect method of this driver set intfdata to NULL before
removing attribute files. The attributes' read methods will happily
follow the NULL pointer. Here's the correct ordering.

Signed-off-by : Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix locking in idmouse
Oliver Neukum [Tue, 23 Oct 2007 12:23:13 +0000 (14:23 +0200)]
USB: fix locking in idmouse

Pete caused me to lock at buggy drivers in this respect. The idmouse has
a race between open and disconnect. This patch

- solves the open/disconnect race
- switches locking to mutexes

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix interface sysfs file-creation bug
Alan Stern [Fri, 19 Oct 2007 13:51:58 +0000 (09:51 -0400)]
USB: fix interface sysfs file-creation bug

This patch (as1005) fixes a rather subtle problem.  When
usb_set_configuration() registers the interfaces and their files in
sysfs, it doesn't expect those files to exist already.  But when an
interface is registered, its driver may call usb_set_interface() and
thereby cause the sysfs files to be created.  The result is an error
when usb_set_configuration() goes on to create those same files again.

The (not-so-great) solution is to have usb_set_configuration() remove
any existing files before creating them.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix ssb_ohci_probe() build bug
Ingo Molnar [Mon, 15 Oct 2007 17:43:21 +0000 (19:43 +0200)]
USB: fix ssb_ohci_probe() build bug

fix ssb_ohci_probe() build bug:

 drivers/built-in.o: In function `ssb_ohci_probe':
 ohci-hcd.c:(.text+0xbff39): undefined reference to `ssb_device_enable'
 ohci-hcd.c:(.text+0xbff6f): undefined reference to `ssb_admatch_base'
 ohci-hcd.c:(.text+0xbff8b): undefined reference to `ssb_admatch_size'
 ohci-hcd.c:(.text+0xbffe5): undefined reference to `ssb_device_disable'
 [...]

the reason was that this Kconfig combination was allowed:

 CONFIG_SSB=m
 CONFIG_USB_OHCI_HCD=y
 CONFIG_USB_OHCI_HCD_SSB=y

the fix is to require a modular USB_OHCI_HCD build when SSB is modular.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: pl2303: remove can't happen checks, set speed properly and report baud rate
Alan Cox [Mon, 15 Oct 2007 19:54:47 +0000 (20:54 +0100)]
USB: pl2303: remove can't happen checks, set speed properly and report baud rate

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: mos7840: Clean up old checks and stuff
Alan Cox [Mon, 15 Oct 2007 19:53:35 +0000 (20:53 +0100)]
USB: mos7840: Clean up old checks and stuff

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB rio500.c: fix check-after-use
Adrian Bunk [Thu, 18 Oct 2007 10:53:07 +0000 (12:53 +0200)]
USB rio500.c: fix check-after-use

The Coverity checker spotted that we have already oops'ed if "dev"
was NULL in these places.

Since "dev" being NULL isn't possible at these places this patch removes
the NULL checks.

Additionally, I've fixed the formatting of the if's.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB iowarrior.c: fix check-after-use
Adrian Bunk [Thu, 18 Oct 2007 10:52:50 +0000 (12:52 +0200)]
USB iowarrior.c: fix check-after-use

The Coverity checker spotted that we have already oops'ed if "dev"
was NULL.

Since "dev" being NULL doesn't seem to be possible here this patch
removes the NULL check.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: add URB_FREE_BUFFER to permissible flags
Oliver Neukum [Wed, 17 Oct 2007 12:37:54 +0000 (14:37 +0200)]
USB: add URB_FREE_BUFFER to permissible flags

URB_FREE_BUFFER needs to be allowed in the sanity checks to use drivers that
use that flag.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: isd200: sort out USB/IDE dependancy mess
Alan Cox [Mon, 15 Oct 2007 14:08:11 +0000 (15:08 +0100)]
USB: isd200: sort out USB/IDE dependancy mess

The ISD200 driver imports a single trivial routine from the IDE layer and
in doing so creates a mess of dependancies that drag in the entire old
IDE layer. Even more sad - it does this for a routine which is usually
(little endian) a null function!

- Copy the function into ISD200
- Rename it so it doesn't clash with the ide header prototype
- Remove all the depend constraints

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: FTDI Elan driver: Convert ftdi->u132_lock to mutex
Matthias Kaehlcke [Tue, 16 Oct 2007 17:23:10 +0000 (19:23 +0200)]
USB: FTDI Elan driver: Convert ftdi->u132_lock to mutex

FTDI Elan driver: Convert the semaphore ftdi->u132_lock to the mutex
API

Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix scheduling of Iso URBs in uhci-hcd
Alan Stern [Tue, 16 Oct 2007 15:55:30 +0000 (11:55 -0400)]
USB: fix scheduling of Iso URBs in uhci-hcd

This patch (as1003) changes uhci-hcd to treat the URB_ISO_ASAP flag
the same as other host controller drivers, namely, to schedule an Iso
URB for the first available time slot that hasn't already expired.
URBs in which the flag isn't set will be scheduled for the first slot
following the last URB, even if it has expired.

This fixes a problem reported by Martin Bachem.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: io_edgeport: cleanups, and tty speed reporting
Alan Cox [Thu, 18 Oct 2007 08:24:25 +0000 (01:24 -0700)]
USB: io_edgeport: cleanups, and tty speed reporting

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: ftd_sio cleanups and updates for new termios work checkpatch fixes
Andrew Morton [Thu, 18 Oct 2007 08:24:25 +0000 (01:24 -0700)]
USB: ftd_sio cleanups and updates for new termios work checkpatch fixes

WARNING: line over 80 characters
#23: FILE: drivers/usb/serial/ftdi_sio.c:297:
+ speed_t force_baud; /* if non-zero, force the baud rate to this value */

ERROR: use tabs not spaces
#31: FILE: drivers/usb/serial/ftdi_sio.c:881:
+^I$

ERROR: use tabs not spaces
#39: FILE: drivers/usb/serial/ftdi_sio.c:890:
+^I$

WARNING: line over 80 characters
#111: FILE: drivers/usb/serial/ftdi_sio.c:1956:
+ tty_encode_baud_rate(port->tty, priv->force_baud, priv->force_baud);

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: ftd_sio: cleanups and updates for new termios work
Alan Cox [Thu, 18 Oct 2007 08:24:24 +0000 (01:24 -0700)]
USB: ftd_sio: cleanups and updates for new termios work

- Remove can't happen tests
- Rework speed validation in terms of baud rates not CBAUD bits
- Report speed set (or chosen)
- Minor termios correctness

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: cp2101: convert to new termios
Alan Cox [Thu, 18 Oct 2007 08:24:24 +0000 (01:24 -0700)]
USB: cp2101: convert to new termios

- Convert to new baud rate functions
- Add baud rate reporting

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: whiteheat: clean up can't happen checks and encode baud rate
Alan Cox [Thu, 18 Oct 2007 08:24:23 +0000 (01:24 -0700)]
USB: whiteheat: clean up can't happen checks and encode baud rate

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agousb-serial: handle NULL termios methods as "no hardware changing support"
Alan Cox [Thu, 18 Oct 2007 08:24:22 +0000 (01:24 -0700)]
usb-serial: handle NULL termios methods as "no hardware changing support"

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: sierra: termios
Alan Cox [Thu, 18 Oct 2007 08:24:22 +0000 (01:24 -0700)]
USB: sierra: termios

No hardware termios setting in this case so keep the old settings

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: option: termios handling
Alan Cox [Thu, 18 Oct 2007 08:24:21 +0000 (01:24 -0700)]
USB: option: termios handling

For the devices that have no hardware settings set up the termios return
properly.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: kobil_sct: termios encoding fixups
Alan Cox [Thu, 18 Oct 2007 08:24:21 +0000 (01:24 -0700)]
USB: kobil_sct: termios encoding fixups

- Clear unsupported CMSPAR
- Encode resulting speeds

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: keyspan termios tidy
Alan Cox [Thu, 18 Oct 2007 08:24:20 +0000 (01:24 -0700)]
USB: keyspan termios tidy

- Clear unsupported CMSPAR bit
- Clean up long chains of a->b-> a bit
- Encode baud rate back into tty structure properly

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: ir_usb: termios handling
Alan Cox [Thu, 18 Oct 2007 08:24:20 +0000 (01:24 -0700)]
USB: ir_usb: termios handling

- Clean up paranoia checks
- Propogate back a correct fixed termios

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: empeg: clean up and handle speeds
Alan Cox [Thu, 18 Oct 2007 08:24:19 +0000 (01:24 -0700)]
USB: empeg: clean up and handle speeds

The empeg is pretty fixed. Tidy up the long foo->bar->baz stuff and
encode the fixed speed properly.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: digi_acceleport: fix termios and also readability a bit
Alan Cox [Thu, 18 Oct 2007 08:24:19 +0000 (01:24 -0700)]
USB: digi_acceleport: fix termios and also readability a bit

- Expand some x&y to x & y so I could read it when checking
- Clear CMSPAR bit in the termios (as the driver does not support it)
- Encode the speed using the new tty_encode_baud_rate facility

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: ch341: fix termios handling
Alan Cox [Thu, 18 Oct 2007 08:24:18 +0000 (01:24 -0700)]
USB: ch341: fix termios handling

The ch341 currently doesn't support most of the hardware setting.  So to keep
the termios data right we propogate the old termios hardware values back then
encode the speed.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agousb serial: kill another case we pass NULL and shouldn't
Alan Cox [Thu, 18 Oct 2007 08:24:18 +0000 (01:24 -0700)]
usb serial: kill another case we pass NULL and shouldn't

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: ark3116: update termios handling
Alan Cox [Thu, 18 Oct 2007 08:24:17 +0000 (01:24 -0700)]
USB: ark3116: update termios handling

- Set the i/ospeed in the initial termios properly

- Use the tty_encode_baud_rate functions to report resulting rates properly

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoserial: stop passing NULL to functions that expect data
Alan Cox [Thu, 18 Oct 2007 08:24:16 +0000 (01:24 -0700)]
serial: stop passing NULL to functions that expect data

Earlier patches have removed the checking for old v new differences from the
USB drivers so we can now pass in a valid blank old termios so that we don't
to fill the drivers with magic hacks for console support

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: add new Novatel device ids to option driver
Greg Kroah-Hartman [Tue, 9 Apr 2002 19:14:34 +0000 (12:14 -0700)]
USB: add new Novatel device ids to option driver

This adds support for the U727 and MC950 devices.

Cc: Rony Sarkis <rsarkis@nvtl.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agofix sg_phys to use dma_addr_t
Hugh Dickins [Thu, 25 Oct 2007 07:55:05 +0000 (09:55 +0200)]
fix sg_phys to use dma_addr_t

x86_32 CONFIG_HIGHMEM64G with 5GB RAM hung when booting, after issuing
some "request_module: runaway loop modprobe binfmt-0000" messages in
trying to exec /sbin/init.

The binprm buf doesn't see the right ".ELF" header because sg_phys()
is providing the wrong physical addresses for high pages: a 32-bit
unsigned long is too small in this case, we need to use dma_addr_t.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years ago[netdrvr] forcedeth: add MCP77 device IDs
Ayaz Abdulla [Thu, 25 Oct 2007 07:36:42 +0000 (03:36 -0400)]
[netdrvr] forcedeth: add MCP77 device IDs

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agorndis_host: reduce MTU instead of refusing to talk to devices with low max packet...
Thomas Sailer [Tue, 23 Oct 2007 22:47:19 +0000 (00:47 +0200)]
rndis_host: reduce MTU instead of refusing to talk to devices with low max packet size

This patch makes the host RNDIS driver talk to RNDIS devices with an MTU
less than 1.5k, instead of refusing to talk to such a device.

Signed-Off-by: Thomas Sailer <t.sailer@alumni.ethz.ch>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
--

Hi Jeff,
are you the right person to send this to?
Nobody else seems to be wanting to forward this to Linus...

Thanks,
Tom

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocpmac: update to new fixed phy driver interface
Eugene Konev [Wed, 24 Oct 2007 02:42:03 +0000 (10:42 +0800)]
cpmac: update to new fixed phy driver interface

Use fixed_mdio_get_phydev for obtaining fixed phy instances and adopt to
changed fixed phy device naming.

Signed-off-by: Eugene Konev <ejka@imfi.kspu.ru>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocpmac: convert to napi_struct interface
Eugene Konev [Wed, 24 Oct 2007 02:42:02 +0000 (10:42 +0800)]
cpmac: convert to napi_struct interface

Convert cpmac to new napi_struct API introduced by
bea3348eef27e6044b6161fd04c3152215f96411 [NET]: Make NAPI polling independent
of struct net_device objects.
Only disable rx interrupts if napi actually has been scheduled.

Signed-off-by: Eugene Konev <ejka@imfi.kspu.ru>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocpmac: use print_mac() instead of MAC_FMT
Eugene Konev [Wed, 24 Oct 2007 02:42:01 +0000 (10:42 +0800)]
cpmac: use print_mac() instead of MAC_FMT

Switch to using DECLARE_MAC_BUF/print_mac() added by commit
0795af5729b18218767fab27c44b1384f72dc9ad [NET]: Introduce and use print_mac()
and DECLARE_MAC_BUF().

Signed-off-by: Eugene Konev <ejka@imfi.kspu.ru>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agonatsemi: fix oops, link back netdevice from private-struct
Ingo Molnar [Wed, 24 Oct 2007 11:58:57 +0000 (13:58 +0200)]
natsemi: fix oops, link back netdevice from private-struct

* Andrew Nelless <andrew@nelless.net> wrote:

> Hi,
>
> I booted up 2.6.24-rc1 this morning [Real early over a brew ;-)] and
> was having a problems with multiple ~5 second hangs on SATA/drive init
> (Something to do with "EH" something-or-other and resets but I'll
> email in separately about it later unless its fixed by the time I get
> the chance).
>
> Anyway, I went to fire up netconsole to get a decent log dump and hit
> across the following nasty. Netconsole works fine in 2.6.23.1 with a
> similar config and the same kernel parameters.
>
> A shot of the screen is the only method I could come up with to
> capture the log, I hope that is OK, it is pretty readable.
>
>
> The nasty:
> http://andotnet.nfshost.com/linux/2.6.24-rc1-netconsole-nullderef.jpg

the NULL dereference is here:

 (gdb) list *0xffffffff804a9504
 0xffffffff804a9504 is in natsemi_poll (drivers/net/natsemi.c:717).
 712             return count;
 713     }
 714
 715     static inline void __iomem *ns_ioaddr(struct net_device *dev)
 716     {
 717             return (void __iomem *) dev->base_addr;
 718     }
 719

which is this code from natsemi.c:

 2227            struct net_device *dev = np->dev;
 2228            void __iomem * ioaddr = ns_ioaddr(dev);
 2229            int work_done = 0;

seems like the NAPI changes in -rc1 added an np->dev field but forgot to
initialize it ...

does the patch below fix the oops for you?

Ingo

-------------------->
Subject: natsemi: fix oops, link back netdevice from private-struct
From: Ingo Molnar <mingo@elte.hu>

this commit:

  commit bea3348eef27e6044b6161fd04c3152215f96411
  Author: Stephen Hemminger <shemminger@linux-foundation.org>
  Date:   Wed Oct 3 16:41:36 2007 -0700

      [NET]: Make NAPI polling independent of struct net_device objects.

added np->dev to drivers/net/natsemi.c's struct netdev_private, but
forgot to initialize that new field upon driver init. The result was
a predictable NULL dereference oops the first time the hardware
generated an interrupt.

Reported-by: Andrew Nelless <andrew@nelless.net>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoehea: fix port_napi_disable/enable
Jan-Bernd Themann [Wed, 24 Oct 2007 09:53:34 +0000 (11:53 +0200)]
ehea: fix port_napi_disable/enable

napi_disable / napi_enable must be applied on all ehea queues.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agobonding/bond_main.c: fix cut'n'paste error
Adrian Bunk [Wed, 24 Oct 2007 16:27:43 +0000 (18:27 +0200)]
bonding/bond_main.c: fix cut'n'paste error

This patch fixes a cut'n'paste error in
commit 1b76b31693d4a6088dec104ff6a6ead54081a3c2.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agomake bonding/bond_main.c:bond_deinit() static
Adrian Bunk [Wed, 24 Oct 2007 16:23:17 +0000 (18:23 +0200)]
make bonding/bond_main.c:bond_deinit() static

bond_deinit() can now become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agodrivers/net/ipg.c: cleanups
Adrian Bunk [Wed, 24 Oct 2007 16:23:19 +0000 (18:23 +0200)]
drivers/net/ipg.c: cleanups

This patch contains the following cleanups:
- make ipg_nic_get_stats() static
- move DefaultPhyParam[] from ipg.h to ipg.c and make it static

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoremove Documentation/networking/net-modules.txt
Adrian Bunk [Wed, 24 Oct 2007 16:25:03 +0000 (18:25 +0200)]
remove Documentation/networking/net-modules.txt

According to git, the only one who touched this file during the last
5 years was me when removing drivers...

modinfo offers less ancient information.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Paul Gortmaker <paul.gortmaker@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoub: add sg_init_table for sense and read capacity commands
FUJITA Tomonori [Thu, 25 Oct 2007 07:17:03 +0000 (09:17 +0200)]
ub: add sg_init_table for sense and read capacity commands

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agox86: pci-gart fix
FUJITA Tomonori [Thu, 25 Oct 2007 07:13:32 +0000 (09:13 +0200)]
x86: pci-gart fix

map_sg could copy the last sg element to another position (if merging
some elements). It breaks sg chaining. This copies only
dma_address/length instead of the whole sg element.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years ago[libata] sata_nv: SWNCQ should not apply to MCP61
Kuan Luo [Thu, 25 Oct 2007 06:14:17 +0000 (02:14 -0400)]
[libata] sata_nv: SWNCQ should not apply to MCP61

The mcp61 has bug with ncq.

Signed-off-by: Kuan Luo <kluo@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agolibata-core: Be a bit more relaxed about early DMA zero devices
Alan Cox [Mon, 15 Oct 2007 18:18:27 +0000 (19:18 +0100)]
libata-core: Be a bit more relaxed about early DMA zero devices

I guess Windows didn't care about the command so neither did they

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoahci: ahci: implement workaround for ASUS P5W-DH Deluxe ahci_broken_hardreset(),...
Tejun Heo [Thu, 25 Oct 2007 05:59:16 +0000 (14:59 +0900)]
ahci: ahci: implement workaround for ASUS P5W-DH Deluxe ahci_broken_hardreset(), take #2

P5W-DH Deluxe has ICH9 which doesn't have PMP support but SIMG 4726
hardwired to the second port of AHCI controller at PCI device 1f.2.
The 4726 doesn't work as PMP but as a storage processor which can do
hardware RAID on downstream ports.

When no device is attached to the downstream port of the 4726, pseudo
ATA device for configuration appears.  Unfortunately, ATA emulation on
the device is very lousy and causes long hang during boot.

This patch implements workaround for the board.  If the mainboard is
P5W-DH Deluxe (matched using DMI), only hardreset is used on the
second port of AHCI controller @ 1f.2 and the hardreset doesn't depend
on receiving the first FIS and just proceed to IDENTIFY.

This workaround fixes bugzilla #8923.

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

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoFix pata_icside build for recent libata API changes
Al Viro [Sun, 14 Oct 2007 00:12:39 +0000 (01:12 +0100)]
Fix pata_icside build for recent libata API changes

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: cosmetic clean up in ata_eh_reset()
Tejun Heo [Wed, 24 Oct 2007 06:21:26 +0000 (15:21 +0900)]
libata: cosmetic clean up in ata_eh_reset()

Local variable @action usage in ata_eh_reset() is a bit confusing.
It's used only to cache ehc->i.action to test reset masks after
clearing it; however, due to the generic name "action", it's easy to
misinterpret the local variable as containing the selected reset
method later.  Also, the reason for caching the original value is easy
to miss.

This patch renames @action to @tmp_action and make it buffer newly
selected value instead to improve readability.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata-core.c: make 2 functions static
Adrian Bunk [Wed, 24 Oct 2007 16:23:06 +0000 (18:23 +0200)]
libata-core.c: make 2 functions static

strn_pattern_cmp() and ata_port_detach() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolguest: documentation update
Rusty Russell [Thu, 25 Oct 2007 05:02:50 +0000 (15:02 +1000)]
lguest: documentation update

Went through the documentation doing typo and content fixes.  This
patch contains only comment and whitespace changes.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years ago[libata] Create internal helper ata_dev_set_feature()
Jeff Garzik [Thu, 25 Oct 2007 04:33:27 +0000 (00:33 -0400)]
[libata] Create internal helper ata_dev_set_feature()

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agolguest: Add to maintainers file.
Rusty Russell [Thu, 25 Oct 2007 04:12:24 +0000 (14:12 +1000)]
lguest: Add to maintainers file.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: build fix
Jeff Garzik [Thu, 25 Oct 2007 04:15:09 +0000 (14:15 +1000)]
lguest: build fix

Fix this error (i386 !SMP build)

arch/x86/lguest/boot.c: In function ‘lguest_init’:
arch/x86/lguest/boot.c:1059: error: ‘pm_power_off’ undeclared (first use in this function)

by including linux/pm.h.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: clean up lguest_launcher.h
Rusty Russell [Thu, 25 Oct 2007 04:12:20 +0000 (14:12 +1000)]
lguest: clean up lguest_launcher.h

Remove now-unused defines.
Fix old idempotent #ifndef _ASM_LGUEST_USER name.
Fix comment on use of lguest_req.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: remove unused "wake" element from struct lguest
Rusty Russell [Thu, 25 Oct 2007 04:10:30 +0000 (14:10 +1000)]
lguest: remove unused "wake" element from struct lguest

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: use defines from x86 headers instead of magic numbers
Rusty Russell [Thu, 25 Oct 2007 04:09:53 +0000 (14:09 +1000)]
lguest: use defines from x86 headers instead of magic numbers

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agolguest: example launcher header cleanup.
Rusty Russell [Thu, 25 Oct 2007 04:09:25 +0000 (14:09 +1000)]
lguest: example launcher header cleanup.

Now the kernel headers are clean for userspace export, we don't need
to typedef kernel types before including them.  We also don't need
pci_ids.h (that was from an earlier virtio draft).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
17 years agosched: mark CONFIG_FAIR_GROUP_SCHED as !EXPERIMENTAL
Ingo Molnar [Wed, 24 Oct 2007 16:23:51 +0000 (18:23 +0200)]
sched: mark CONFIG_FAIR_GROUP_SCHED as !EXPERIMENTAL

mark CONFIG_FAIR_GROUP_SCHED as !EXPERIMENTAL. All bugs have been
fixed and it's perfect ;-)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: isolate SMP balancing code a bit more
Peter Williams [Wed, 24 Oct 2007 16:23:51 +0000 (18:23 +0200)]
sched: isolate SMP balancing code a bit more

At the moment, a lot of load balancing code that is irrelevant to non
SMP systems gets included during non SMP builds.

This patch addresses this issue and reduces the binary size on non
SMP systems:

   text    data     bss     dec     hex filename
  10983      28    1192   12203    2fab sched.o.before
  10739      28    1192   11959    2eb7 sched.o.after

Signed-off-by: Peter Williams <pwil3058@bigpond.net.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: reduce balance-tasks overhead
Peter Williams [Wed, 24 Oct 2007 16:23:51 +0000 (18:23 +0200)]
sched: reduce balance-tasks overhead

At the moment, balance_tasks() provides low level functionality for both
  move_tasks() and move_one_task() (indirectly) via the load_balance()
function (in the sched_class interface) which also provides dual
functionality.  This dual functionality complicates the interfaces and
internal mechanisms and makes the run time overhead of operations that
are called with two run queue locks held.

This patch addresses this issue and reduces the overhead of these
operations.

Signed-off-by: Peter Williams <pwil3058@bigpond.net.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: make cpu_shares_{show,store}() static
Adrian Bunk [Wed, 24 Oct 2007 16:23:50 +0000 (18:23 +0200)]
sched: make cpu_shares_{show,store}() static

cpu_shares_{show,store}() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: clean up some control group code
Paul Menage [Wed, 24 Oct 2007 16:23:50 +0000 (18:23 +0200)]
sched: clean up some control group code

- replace "cont" with "cgrp" in a few places in the CFS cgroup code,
- use write_uint rather than write for cpu.shares write function

Signed-off-by: Paul Menage <menage@google.com>
Acked-by : Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: constify sched.h
Joe Perches [Wed, 24 Oct 2007 16:23:50 +0000 (18:23 +0200)]
sched: constify sched.h

Add const to some struct task_struct * uses

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: document profile=sleep requiring CONFIG_SCHEDSTATS
Mel Gorman [Wed, 24 Oct 2007 16:23:50 +0000 (18:23 +0200)]
sched: document profile=sleep requiring CONFIG_SCHEDSTATS

profile=sleep only works if CONFIG_SCHEDSTATS is set. This patch notes
the limitation in Documentation/kernel-parameters.txt and prints a
warning at boot-time if profile=sleep is used without CONFIG_SCHEDSTAT.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: use show_regs() to improve __schedule_bug() output
Satyam Sharma [Wed, 24 Oct 2007 16:23:50 +0000 (18:23 +0200)]
sched: use show_regs() to improve __schedule_bug() output

A full register dump along with stack backtrace would make the
"scheduling while atomic" message more helpful. Use show_regs() instead
of dump_stack() for this. We already know we're atomic in here (that is
why this function was called) so show_regs()'s atomicity expectations
are guaranteed.

Also, modify the output of the "BUG: scheduling while atomic:" header a
bit to keep task->comm and task->pid together and preempt_count() after
them.

Signed-off-by: Satyam Sharma <satyam@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: clean up sched_domain_debug()
Ingo Molnar [Wed, 24 Oct 2007 16:23:48 +0000 (18:23 +0200)]
sched: clean up sched_domain_debug()

clean up sched_domain_debug().

this also shrinks the code a bit:

   text    data     bss     dec     hex filename
  50474    4306     480   55260    d7dc sched.o.before
  50404    4306     480   55190    d796 sched.o.after

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: fix fastcall mismatch in completion APIs
Ingo Molnar [Wed, 24 Oct 2007 16:23:48 +0000 (18:23 +0200)]
sched: fix fastcall mismatch in completion APIs

Jeff Dike noticed that wait_for_completion_interruptible()'s prototype
had a mismatched fastcall.

Fix this by removing the fastcall attributes from all the completion APIs.

Found-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: fix sched_domain sysctl registration again
Milton Miller [Wed, 24 Oct 2007 16:23:48 +0000 (18:23 +0200)]
sched: fix sched_domain sysctl registration again

commit  029190c515f15f512ac85de8fc686d4dbd0ae731 (cpuset
sched_load_balance flag) was not tested SCHED_DEBUG enabled as
committed as it dereferences NULL when used and it reordered
the sysctl registration to cause it to never show any domains
or their tunables.

Fixes:

1) restore arch_init_sched_domains ordering
we can't walk the domains before we build them

presently we register cpus with empty directories (no domain
directories or files).

2) make unregister_sched_domain_sysctl do nothing when already unregistered
detach_destroy_domains is now called one set of cpus at a time
unregister_syctl dereferences NULL if called with a null.

While the the function would always dereference null if called
twice, in the previous code it was always called once and then
was followed a register.  So only the hidden bug of the
sysctl_root_table not being allocated followed by an attempt to
free it would have shown the error.

3) always call unregister and register in partition_sched_domains
The code is "smart" about unregistering only needed domains.
Since we aren't guaranteed any calls to unregister, always
unregister.   Without calling register on the way out we
will not have a table or any sysctl tree.

4) warn if register is called without unregistering
The previous table memory is lost, leaving pointers to the
later freed memory in sysctl and leaking the memory of the
tables.

Before this patch on a 2-core 4-thread box compiled for SMT and NUMA,
the domains appear empty (there are actually 3 levels per cpu).  And as
soon as two domains a null pointer is dereferenced (unreliable in this
case is stack garbage):

bu19a:~# ls -R /proc/sys/kernel/sched_domain/
/proc/sys/kernel/sched_domain/:
cpu0  cpu1  cpu2  cpu3

/proc/sys/kernel/sched_domain/cpu0:

/proc/sys/kernel/sched_domain/cpu1:

/proc/sys/kernel/sched_domain/cpu2:

/proc/sys/kernel/sched_domain/cpu3:

bu19a:~# mkdir /dev/cpuset
bu19a:~# mount -tcpuset cpuset /dev/cpuset/
bu19a:~# cd /dev/cpuset/
bu19a:/dev/cpuset# echo 0 > sched_load_balance
bu19a:/dev/cpuset# mkdir one
bu19a:/dev/cpuset# echo 1 > one/cpus
bu19a:/dev/cpuset# echo 0 > one/sched_load_balance
Unable to handle kernel paging request for data at address 0x00000018
Faulting instruction address: 0xc00000000006b608
NIP: c00000000006b608 LR: c00000000006b604 CTR: 0000000000000000
REGS: c000000018d973f0 TRAP: 0300   Not tainted  (2.6.23-bml)
MSR: 9000000000009032 <EE,ME,IR,DR>  CR: 28242442  XER: 00000000
DAR: 0000000000000018, DSISR: 0000000040000000
TASK = c00000001912e340[1987] 'bash' THREAD: c000000018d94000 CPU: 2
..
NIP [c00000000006b608] .unregister_sysctl_table+0x38/0x110
LR [c00000000006b604] .unregister_sysctl_table+0x34/0x110
Call Trace:
[c000000018d97670] [c000000007017270] 0xc000000007017270 (unreliable)
[c000000018d97720] [c000000000058710] .detach_destroy_domains+0x30/0xb0
[c000000018d977b0] [c00000000005cf1c] .partition_sched_domains+0x1bc/0x230
[c000000018d97870] [c00000000009fdc4] .rebuild_sched_domains+0xb4/0x4c0
[c000000018d97970] [c0000000000a02e8] .update_flag+0x118/0x170
[c000000018d97a80] [c0000000000a1768] .cpuset_common_file_write+0x568/0x820
[c000000018d97c00] [c00000000009d95c] .cgroup_file_write+0x7c/0x180
[c000000018d97cf0] [c0000000000e76b8] .vfs_write+0xe8/0x1b0
[c000000018d97d90] [c0000000000e810c] .sys_write+0x4c/0x90
[c000000018d97e30] [c00000000000852c] syscall_exit+0x0/0x40

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agoblackfin: fix sg fallout
Adrian Bunk [Wed, 24 Oct 2007 12:09:25 +0000 (14:09 +0200)]
blackfin: fix sg fallout

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jens Axboe <axboe@carl.home.kernel.dk>
17 years agoxtensa: dma-mapping.h is using linux/scatterlist.h functions, so include it
Jens Axboe [Wed, 24 Oct 2007 11:28:40 +0000 (13:28 +0200)]
xtensa: dma-mapping.h is using linux/scatterlist.h functions, so include it

It's currently using asm/scatterlist.h, but that is not enough.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoMerge branch 'for-linus' of ssh://master.kernel.org/pub/scm/linux/kernel/git/hskinnem...
Jens Axboe [Wed, 24 Oct 2007 11:25:26 +0000 (13:25 +0200)]
Merge branch 'for-linus' of ssh:///linux/kernel/git/hskinnemoen/avr32-2.6 into sg

17 years agoSG: audit of drivers that use blk_rq_map_sg()
Jens Axboe [Wed, 24 Oct 2007 11:21:21 +0000 (13:21 +0200)]
SG: audit of drivers that use blk_rq_map_sg()

They need to properly init the sg table, or blk_rq_map_sg() will
complain if CONFIG_DEBUG_SG is set.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoarch/um/drivers/ubd_kern.c: fix a building error
WANG Cong [Wed, 24 Oct 2007 11:07:11 +0000 (13:07 +0200)]
arch/um/drivers/ubd_kern.c: fix a building error

Fix this uml building error:
arch/um/drivers/ubd_kern.c: In function 'do_ubd_request':
arch/um/drivers/ubd_kern.c:1118: error: implicit declaration of function
'sg_page'
arch/um/drivers/ubd_kern.c:1118: warning: passing argument 6 of
'prepare_request' makes pointer from integer without a cast
make[1]: *** [arch/um/drivers/ubd_kern.o] Error 1
make: *** [arch/um/drivers] Error 2

Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Add sg_init_table() call as well.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>