Steffen Klassert [Mon, 9 Jul 2007 18:50:23 +0000 (11:50 -0700)]
3cSOHO100-TX needs EXTRA_PREAMBLE
The 3cSOHO100-TX needs a mdio_sync() before mdio_read() to read the MII
transceiver registers properly. Adding EXTRA_PREAMBLE to drv_flags of the
3cSOHO100-TX will force this.
This problem exists already for years (I checked back to 2.6.8).
Setting duplex for the 3cSOHO100-TX was more or less a random process.
Till 2.6.15 it was more likely that the diver ends up in half
duplex mode, after the code change in 2.6.16 it was more likely
to end up in full duplex mode. I wonder why nobody noticed this earier.
Hopefully addresses
Bug 7454 3c59x (3cSOHO100-TX Hurricane) slow network bug
http://bugzilla.kernel.org/show_bug.cgi?id=7454
and
Bug 3654 3cSOHO100-TX: No MII transceiver present
http://bugzilla.kernel.org/show_bug.cgi?id=3654
Cc: Jonas Sandberg <jonassa@gmail.com>
Cc: Jon Sanchez <bugs@niluje.net>
Signed-off-by: Steffen Klassert <klassert@mathematik.tu-chemnitz.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
vignesh babu [Mon, 9 Jul 2007 18:50:22 +0000 (11:50 -0700)]
Use is_power_of_2() in myri10ge/myri10ge.c
Replace (n & (n-1)) with is_power_of_2()
Signed-off-by: vignesh babu <vignesh.babu@wipro.com>
Cc: Brice Goglin <brice@myri.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
vignesh babu [Mon, 9 Jul 2007 18:50:22 +0000 (11:50 -0700)]
use is_power_of_2() in cxgb3/cxgb3_main.c
Replace (n & (n-1)) with is_power_of_2()
Signed-off-by: vignesh babu <vignesh.babu@wipro.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Yoann Padioleau [Mon, 9 Jul 2007 18:50:20 +0000 (11:50 -0700)]
atari_pamsnet.c: old declaration ritchie style fix
Use consistent function declaration style.
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:44 +0000 (15:33 -0700)]
sky2: 1.16 version
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:43 +0000 (15:33 -0700)]
sky2: remove some leftover debug messages
Eliminate extra debug messages
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:42 +0000 (15:33 -0700)]
sky2: use upper_32_bits() macro
Use upper_32_bits() inline
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:41 +0000 (15:33 -0700)]
sky2: use roundup() macro
Use roundup() macro to size receive buffer.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:40 +0000 (15:33 -0700)]
sky2: check drop truncated packets
If packet larger than MTU is received, the driver uses hardware to
truncate the packet. Use the status registers to catch/drop them.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:39 +0000 (15:33 -0700)]
sky2: add support for read/write of EEPROM
Add get/set eeprom support for sky2.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:38 +0000 (15:33 -0700)]
sky2: unmark as EXPERIMENTAL
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:37 +0000 (15:33 -0700)]
sky2: receive fill
Simplify receive buffer refill logic. Rather than trying to update
incrementally; do receive ring refill at end of receive processing.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:36 +0000 (15:33 -0700)]
sky2: check for more work before leaving NAPI
This patch avoids generating another IRQ if more packets
arrive while in the NAPI poll routine. Before marking device as
finished, it rechecks that the status ring is empty.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:35 +0000 (15:33 -0700)]
sky2: debug interface
Add an optional debug interface for displaying state of transmit/receive
rings. Creates a file debugfs/sky2/ethX for each device that is up.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:34 +0000 (15:33 -0700)]
sky2: carrier management
Make sky2 handle carrier similar to other drivers,
eliminate some possible races in carrier state transistions.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Mon, 9 Jul 2007 22:33:33 +0000 (15:33 -0700)]
sky2: restore workarounds for lost interrupts
This patch restores a couple of workarounds from 2.6.16:
* restart transmit moderation timer in case it expires during IRQ routine
* default to having 10 HZ watchdog timer.
At this point it more important not to hang than to worry about the
power cost.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Geert Uytterhoeven [Tue, 10 Jul 2007 10:26:29 +0000 (12:26 +0200)]
Documentation/block/barrier.txt is not in sync with the actual code: - blk_queue_ordered() no longer has a gfp_mask parameter - blk_queue_ordered_locked() no longer exists - sd_prepare_flush() looks slightly different
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Acked-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Matthias Kaehlcke [Tue, 10 Jul 2007 10:26:24 +0000 (12:26 +0200)]
Use list_for_each_entry() instead of list_for_each() in the block device
elevator
Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jan Engelhardt [Tue, 10 Jul 2007 10:26:06 +0000 (12:26 +0200)]
Make a "menuconfig" out of the Kconfig objects "menu, ..., endmenu",
so that the user can disable all the options in that menu at once
instead of having to disable each option separately.
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jan Engelhardt [Tue, 10 Jul 2007 10:24:17 +0000 (12:24 +0200)]
block/Kconfig already has its own "menuconfig" so remove these
"menu, endmenu" that did not get cleaned up in the block patch
[ http://lkml.org/lkml/2007/4/10/251 ]
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jan Engelhardt [Tue, 10 Jul 2007 10:24:11 +0000 (12:24 +0200)]
Use menuconfigs instead of menus, so the whole menu can be disabled at once
instead of going through all options.
Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 10 Jul 2007 11:43:25 +0000 (13:43 +0200)]
cfq-iosched: fix async queue behaviour
With the cfq_queue hash removal, we inadvertently got rid of the
async queue sharing. This was not intentional, in fact CFQ purposely
shares the async queue per priority level to get good merging for
async writes.
So put some logic in cfq_get_queue() to track the shared queues.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Steven Whitehouse [Tue, 10 Jul 2007 11:28:27 +0000 (12:28 +0100)]
[GFS2] Accept old format NFS filehandles
On Tue, 2007-07-10 at 10:06 +0100, Christoph Hellwig wrote:
> > -#define GFS2_LARGE_FH_SIZE 10
> > -
> > -struct gfs2_fh_obj {
> > - struct gfs2_inum_host this;
> > - u32 imode;
> > -};
> > +#define GFS2_LARGE_FH_SIZE 8
>
> Because gfs2_decode_fh only accepts file handles with GFS2_LARGE_FH_SIZE
> or GFS2_LARGE_FH_SIZE you don't accept filehandles sent out by and older
> gfs version anymore. Stale filehandles because of a new kernel version
> are a big no-no, so please add back code to handle the old filehandles
> on the decode side.
>
This should fix that problem I think since its only relating to end of
the fh we can just ignore that field in order to accept the older
format.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Wendy Cheng <wcheng@redhat.com>
Anton Vorontsov [Wed, 11 Apr 2007 21:03:55 +0000 (01:03 +0400)]
[BATTERY] ds2760 W1 slave
This is W1 slave for ds2760 chip, found inside almost every HP iPaq and
HTC PDAs/phones.
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Acked-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
David Woodhouse [Thu, 3 May 2007 20:51:18 +0000 (00:51 +0400)]
[BATTERY] One Laptop Per Child power/battery driver
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
David Woodhouse [Thu, 3 May 2007 20:47:40 +0000 (00:47 +0400)]
[BATTERY] Apple PMU driver
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Anton Vorontsov [Thu, 3 May 2007 20:45:39 +0000 (00:45 +0400)]
[BATTERY] 1-Wire ds2760 chip battery driver
This is driver for batteries with ds2760 chip inside, found inside
almost every HP iPaq and HTC PDAs/phones.
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Anton Vorontsov [Thu, 3 May 2007 20:43:24 +0000 (00:43 +0400)]
[BATTERY] APM emulation driver for class batteries
Signed-off-by: Eugeny Boger <eugenyboger@dgap.mipt.ru>
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Anton Vorontsov [Thu, 3 May 2007 20:32:17 +0000 (00:32 +0400)]
[BATTERY] pda_power platform driver
Common power driver for PDAs and phones with one or two external
power supplies (AC/USB) connected to main and backup batteries,
and optional builtin charger.
It's used to stop logic duplication through different embedded
devices. So, power supply *logic* is here. pda_power register
power supplies, and will take care about notifying batteries
about power changes through external power interface.
Currently, power consumption legal limits (including USB power
consumption) should be handled by platform code, inside set_charge
function.
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Signed-off-by: Roman Moravcik <roman.moravcik@gmail.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Anton Vorontsov [Thu, 3 May 2007 20:27:45 +0000 (00:27 +0400)]
[BATTERY] Universal power supply class (was: battery class)
This class is result of "external power" and "battery" classes merge,
as suggested by David Woodhouse. He also implemented uevent support.
Here how userspace seeing it now:
# ls /sys/class/power\ supply/
ac main-battery usb
# cat /sys/class/power\ supply/ac/type
AC
# cat /sys/class/power\ supply/usb/type
USB
# cat /sys/class/power\ supply/main-battery/type
Battery
# cat /sys/class/power\ supply/ac/online
1
# cat /sys/class/power\ supply/usb/online
0
# cat /sys/class/power\ supply/main-battery/status
Charging
# cat /sys/class/leds/h5400\:red-left/trigger
none h5400-radio timer hwtimer ac-online usb-online
main-battery-charging-or-full [main-battery-charging]
main-battery-full
Signed-off-by: Anton Vorontsov <cbou@mail.ru>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Christian Borntraeger [Tue, 10 Jul 2007 09:24:22 +0000 (11:24 +0200)]
[S390] vmlogrdr function annotation.
Use __init and __exit for vmlogrdr. Both functions are only referenced
by the module_init exit macros, so this change should be fine.
Acked-by: Stefan Weinhuber <wein@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:21 +0000 (11:24 +0200)]
[S390] s390: rename CPU_IDLE to S390_CPU_IDLE
sched-cfs-v2.6.22-git-v18.patch introduces CPU_IDLE in sched.h.
This conflict with the already existing define in
include/asm-s390/processor.h
Just rename the s390 defines, since they will go away as soon as
we support CONFIG_NO_HZ instead of our own CONFIG_NO_IDLE_HZ.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cornelia Huck [Tue, 10 Jul 2007 09:24:20 +0000 (11:24 +0200)]
[S390] cio: Remove prototype for non-existing function cmf_reset().
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Ralph Wuerthner [Tue, 10 Jul 2007 09:24:19 +0000 (11:24 +0200)]
[S390] zcrypt: fix request timeout handling
Under very high load zcrypt requests may timeout while waiting on the
request queue. Modify zcrypt that timeouts are based on crypto adapter
responses. A timeout occurs only if a crypto adapter does not respond
within a given time frame to sumitted requests.
Signed-off-by: Ralph Wuerthner <rwuerthn@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Martin Schwidefsky [Tue, 10 Jul 2007 09:24:18 +0000 (11:24 +0200)]
[S390] system call optimization.
After the in-kernel system call has been remove the system call path
can be optimized. The problem state bit of the old psw is always set
between system_call and sysc_do_svc. SAVE_ALL_SVC uses this information
to avoid two instructions.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:17 +0000 (11:24 +0200)]
[S390] dasd: Avoid compile warnings on !CONFIG_DASD_PROFILE
drivers/s390/block/dasd_proc.c:33:
warning: 'dasd_get_user_string' defined but not used
drivers/s390/block/dasd_proc.c:172:
warning: 'dasd_statistics_array' defined but not used
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:16 +0000 (11:24 +0200)]
[S390] Remove volatile from atomic_t
Follow i386/x86_64 and remove 'volatile' from atomic_t.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Michael Holzheu [Tue, 10 Jul 2007 09:24:15 +0000 (11:24 +0200)]
[S390] Program check in diag 210 under 31 bit
If a virtual address is passed to the diag210 function under 31 bit, we get a
programming exception, since diag 210 only works with physical addresses. To
fix this, the content of the diag210 data structure is copied to a local
structure and the physical address of that structure is passed to diagnose 210.
Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Martin Schwidefsky [Tue, 10 Jul 2007 09:24:14 +0000 (11:24 +0200)]
[S390] Bogomips calculation for 64 bit.
The bogomips calculation triggered via reading from /proc/cpuinfo
can return incorrect values if the qrnnd assembly is called with a
pointer in %r2 with any of the upper 32 bits set.
Fix this by using 64 bit division / remainder operation provided by
gcc instead of calling the assembly.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:13 +0000 (11:24 +0200)]
[S390] smp: Merge smp_count_cpus() and smp_get_save_areas().
Merge smp_count_cpus() and smp_get_save_areas() so we save a loop over
all potentially present cpus.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:12 +0000 (11:24 +0200)]
[S390] zcore: Fix __user annotation.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Stefan Haberland [Tue, 10 Jul 2007 09:24:11 +0000 (11:24 +0200)]
[S390] fixed cdl-format detection.
CDL formated DASDs are now detected correctly even if no VOL1 label is
on the disk. This prevents possible loss of data.
Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:10 +0000 (11:24 +0200)]
[S390] sclp: Test facility list before executing a service call.
Check if a command is available before executing. Saves some
superfluous service calls that won't succeed anyway.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 10 Jul 2007 09:24:09 +0000 (11:24 +0200)]
[S390] sclp: introduce some new interfaces.
Introduce some new interfaces so that random subsystems don't have to
mess around with sclp internal structures.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Ralph Wuerthner [Tue, 10 Jul 2007 09:24:08 +0000 (11:24 +0200)]
[S390] Fixed comment typo.
Signed-off-by: Ralph Wuerthner <rwuerthn@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Robert P. J. Day [Tue, 10 Jul 2007 09:24:07 +0000 (11:24 +0200)]
[S390] vmcp cleanup
No need to use the "&" prefix and, since you're calling nonseekable_open(),
there is no need to use no_llseek().
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Jens Axboe [Tue, 12 Jun 2007 18:51:32 +0000 (20:51 +0200)]
pipe: add documentation and comments
As per Andrew Mortons request, here's a set of documentation for
the generic pipe_buf_operations hooks, the pipe, and pipe_buffer
structures.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Thu, 14 Jun 2007 11:10:48 +0000 (13:10 +0200)]
pipe: change the ->pin() operation to ->confirm()
The name 'pin' was badly chosen, it doesn't pin a pipe buffer
in the most commonly used sense in the kernel. So change the
name to 'confirm', after debating this issue with Hugh
Dickins a bit.
A good return from ->confirm() means that the buffer is really
there, and that the contents are good.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Mon, 11 Jun 2007 10:18:52 +0000 (12:18 +0200)]
Remove remnants of sendfile()
There are now zero users of .sendfile() in the kernel, so kill
it from the file_operations structure and in do_sendfile().
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Carsten Otte [Fri, 15 Jun 2007 06:16:22 +0000 (08:16 +0200)]
xip sendfile removal
This patch removes xip_file_sendfile, the sendfile implementation for
xip without replacement. Those customers that use xip on s390 are not
using sendfile() as far as we know, and so far s390 is the only platform
this could potentially be used on so far.
Having sendfile is not a popular feature for execute in place file
systems, however we have a working implementation of splice_read() based
on fs/splice.c if anyone asks for it.
At this point in time, it does not seem preferable to merge
splice_read() for xip because it causes extra maintenence effort due to
code duplication and it requires struct page behind the xip memory
segment. We'd like to get rid of that in favor of supporting flash based
embedded platforms (Monta Vista work) soon.
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Thu, 21 Jun 2007 11:10:21 +0000 (13:10 +0200)]
splice: completely document external interface with kerneldoc
Also add fs/splice.c as a kerneldoc target with a smaller blurb that
should be expanded to better explain the overview of splice.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Mon, 4 Jun 2007 08:25:05 +0000 (10:25 +0200)]
sendfile: remove bad_sendfile() from bad_file_ops
do_sendfile() prefers splice over sendfile, so it should not trigger
(directly, at least).
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Hugh Dickins [Mon, 4 Jun 2007 08:00:39 +0000 (10:00 +0200)]
shmem: convert to using splice instead of sendfile()
Remove shmem_file_sendfile and resurrect shmem_readpage, as used by tmpfs
to support loop and sendfile in 2.4 and 2.5. Now tmpfs can support splice,
loop and sendfile in the simplest way, using generic_file_splice_read and
generic_file_splice_write (with the aid of shmem_prepare_write).
We could make some efficiency tweaks later, if there's a real need;
but this is stable and works well as is.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 12 Jun 2007 06:43:46 +0000 (08:43 +0200)]
relay: use splice_to_pipe() instead of open-coding the pipe loop
It cleans up the relay splice implementation a lot, and gets rid of
a lot of internal pipe knowledge that should not be in there.
Plus fixes for padding and partial first page (and lots more) from
Tom Zanussi.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Mon, 11 Jun 2007 10:00:45 +0000 (12:00 +0200)]
pipe: allow passing around of ops private pointer
relay needs this for proper consumption handling, and the network
receive support needs it as well to lookup the sk_buff on pipe
release.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Mon, 4 Jun 2007 07:59:47 +0000 (09:59 +0200)]
splice: divorce the splice structure/function definitions from the pipe header
We need to move even more stuff into the header so that folks can use
the splice_to_pipe() implementation instead of open-coding a lot of
pipe knowledge (see relay implementation), so move to our own header
file finally.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Tom Zanussi [Mon, 4 Jun 2007 07:12:05 +0000 (09:12 +0200)]
splice: relay support
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 12 Jun 2007 19:22:14 +0000 (21:22 +0200)]
sendfile: convert nfsd to splice_direct_to_actor()
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Fri, 1 Jun 2007 09:51:43 +0000 (11:51 +0200)]
sendfile: convert nfs to using splice_read()
Acked-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 12 Jun 2007 19:20:37 +0000 (21:20 +0200)]
loop: convert to using splice_direct_to_actor() instead of sendfile()
This gets rid of the dependency on ->sendfile() for receiving data
and converts loop to ->splice_read() instead.
Also includes an IV offset fix from Hugh Dickins.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 12 Jun 2007 19:20:00 +0000 (21:20 +0200)]
splice: add void cookie to the actor data
We need that for passing driver private info.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Fri, 1 Jun 2007 09:55:49 +0000 (11:55 +0200)]
sendfile: kill generic_file_sendfile()
It's no longer used.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Fri, 1 Jun 2007 09:49:19 +0000 (11:49 +0200)]
sendfile: remove .sendfile from filesystems that use generic_file_sendfile()
They can use generic_file_splice_read() instead. Since sys_sendfile() now
prefers that, there should be no change in behaviour.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Fri, 1 Jun 2007 12:52:37 +0000 (14:52 +0200)]
sys_sendfile: switch to using ->splice_read, if available
This patch makes sendfile prefer to use ->splice_read(), if it's
available in the file_operations structure.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Thu, 14 Jun 2007 11:08:55 +0000 (13:08 +0200)]
vmsplice: add vmsplice-to-user support
A bit of a cheat, it actually just copies the data to userspace. But
this makes the interface nice and symmetric and enables people to build
on splice, with room for future improvement in performance.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 12 Jun 2007 19:17:17 +0000 (21:17 +0200)]
splice: abstract out actor data
For direct splicing (or private splicing), the output may not be a file.
So abstract out the handling into a specified actor function and put
the data in the splice_desc structure earlier, so we can build on top
of that.
This is the first step in better splice handling for drivers, and also
for implementing vmsplice _to_ user memory.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Adrian Bunk [Mon, 9 Jul 2007 07:40:44 +0000 (09:40 +0200)]
unexport bio_{,un}map_user
bio_{,un}map_user no longer have any modular users.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Thu, 21 Jun 2007 06:29:34 +0000 (08:29 +0200)]
Remove legacy CDROM drivers
They are all broken beyond repair. Given that nobody has complained
about them (most haven't worked in 2.6 AT ALL), remove them from the
tree.
A new mitsumi driver that actually works is in progress, it'll get
added when completed.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Boaz Harrosh [Wed, 20 Jun 2007 11:53:23 +0000 (13:53 +0200)]
[PATCH] fix request->cmd == INT cases
- I have unearthed very old bugs in stale drivers that still
used request->cmd as a READ|WRITE int
- This patch is maybe a proof that these drivers have not been
used for a long time. Should they be removed completely?
Drivers that currently do not work for sure:
drivers/acorn/block/fd1772.c | 2 +-
drivers/acorn/block/mfmhd.c | 8 ++++----
drivers/cdrom/aztcd.c | 2 +-
drivers/cdrom/cm206.c | 2 +-
drivers/cdrom/gscd.c | 2 +-
drivers/cdrom/mcdx.c | 2 +-
drivers/cdrom/optcd.c | 2 +-
drivers/cdrom/sjcd.c | 2 +-
Drivers with cosmetic fixes only:
b/drivers/block/amiflop.c
b/drivers/block/nbd.c
b/drivers/ide/legacy/hd.c
Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Mike Miller (OS Dev [Tue, 19 Jun 2007 18:52:18 +0000 (20:52 +0200)]
cciss: add new controller support for P700m
This patch adds support for the Smart Array P700m SAS controller. This new
controller will ship Fall 2007.
Signed-off-by: Mike Miller <mike.miller@hp.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 19 Jun 2007 17:13:36 +0000 (19:13 +0200)]
[PATCH] Remove acsi.c
Originally from Boaz Harrosh <bharrosh@panasas.com>
It hasn't been working in 2.5 or 2.6 ever, since it's still buffer_head
based.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Tejun Heo [Tue, 19 Jun 2007 07:18:13 +0000 (09:18 +0200)]
[BLOCK] drop unnecessary bvec rewinding from flush_dry_bio_endio
Barrier bios are completed twice - once after the barrier write itself
is done and again after the whole sequence is complete.
flush_dry_bio_endio() is for the first completion. It doesn't really
complete the bio. It rewinds bvec and resets bio so that it can be
completed again when the whole barrier sequence is complete.
The bvec rewinding code has the following problems.
1. The rewinding code is wrong because filesystems may pass bvec with
non zero bv_offset.
2. The block layer doesn't guarantee anything about the state of
bvec array on request completion. bv_offset and len are updated
iff __end_that_request_first() completes the bvec partially.
Because of #2, #1 doesn't really matter (nobody cares whether bvec is
re-wound correctly or not) but then again by not doing unwinding at
all, we'll always give back the same bvec to the caller as full bvec
completion doesn't alter bvecs and the final completion is always full
completion.
Drop unnecessary rewinding code.
This is spotted by Neil Brown.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Dave Young [Tue, 19 Jun 2007 07:14:26 +0000 (09:14 +0200)]
[PATCH] cdrom_sysctl_info fix
Fix the cdrom_sysctl_info possible buffer overwrite bug. Also
fix the locking of accessing topCdromPtr pointer.
Signed-off-by: Dave Young <hidave.darkstar@gmail.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 19 Jun 2007 07:09:27 +0000 (09:09 +0200)]
blk_hw_contig_segment(): bad segment size checks
Two bugs in there:
- The virt oversize check should use the current bio hardware back
size and the next bio front size, not the same bio. Spotted by
Neil Brown.
- The segment size check should add hw front sizes, not total bio
sizes. Spotted by James Bottomley
Acked-by: James Bottomley <James.Bottomley@SteelEye.com>
Acked-by: NeilBrown <neilb@suse.de>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Benjamin Gilbert [Tue, 19 Jun 2007 07:05:21 +0000 (09:05 +0200)]
[TRIVIAL PATCH] Kill blk_congestion_wait() stub for !CONFIG_BLOCK
blk_congestion_wait() doesn't exist anymore, but there's still a stub
in blkdev.h for the !CONFIG_BLOCK case. Kill it.
Signed-off-by: Benjamin Gilbert <bgilbert@cs.cmu.edu>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Andrew Morton [Tue, 10 Jul 2007 04:43:06 +0000 (00:43 -0400)]
Input: tsdev - fix broken usec-to-millisecs conversion
Noted by Fengwei Yin <yfw.kernel@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Mike Rapoport [Tue, 10 Jul 2007 04:38:39 +0000 (00:38 -0400)]
Input: pxa27x_keyboard - fix compile error
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Rodolfo Giometti <giometti@linux.it>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Andrew Morton [Tue, 10 Jul 2007 04:38:31 +0000 (00:38 -0400)]
Input: serio_raw - shut up errorneous warning
drivers/input/serio/serio_raw.c: In function 'serio_raw_read':
drivers/input/serio/serio_raw.c:163: warning: 'c' may be used uninitialized in this function
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Robert P. J. Day [Tue, 10 Jul 2007 04:38:18 +0000 (00:38 -0400)]
Input: update MAINTAINERS to explicitly mention touchscreens
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Hans de Goede [Tue, 3 Jul 2007 05:55:18 +0000 (01:55 -0400)]
Input: atkbd - change mapping for e032 from KEY_WWW to KEY_HOMEPAGE
WWW/Homepage key on Microsoft-compatible keyboards generates KEY_WWW
when connected via PS/2 port but KEY_HOMEPAGE when connected via USB.
This patch changes mapping in atkbd to match one in HID driver.
Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl>
Acked-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Ondrej Zary [Tue, 3 Jul 2007 05:55:03 +0000 (01:55 -0400)]
Input: usbtouchscreen - add support for IRTOUCHSYSTEMS touchscreens
This patch adds support for IRTOUCHSYSTEMS (or UNITOP) infrared touchscreens.
The touchscreen sends data in 8-byte packets.
BYTE 0 - unknown meaning, seen only one value: 0x54
BYTE 1 - unknown meaning, 3 lowest bits indicate touch state
values seen: 0x81, 0x82 or 0x83
bit 0 = set if the screen is touched and was not touched before (touch
bit 1 = set if the screen is touched and was touched (dragging)
bit 2 = set if the touch was ended (release)
BYTES 2 and 3 - X position, high-order-byte first, range = 0 to 0x0FFF
BYTES 4 and 5 - Y position, high-order-byte first, range = 0 to 0x0FFF
BYTE 6 - unknown meaning, seen only one value: 0xFF
BYTE 7 - unknown meaning, seen only one value: 0x00
Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Fri, 15 Jun 2007 03:58:51 +0000 (23:58 -0400)]
Input: ppc-beep - switch to using input_dev->dev.parent
In preparation for struct class_device -> struct device input
core conversion, switch to using input_dev->dev.parent when
specifying device position in sysfs tree.
Also, do not access input_dev->private directly, use helpers.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Fri, 15 Jun 2007 03:49:55 +0000 (23:49 -0400)]
Input: xpad - fix report for dpad and inverted Y and RY axes on xbox 360
Make the driver report Y/RY up as positive value and down as negative. Also
make DPAD mapping the same as classic xpad.
Reported-by: Brian Magnuson <bdmagnuson@gmail.com>
Tested-by: Jan Kratochvil <honza@jikos.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Adrian Bunk [Fri, 15 Jun 2007 03:33:26 +0000 (23:33 -0400)]
Input: xpad - make xpad_play_effect() static
xpad_play_effect() does not need to be global.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Jan Kratochvil [Fri, 15 Jun 2007 03:33:13 +0000 (23:33 -0400)]
Input: xpad - fix check for succesful usb_buffer_alloc
Signed-off-by: Jan Kratochvil <honza@jikos.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Andi Drebes [Fri, 15 Jun 2007 03:33:01 +0000 (23:33 -0400)]
Input: grip-mp - use ARRAY_SIZE
Signed-off-by: Andi Drebes <lists-receive@programmierforen.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Ping Cheng [Fri, 15 Jun 2007 03:32:48 +0000 (23:32 -0400)]
Input: wacom - add support for the new Bamboo tablets
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Hans-Christian Egtvedt [Fri, 15 Jun 2007 03:32:35 +0000 (23:32 -0400)]
Input: add gpio-mouse driver
Adds support for simulating a mouse using GPIO lines. The driver
needs an appropriate platform device to be created by architecture
code.
The driver has been tested on AT32AP7000 microprocessor using the
ATSTK1000 development board.
Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Fri, 15 Jun 2007 03:32:24 +0000 (23:32 -0400)]
Input: convert from class devices to standard devices
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Fri, 15 Jun 2007 03:31:45 +0000 (23:31 -0400)]
Input: wistron - add support for querying/changing keymap
Implement getkeycode and setkeycode methods for the device so
EVIOCGKEYCODE and EVIOCSKEYCODE ioctls will work.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Wed, 23 May 2007 03:48:39 +0000 (23:48 -0400)]
Input: wistron - convert to use input-polldev
Switch to using input-polldev skeleton instead of implementing
polling loop by itself.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Eric Piel [Mon, 21 May 2007 04:46:31 +0000 (00:46 -0400)]
Input: wistron - add LED support
Add support to wistron_btns for leds that come with the multimedia keys.
Mail and wifi leds are supported, on laptops which have them.
Depending on the laptop, wifi subsystem may control just the led, or both
the led and the wifi card. Wifi led interface is activated only for the
former type of laptops, as the latter type is already managed. Leds are
controled by the interface in /sys/class/leds.
Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Eric Piel [Mon, 21 May 2007 04:46:22 +0000 (00:46 -0400)]
Input: wriston - reduce polling frequency
Reduces the polling frequency from 10 Hz to 2 Hz, which should be less a burden
for laptops wrt energy saving. As it is multimedia keys, 500ms (maximum) of
latency should be still fine for the user. In order to keep fluent the feeling
when the user is pressing several keys in a raw (such as changing the volume),
the frequency is increased for a short duration after a key is pressed.
Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:32:21 +0000 (00:32 -0400)]
Input: aiptek - update driver version
Update credits and version number to 2.3
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:32:17 +0000 (00:32 -0400)]
Input: aiptek - rework the function key code
Function keys (also called macro keys) code corrected. Using a
lastMacro variable to keep track of key currently pressed. This
ensures proper resetting when dragging the pen in the drawing
area or to another key. Also suppress sending pressure reports
when over the macro key area.
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:32:12 +0000 (00:32 -0400)]
Input: aiptek - tolerate newlines in sysfs files
Now echo "some value" > /sys/......./somefile is also acceptable.
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:32:07 +0000 (00:32 -0400)]
Input: aiptek - correct the tool switching code
Now the old tool is remembered, and reset when a new tool is
selected via the sysfs files.
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:32:03 +0000 (00:32 -0400)]
Input: aiptek - use only absolute misc reports
To get an on - off reporting for proximity, absolute misc reports are
used. The mixture of absolute and relative reports is awkward
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:31:59 +0000 (00:31 -0400)]
Input: aiptek - put sensible warnings in probe
Added warnings to the points where the tablet probe may fail
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Rene van Paassen [Mon, 21 May 2007 04:31:55 +0000 (00:31 -0400)]
Input: aiptek - use set_bit instead of bitwise or
Have to use set_bit since some bit values are over 32, and bitwise or
won't work on these. To be safe for the future too, use set_bit for all
input dev capabilities
Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>