Randy Dunlap [Mon, 29 Oct 2007 18:19:55 +0000 (15:19 -0300)]
V4L/DVB (6479): use input functions, should depend on INPUT
All of these drivers select VIDEO_IR, which uses the input subsystem,
so they should also depend on INPUT.
Problem examples:
drivers/built-in.o: In function `ir_input_key_event':
ir-functions.c:(.text+0x10849a): undefined reference to `input_event'
ir-functions.c:(.text+0x1084ac): undefined reference to `input_event'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11cc0a): undefined reference to `get_key_pinnacle_color'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11cc4f): undefined reference to `get_key_pinnacle_grey'
drivers/built-in.o: In function `saa7134_input_fini':
(.text+0x11cd8b): undefined reference to `input_unregister_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d1fa): undefined reference to `input_allocate_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d317): undefined reference to `input_register_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d6ca): undefined reference to `input_free_device'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c3f3): undefined reference to `ir_codes_hauppauge_new'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c450): undefined reference to `ir_codes_pinnacle_color'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c480): undefined reference to `ir_codes_purpletv'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c495): undefined reference to `ir_codes_pinnacle_grey'
drivers/built-in.o: In function `saa7134_ir_start':
(.text+0x11c622): undefined reference to `ir_rc5_timer_end'
drivers/built-in.o: In function `saa7134_ir_start':
(.text+0x11c637): undefined reference to `ir_rc5_timer_keyup'
drivers/built-in.o: In function `build_key':
saa7134-input.c:(.text+0x11c769): undefined reference to `ir_extract_bits'
saa7134-input.c:(.text+0x11c7ad): undefined reference to `ir_input_keydown'
saa7134-input.c:(.text+0x11c7f0): undefined reference to `ir_input_keydown'
saa7134-input.c:(.text+0x11c7f9): undefined reference to `ir_input_nokey'
saa7134-input.c:(.text+0x11c806): undefined reference to `ir_input_nokey'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ca07): undefined reference to `ir_codes_encore_enltv'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11caf6): undefined reference to `ir_input_init'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cbf2): undefined reference to `ir_codes_avermedia'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc24): undefined reference to `ir_codes_pctv_sedna'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc53): undefined reference to `ir_codes_flydvb'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc85): undefined reference to `ir_codes_videomate_tv_pvr'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ccb7): undefined reference to `ir_codes_pixelview'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cce9): undefined reference to `ir_codes_eztv'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cd1b): undefined reference to `ir_codes_manli'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cda8): undefined reference to `ir_codes_cinergy'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cdd7): undefined reference to `ir_codes_flyvideo'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ce06): undefined reference to `ir_codes_asus_pc39'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ce7d): undefined reference to `ir_codes_gotview7135'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cee1): undefined reference to `ir_codes_proteus_2309'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Randy Dunlap [Mon, 29 Oct 2007 18:19:50 +0000 (15:19 -0300)]
V4L/DVB (6478): ir-functions use input functions, should depend on INPUT
Media ir-functions uses input_(*) functions so it should depend
on the INPUT config symbol.
drivers/built-in.o: In function `ir_input_key_event':
ir-functions.c:(.text+0x10849a): undefined reference to `input_event'
ir-functions.c:(.text+0x1084ac): undefined reference to `input_event'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Adrian Bunk [Wed, 24 Oct 2007 12:06:47 +0000 (09:06 -0300)]
V4L/DVB (6432): tuner: fix CONFIG_TUNER_TEA5761=m
This patch fixes CONFIG_TUNER_TEA5761=m broken by
commit
ca805d57cf5ea7482ed3da28653f30621249ee45.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Jeff Garzik [Fri, 26 Oct 2007 12:00:37 +0000 (09:00 -0300)]
V4L/DVB (6407): planb: fix obvious interrupt handling bugs
irq handlers have returned a return value for years now... catch up with
the times.
Also, ditch unneeded prototype.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
hermann pitton [Fri, 26 Oct 2007 00:26:53 +0000 (21:26 -0300)]
V4L/DVB (6406): saa7134: fix analog audio in on medion md8800 quadro
saa7134: fix analog audio in on medion md8800 quadro, aka CTX944
Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Steven Toth [Thu, 25 Oct 2007 02:12:58 +0000 (23:12 -0300)]
V4L/DVB (6403): mt2131: replace comma with semicolon fix
Semicolon fix.
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Steven Toth [Thu, 25 Oct 2007 00:05:51 +0000 (21:05 -0300)]
V4L/DVB (6402): s5h1409: Fix broken QAM support
This patch enables QAM Annex-B support (US digital cable)
for the s5h1409 VSB/QAM demodulator.
Tested successfully with the mt2131 tuner,
present on the following supported boards:
Hauppauge WinTV-HVR-1250
Hauppauge WinTV-HVR-1800
Hauppauge WinTV-HVR-1800lp
This patch is also known to work with an upcoming XC5000 tuner driver.
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Jonathan Corbet [Tue, 23 Oct 2007 20:31:36 +0000 (17:31 -0300)]
V4L/DVB (6395): cafe_ccic: Add a pointer to the data sheet
Add a pointer to the (recently posted) Cafe data sheet.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Jonathan Corbet [Tue, 23 Oct 2007 20:30:27 +0000 (17:30 -0300)]
V4L/DVB (6394): Fix a cafe_ccic resume bug
If the system is suspended while the camera is streaming, it will not
continue streaming on resume. Save the state properly so that resume
works.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Trent Piepho [Mon, 22 Oct 2007 20:44:55 +0000 (17:44 -0300)]
V4L/DVB (6392): bttv: Update initial image size when set via V4L1 VIDIOCMCAPTURE
The V4L1 spec says that the image size should be with with VIDIOCSWIN before
requesting buffers with VIDIOCGMBUF and capturing into them with
VIDIOCMCAPTURE.
But it seems that many apps don't do this. They set the size using the fields
in the VIDIOCMCAPTURE ioctl. The driver doesn't know what size to capture
until it actually starts to capture. In particular, it doesn't know what size
to capture until it has already mmap the captured buffers. Which is quite
stupid. Why V4L1 has size and format fields for VIDIOCMCAPTURE I have no idea.
Many drivers don't support this, including those using v4l1-compat.
The bttv does, which is probably the only reason such broken software is so
prevalent.
But, the driver doesn't adjust its idea of what size is being captured when it
is set this way. If you try to query the driver's current setting with
v4l2-ctl, it won't be correct.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Trent Piepho [Mon, 22 Oct 2007 20:44:54 +0000 (17:44 -0300)]
V4L/DVB (6391): bttv: SPICT ioctl doesn't work with vlc
The bttv driver instists that the depth specified in the call to VIDIOCSPICT
match the pixel format specified in the same call.
vlc doesn't set the depth field, which makes the SPICT ioctl always fail.
The V4L1 standard is not clear on how most operation are supposed to work, and
this is no exception. The depth field would appear to be entirely redundant,
as the pixel format specifies a specific depth. It could be that this field
was only meant for output from the *G*PICT ioctl and should be ignored in
*S*PICT. This is in fact what the v4l1-compat wrapper does.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Mauro Carvalho Chehab [Fri, 26 Oct 2007 03:11:17 +0000 (00:11 -0300)]
V4L/DVB (6390): Updates missing entries at CARDLIST.em28xx
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Linus Torvalds [Sun, 4 Nov 2007 21:14:15 +0000 (13:14 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
ieee1394: iso and async streams: s/g list fix
Mark Lord [Sun, 4 Nov 2007 02:04:03 +0000 (22:04 -0400)]
rtc: ignore msb when reading back mday from alarm
I have a system here that actively relies upon RTC wake alarms, and it
has been failing (again) for a few days when attempting to use the
/sys/class/rtc/rtc?/wakealarm interface.
The old (fixed by Linus) /proc/ interface still works, but I'd like to
get it using the new one.
This patch fixes rtc-cmos to ignore the two upper bits when reading the
BCD mday (day of month) register from CMOS. Some systems (eg. mine)
seem to have the top bit set to "1" for some reason.
The older /proc/ interface ignores the upper bits, and so we should too.
Signed-off-by: Mark Lord <mlord@pobox.com>
Acked-by: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Jens Axboe [Sun, 4 Nov 2007 08:44:56 +0000 (09:44 +0100)]
ieee1394: iso and async streams: s/g list fix
Torsten Kaiser wrote:
> Looking that calltrace upwards, it seems replacing the
> memset(dma->sglist,...) with sg_init_table(...) would fix the BUG_ON()
> as that inits the SG_MAGIC.
Tested-by: Torsten Kaiser <just.for.lkml@googlemail.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Linus Torvalds [Sat, 3 Nov 2007 19:43:36 +0000 (12:43 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
[BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them
dm: bounce_pfn limit added
Deadline iosched: Fix batching fairness
Deadline iosched: Reset batch for ordered requests
Deadline iosched: Factor out finding latter reques
Linus Torvalds [Sat, 3 Nov 2007 19:43:21 +0000 (12:43 -0700)]
Merge branch 'sg' of git://git.kernel.dk/linux-2.6-block
* 'sg' of git://git.kernel.dk/linux-2.6-block:
[SG] Get rid of __sg_mark_end()
cleanup asm/scatterlist.h includes
SG: Make sg_init_one() use general table init functions
Linus Torvalds [Sat, 3 Nov 2007 19:42:52 +0000 (12:42 -0700)]
Merge branch 'v2.6.24-rc1-lockdep' of git://git./linux/kernel/git/peterz/linux-2.6-lockdep
* 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep:
lockdep: fix a typo in the __lock_acquire comment
sched: fix unconditional irq lock
lockdep: fixup irq tracing
Linus Torvalds [Sat, 3 Nov 2007 19:41:58 +0000 (12:41 -0700)]
Merge /pub/scm/linux/kernel/git/lethal/sh64-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6:
sh64: Update defconfigs.
sh64: fix dma_cache_sync() compilation
sh64: Move DMA macros from pci.h to scatterlist.h.
Linus Torvalds [Sat, 3 Nov 2007 19:41:42 +0000 (12:41 -0700)]
Merge /pub/scm/linux/kernel/git/lethal/sh-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (24 commits)
sh: Update r7785rp defconfig.
sh: mach-type updates.
sh: Fix up r7780rp highlander CF access size.
sh: Terminate .eh_frame in VDSO with a 4-byte 0.
sh: Correct SUBARCH matching.
sh: Decouple 4k and soft/hardirq stacks.
sh: Fix optimized __copy_user() movca.l usage.
sh: Clean up SR.RB Kconfig mess.
sh: Kill off dead ipr_irq_demux().
sh: Make SH7750 oprofile compile again.
sh: Provide a __read_mostly section wrapper.
sh: linker script tidying.
sh: Move zero page param defs somewhere sensible.
sh: Use generic SMP_CACHE_BYTES/L1_CACHE_ALIGN.
sh: Kill off legacy embedded ramdisk section.
sh: Fix up early mem cmdline parsing.
sh: Enable USBF on MS7722SE.
sh: Add resource of USBF for SH7722.
maple: Fix maple bus compiler warning
sh: fix zImage build with >=binutils-2.18
...
Linus Torvalds [Sat, 3 Nov 2007 19:27:56 +0000 (12:27 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (23 commits)
libata: don't configure downstream links faster than the upstream link
libata: request PHY speed configuration on SControl access failure
libata: consider errors not associated with commands for speed down
libata: more robust reset failure handling
libata: cosmetic clean up / reorganization of ata_eh_reset()
libata: fix timing computation in ata_eh_reset()
libata: increase 128 KB / cmd limit for ATAPI tape drives
sata_promise: fix endianess bug in ASIC PRD bug workaround
libata: fix docbook
make ata_scsi_lpm_get() static
libata: suppress two warnings
ata/sata_fsl: Remove ata_scsi_suspend/resume callbacks
ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()
ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef
ata/sata_fsl: cleanup style problem
ata/sata_fsl: remove unneeded sata_fsl_hardreset()
ata/sata_fsl: remove unneeded on-stack copy of FIS
ata/sata_fsl: cleanup needless casts to/from void __iomem *
ata/sata_fsl: Remove unnecessary SCR cases
ata/sata_fsl: Kill ata_sg_is_last()
...
Anton Altaparmakov [Sat, 3 Nov 2007 07:38:59 +0000 (07:38 +0000)]
NTFS: Fix read regression.
The regression was caused by:
commit[
a32ea1e1f925399e0d81ca3f7394a44a6dafa12c] Fix read/truncate race
This causes ntfs_readpage() to be called for a zero i_size inode, which
failed when the file was compressed and non-resident.
Thanks a lot to Mike Galbraith for reporting the issue and tracking down
the commit that caused the regression.
Looking into it I found three bugs which the patch fixes.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Tested-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:07 +0000 (10:17 +0900)]
libata: don't configure downstream links faster than the upstream link
There's nothing to be gained by configuring downstream links faster
than the upstream link and such configurations cause problems on
certain PMPs. Limit downstream link speed by the upstream link speed.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:06 +0000 (10:17 +0900)]
libata: request PHY speed configuration on SControl access failure
In sata_set_spd_needed(), if SControl read failed, it returned 0 and
skipped PHY speed configuration. However, if SControl access fails,
it's far more logical to request PHY speed configuration. Reverse the
logic.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:05 +0000 (10:17 +0900)]
libata: consider errors not associated with commands for speed down
libata EH used to ignore errors not associated with commands when
determining whether speed down is necessary or not. This leads to the
following problems.
* Errors not associated with commands can occur indefinitely without
libata EH taking corrective actions.
* Upstream link errors don't trigger speed down when PMP is attached
to it and commands issued to downstream device trigger errors on the
upstream link.
This patch makes ata_eh_link_autopsy() consider errors not associated
with command for speed down.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:04 +0000 (10:17 +0900)]
libata: more robust reset failure handling
Reset failure is a critical error. It results in disabling the link
requiring user intervention to re-enable it. Make reset failure
handling more robust such that libata EH doesn't give up too early.
* Temporary glitches during hardreset may lead to classification
failure when there's no softreset available. Retry instead of
giving up.
* Initial softreset or follow up softreset may fail classification.
Move classification error handling block out of followup softreset
block such that both cases are handled and retry instead of giving
up. Also, on the last try, give ATA class a blind shot.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:03 +0000 (10:17 +0900)]
libata: cosmetic clean up / reorganization of ata_eh_reset()
Clean up and reorganize ata_eh_reset() to ease further changes.
* Cache ARRAY_SIZE(ata_eh_reset_timeouts) in @max_tries.
* Cache link->flags in @lflags.
* Move failure handling block to the end of the function and unnest
both success and failure handling blocks.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Wed, 31 Oct 2007 01:17:02 +0000 (10:17 +0900)]
libata: fix timing computation in ata_eh_reset()
As jiffies changes asynchronously, it needs to be cached if unchanging
timestamp is needed. The code in ata_eh_reset() intended to do that
with @now but never actually did it. Fix it.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tony Battersby [Tue, 30 Oct 2007 15:44:35 +0000 (11:44 -0400)]
libata: increase 128 KB / cmd limit for ATAPI tape drives
Commands sent to ATAPI tape drives via the SCSI generic (sg) driver are
limited in the amount of data that they can transfer by the max_sectors
value. The max_sectors value is currently calculated according to the
command set for disk drives, which doesn't apply to tape drives. The
default max_sectors value of 256 limits ATAPI tape drive commands to
128 KB. This patch against 2.6.24-rc1 increases the max_sectors value
for tape drives to 65535, which permits tape drive commands to transfer
just under 32 MB.
Tested with a SuperMicro PDSME motherboard, AHCI, and a Sony SDX-570V
SATA tape drive.
Note that some of the chipset drivers also set their own max_sectors
value, which may override the value set in libata-core. I don't have
any of these chipsets to test, so I didn't go messing with them. Also,
ATAPI devices other than tape drives may benefit from similar changes,
but I have only tape drives and disk drives to test.
Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Mikael Pettersson [Wed, 31 Oct 2007 12:21:29 +0000 (13:21 +0100)]
sata_promise: fix endianess bug in ASIC PRD bug workaround
The original workaround for the Promise ASIC PRD bug
contained an endianess bug which I failed to detect:
the adjustment of the last PRD entry's length field
applied host arithmetic to little-endian data, which
is incorrect on big-endian machines.
We have the length available in host-endian format, so
do the adjustment on host-endian data and then convert
and store it in the PRD entry's little-endian data field.
Thanks to an anonymous reviewer for detecting this bug.
Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger [Wed, 31 Oct 2007 17:00:27 +0000 (10:00 -0700)]
libata: fix docbook
Fix docbook format in the comments.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Adrian Bunk [Tue, 30 Oct 2007 23:50:23 +0000 (00:50 +0100)]
make ata_scsi_lpm_get() static
ata_scsi_lpm_get() can become static.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Rothwell [Wed, 31 Oct 2007 03:53:32 +0000 (14:53 +1100)]
libata: suppress two warnings
drivers/ata/libata-core.c:768: warning: 'ata_lpm_enable' defined but not used
drivers/ata/libata-core.c:784: warning: 'ata_lpm_disable' defined but not used
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
ashish kalra [Wed, 31 Oct 2007 11:28:04 +0000 (19:28 +0800)]
ata/sata_fsl: Remove ata_scsi_suspend/resume callbacks
Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
ashish kalra [Wed, 31 Oct 2007 11:28:03 +0000 (19:28 +0800)]
ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()
Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
ashish kalra [Wed, 31 Oct 2007 11:28:02 +0000 (19:28 +0800)]
ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef
Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Li Yang [Wed, 31 Oct 2007 11:28:01 +0000 (19:28 +0800)]
ata/sata_fsl: cleanup style problem
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Wed, 31 Oct 2007 11:28:00 +0000 (19:28 +0800)]
ata/sata_fsl: remove unneeded sata_fsl_hardreset()
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Wed, 31 Oct 2007 11:27:59 +0000 (19:27 +0800)]
ata/sata_fsl: remove unneeded on-stack copy of FIS
Remove unneeded on-stack copy of FIS
in sata_fsl_cache_taskfile_from_d2h_fis().
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Wed, 31 Oct 2007 11:27:58 +0000 (19:27 +0800)]
ata/sata_fsl: cleanup needless casts to/from void __iomem *
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Wed, 31 Oct 2007 11:27:57 +0000 (19:27 +0800)]
ata/sata_fsl: Remove unnecessary SCR cases
SCRs in the driver map to the standard values found in include/linux/ata.h,
so no need for individual scr_read/scr_write case statements duplicating
the natural value.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Li Yang [Wed, 31 Oct 2007 11:27:56 +0000 (19:27 +0800)]
ata/sata_fsl: Kill ata_sg_is_last()
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Li Yang [Wed, 31 Oct 2007 11:27:55 +0000 (19:27 +0800)]
ata/sata_fsl: save irq in private data for irq unmapping
Powerpc uses virtual irq which has to be unmapped.
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Li Yang [Wed, 31 Oct 2007 11:27:54 +0000 (19:27 +0800)]
ata/sata_fsl: Remove deprecated hooks
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Li Yang [Wed, 31 Oct 2007 11:27:53 +0000 (19:27 +0800)]
ata/sata_fsl: Update for ata_link introduction
Update the driver to use the newly added ata_link structure.
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Ralf Baechle [Fri, 2 Nov 2007 17:26:06 +0000 (17:26 +0000)]
Use i8253.c lock for PC speaker on MIPS, too.
The Jazz machines have to use the PIT timer for dyntick and highresolution
kernels. This may break because currently just like i386 used to do MIPS
uses two separate spinlocks in the actual PIT code and the PC speaker
code. So switch to do it the same that x86 currently does PIT locking.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sat, 3 Nov 2007 02:37:41 +0000 (19:37 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: linux-input mailing list moved to vger.kernel.org
Input: inport, logibm - use KERN_INFO when reporting missing mouse
Input: appletouch - idle reset logic broke older Fountains
Input: hp_sdc.c - fix section mismatch
Input: appletouch - add Johannes Berg as maintainer
Input: Add Euro and Dollar key codes
Input: xpad - add more USB IDs
Linus Torvalds [Sat, 3 Nov 2007 02:37:26 +0000 (19:37 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (25 commits)
[MIPS] Jazz: disable PIT; cleanup R4030 clockevent
[MIPS] Bigsur supports highmem.
[MIPS] mtx-1: Enable -Werror.
[MIPS] mtx-1: Remove unused mtx1_sys_btn.
[MIPS] Pb1200: Enable -Werror.
[MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.
[MIPS] SNI: register a02r clockevent; don't use PIT timer
[MIPS] i8253.h: Remove all i8259 related definitions.
[MIPS] i8253: Cleanup.
[MIPS] Cobalt: Fix IRQ comment; the Cobalt kernel uses CP0 counter now.
[MIPS] Pb1200: Fix warning.
[MIPS] Pb1200: Fix warning.
[MIPS] IP27: Fix build error.
[MIPS] Excite: Fix build error.
[MIPS] Sibyte: Split and move clock code.
[MIPS] Sibyte: Fixes for oneshot timer mode.
[MIPS] Sibyte: Remove blank line.
[MIPS] Swarm: Fix build failure
[MIPS] time: Code cleanups
[MIPS] time: Remove now unused local_timer_interrupt.
...
Linus Torvalds [Sat, 3 Nov 2007 02:36:26 +0000 (19:36 -0700)]
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog
* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
[WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's
[WATCHDOG] iTCO_wdt.c init & exit fixes
[WATCHDOG] iTCO_wdt.c pci_device_id table clean-up
[WATCHDOG] spin_lock_init() fixes
[WATCHDOG] Unlock in iTCO_wdt_start when reboot is disabled
[WATCHDOG] Add necessary braces to if (...) \n #if... cases
[WATCHDOG] trivial fix two returns in void functions
Wim Van Sebroeck [Fri, 31 Aug 2007 08:23:10 +0000 (08:23 +0000)]
[WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's
Add the pci-device-id's for the ICH8M and the ICH8M-E chipsets.
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Wim Van Sebroeck [Fri, 31 Aug 2007 08:15:34 +0000 (08:15 +0000)]
[WATCHDOG] iTCO_wdt.c init & exit fixes
Mark init and exit procedures as __devinit & _-devexit.
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Wim Van Sebroeck [Sun, 19 Aug 2007 20:17:58 +0000 (20:17 +0000)]
[WATCHDOG] iTCO_wdt.c pci_device_id table clean-up
Make the pci_device_id table more readable.
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Alexey Dobriyan [Thu, 1 Nov 2007 23:27:08 +0000 (16:27 -0700)]
[WATCHDOG] spin_lock_init() fixes
Some watchdog drivers initialize global spinlocks in module's init function
which is tolerable, but some do it in PCI probe function. So, switch to
static initialization to fix theoretical bugs and, more importantly, stop
giving people bad examples.
Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Thomas Bogendoerfer [Fri, 2 Nov 2007 10:17:13 +0000 (11:17 +0100)]
[MIPS] Jazz: disable PIT; cleanup R4030 clockevent
Fix ISA irq acknowledge.
Make r4030 clockevent code look like other mips clockevent code.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 21:55:39 +0000 (21:55 +0000)]
[MIPS] Bigsur supports highmem.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 16:50:06 +0000 (16:50 +0000)]
[MIPS] mtx-1: Enable -Werror.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 16:49:12 +0000 (16:49 +0000)]
[MIPS] mtx-1: Remove unused mtx1_sys_btn.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 16:46:14 +0000 (16:46 +0000)]
[MIPS] Pb1200: Enable -Werror.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 15:45:37 +0000 (15:45 +0000)]
[MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.
This is the clock rate of the i8253 PIT. A MIPS system may not have
a PIT by the symbol is used all over the kernel including some APIs.
So keeping it defined to the number for the PIT is the only sane thing
for now.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Thomas Bogendoerfer [Thu, 1 Nov 2007 10:36:42 +0000 (11:36 +0100)]
[MIPS] SNI: register a02r clockevent; don't use PIT timer
Register A20R clockevent.
Remove PIT timer setup because it doesn't work
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 14:44:57 +0000 (14:44 +0000)]
[MIPS] i8253.h: Remove all i8259 related definitions.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 14:38:20 +0000 (14:38 +0000)]
[MIPS] i8253: Cleanup.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Yoichi Yuasa [Thu, 1 Nov 2007 12:51:23 +0000 (21:51 +0900)]
[MIPS] Cobalt: Fix IRQ comment; the Cobalt kernel uses CP0 counter now.
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 12:59:18 +0000 (12:59 +0000)]
[MIPS] Pb1200: Fix warning.
arch/mips/au1000/pb1200/irqmap.c:101: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
And while at it a few coding style cleanups.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 12:22:53 +0000 (12:22 +0000)]
[MIPS] Pb1200: Fix warning.
arch/mips/au1000/pb1200/board_setup.c:71: warning: unused variable 'pin_func'
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 12:20:51 +0000 (12:20 +0000)]
[MIPS] IP27: Fix build error.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 12:16:20 +0000 (12:16 +0000)]
[MIPS] Excite: Fix build error.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 01:57:55 +0000 (01:57 +0000)]
[MIPS] Sibyte: Split and move clock code.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 00:24:50 +0000 (00:24 +0000)]
[MIPS] Sibyte: Fixes for oneshot timer mode.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Nov 2007 00:10:07 +0000 (00:10 +0000)]
[MIPS] Sibyte: Remove blank line.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Thiemo Seufer [Wed, 31 Oct 2007 16:26:56 +0000 (16:26 +0000)]
[MIPS] Swarm: Fix build failure
Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Tue, 30 Oct 2007 16:21:03 +0000 (01:21 +0900)]
[MIPS] time: Code cleanups
* Do not include unnecessary headers.
* Do not mention time.README.
* Do not mention mips_timer_ack.
* Make clocksource_mips static. It is now dedicated to c0_timer.
* Initialize clocksource_mips.read statically.
* Remove null_hpt_read.
* Remove an argument of plat_timer_setup. It is just a placeholder.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 30 Oct 2007 14:24:51 +0000 (14:24 +0000)]
[MIPS] time: Remove now unused local_timer_interrupt.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 31 Oct 2007 13:10:00 +0000 (13:10 +0000)]
[MIPS] IP32: Fix address of 2nd serial interface.
Found by Giuseppe Sacco <giuseppe@eppesuigoccas.homedns.org>.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 31 Oct 2007 12:42:56 +0000 (12:42 +0000)]
[MIPS] SB1250: Use the right irqaction for the timer interrupt.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 31 Oct 2007 12:36:42 +0000 (12:36 +0000)]
[MIPS] SB1250: Remove stray assignment of cpumask.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 31 Oct 2007 12:34:42 +0000 (12:34 +0000)]
[MIPS] Sibyte: Fix names of the clockevent devices.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 31 Oct 2007 00:08:06 +0000 (00:08 +0000)]
[MIPS] Sibyte: Build fixes / dead code removal.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Dmitry Torokhov [Fri, 2 Nov 2007 13:07:33 +0000 (09:07 -0400)]
Input: linux-input mailing list moved to vger.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Jens Axboe [Fri, 2 Nov 2007 07:49:08 +0000 (08:49 +0100)]
[BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Vasily Averin [Wed, 31 Oct 2007 07:33:24 +0000 (08:33 +0100)]
dm: bounce_pfn limit added
Device mapper uses its own bounce_pfn that may differ from one on underlying
device. In that way dm can build incorrect requests that contain sg elements
greater than underlying device is able to handle.
This is the cause of slab corruption in i2o layer, occurred on i386 arch when
very long direct IO requests are addressed to dm-over-i2o device.
Signed-off-by: Vasily Averin <vvs@sw.ru>
Cc: <stable@kernel.org>
Cc: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Aaron Carroll [Tue, 30 Oct 2007 09:40:13 +0000 (10:40 +0100)]
Deadline iosched: Fix batching fairness
After switching data directions, deadline always starts the next batch
from the lowest-sector request. This gives excessive deadline expiries
and large latency and throughput disparity between high- and low-sector
requests; an order of magnitude in some tests.
This patch changes the batching behaviour so new batches start from the
request whose expiry is earliest.
Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Aaron Carroll [Tue, 30 Oct 2007 09:40:13 +0000 (10:40 +0100)]
Deadline iosched: Reset batch for ordered requests
The deadline I/O scheduler does not reset the batch count when starting
a new batch at a higher-sectored request. This means the second and
subsequent batch in the same data direction will never exceed a single
request in size whenever higher-sectored requests are pending.
This patch gives new batches in the same data direction as old ones
their full quota of requests by resetting the batch count.
Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Aaron Carroll [Tue, 30 Oct 2007 09:40:12 +0000 (10:40 +0100)]
Deadline iosched: Factor out finding latter reques
Factor finding the next request in sector-sorted order into
a function deadline_latter_request.
Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Wed, 31 Oct 2007 11:06:37 +0000 (12:06 +0100)]
[SG] Get rid of __sg_mark_end()
sg_mark_end() overwrites the page_link information, but all users want
__sg_mark_end() behaviour where we just set the end bit. That is the most
natural way to use the sg list, since you'll fill it in and then mark the
end point.
So change sg_mark_end() to only set the termination bit. Add a sg_magic
debug check as well, and clear a chain pointer if it is set.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Adrian Bunk [Tue, 30 Oct 2007 09:35:04 +0000 (10:35 +0100)]
cleanup asm/scatterlist.h includes
Not architecture specific code should not #include <asm/scatterlist.h>.
This patch therefore either replaces them with
#include <linux/scatterlist.h> or simply removes them if they were
unused.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Tue, 30 Oct 2007 09:34:33 +0000 (10:34 +0100)]
SG: Make sg_init_one() use general table init functions
Don't open code sg_init_one(), make it reuse sg_init_table().
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Paul Mundt [Fri, 2 Nov 2007 05:36:55 +0000 (14:36 +0900)]
sh64: Update defconfigs.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt [Fri, 2 Nov 2007 05:33:21 +0000 (14:33 +0900)]
sh: Update r7785rp defconfig.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt [Fri, 2 Nov 2007 05:28:07 +0000 (14:28 +0900)]
sh: mach-type updates.
This adds in the x3proto and magicpanelr2 mach types, plugs in
highlander and rts7751r2d groups, and also hooks up the r2d
subtypes.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt [Fri, 2 Nov 2007 05:17:19 +0000 (14:17 +0900)]
sh: Fix up r7780rp highlander CF access size.
R7780RP can't do byte-sized accesses to CF, so needs to do word
sized access with low-byte masking. This same problem exists
on older versions of the R2D, with the same workaround having
been implemented in
43f4b8c7578b928892b6f01d374346ae14e5eb70
there. Follow that change for the highlander boards.
This does not impact R7780MP or SH7785 based Highlander modules.
If you're unfortunate enough to be stuck with an R7780RP, this
patch is for you!
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Kaz Kojima [Fri, 2 Nov 2007 03:29:37 +0000 (12:29 +0900)]
sh: Terminate .eh_frame in VDSO with a 4-byte 0.
It's assumed that .eh_frame is terminated with 4-byte 0 in shared
libraries and executable. It seems to be the case for VDSOs too.
Without this terminator, I saw failures when unwinding from VDSO,
though I don't know how other architectures handle this issue.
For the normal libs, crtendS.o gives this terminator. We can use
such terminating objects. Or we can add a 4-byte 0 with modifying
the linker script like as the patch below.
Signed-off-by: Kaz Kojima <kkojima@rr.iij4u.or.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt [Fri, 2 Nov 2007 03:22:47 +0000 (12:22 +0900)]
sh: Correct SUBARCH matching.
When configuring the kernel natively the uname matching is off,
so fix up the uname mangling to get the proper SUBARCH. Needs
an explicit range so that SH-5 doesn't break.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt [Fri, 2 Nov 2007 03:16:51 +0000 (12:16 +0900)]
sh: Decouple 4k and soft/hardirq stacks.
While using separate IRQ stacks can cut down on stack consumption,
many users can also use 4k stacks directly without the additional
need of separate stacks for soft and hardirqs.
With this split, we support the same rationale for 4KSTACKS as
m68knommu, with the IRQSTACKS abstraction as per ppc64.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Stuart Menefy [Fri, 2 Nov 2007 03:14:09 +0000 (12:14 +0900)]
sh: Fix optimized __copy_user() movca.l usage.
movca.l is restricted to SH-4 and up only, though compilers that
are unable to support ISA tuning (especially older versions of
binutils) will happily compile in the bogus opcode on older parts.
Conditionalize it to fix SH-3 regressions noted by Kristoffer.
Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Helge Deller [Fri, 2 Nov 2007 02:19:15 +0000 (22:19 -0400)]
Input: inport, logibm - use KERN_INFO when reporting missing mouse
Many mouse drivers are often compiled (e.g. in Linux distributions) into the
kernel at the same time just to make sure that at least one driver will suceed
in find it's mouse device. Nevertheless, only the inport and logitech busmouse
mouse drivers report with KERN_ERR log level if the mouse wasn't found. They
should use KERN_INFO instead, because it's not an error if the mouse isn't
attached at all.
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov [Fri, 2 Nov 2007 02:13:32 +0000 (22:13 -0400)]
Input: appletouch - idle reset logic broke older Fountains
Fountains do not support change mode request and therefore
should be excluded from idle reset attempts.
Also:
- do not re-submit URB when we decide that touchpad needs to be
reinicialized
- do not repeat size detection when reinitializing the touchpad
- Add missing KERN_* prefixes to messages
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Linus Torvalds [Thu, 1 Nov 2007 22:08:07 +0000 (15:08 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/jikos/hid
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
HID: Don't access input_dev->private directly
HID: fix hidinput_connect ignoring retval from input_register_device
HID: hiddev - fix compiler warning
HID: Add GoTop tablets to blacklist
Linus Torvalds [Thu, 1 Nov 2007 22:07:29 +0000 (15:07 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
Fix myri10ge NAPI oops & warnings
Fix region size check in mpc5200 FEC driver
mpc5200: Fix Kconfig dependancies on MPC5200 FEC device driver
Andrew Gallatin [Wed, 31 Oct 2007 21:40:06 +0000 (17:40 -0400)]
Fix myri10ge NAPI oops & warnings
When testing the myri10ge driver with 2.6.24-rc1, I found
that the machine crashed under heavy load:
Unable to handle kernel paging request at
0000000000100108 RIP:
[<
ffffffff803cc8dd>] net_rx_action+0x11b/0x184
The address corresponds to the list_move_tail() in
netif_rx_complete():
if (unlikely(work == weight))
list_move_tail(&n->poll_list, list);
Eventually, I traced the crashes to calling netif_rx_complete() with
work_done == budget. From looking at other drivers, it appears that
one should only call netif_rx_complete() when work_done < budget.
To fix it, I changed the test in myri10ge_poll() so that it refers
to to work_done rather than looking at the rx ring status. If
work_done is < budget, then that implies we have no more packets to
process. Any races will be resolved by the NIC when the write to
irq_claim is made.
In myri10ge_clean_rx_done(), if we ever exceeded our budget, it would
report a work_done one larger than was acutally done. This is because
the increment was done in the conditional, so work_done would be
incremented regardless of whether or not the test passed or failed.
This would lead to the WARN_ON_ONCE(work > weight); warning in
net_rx_action triggering. I've moved the increment of work_done
inside the loop. Note that this would only be a problem when we had
exceeded our budget.
Signed off by: Andrew Gallatin <gallatin@myri.com>
Andrew Gallatin Myricom Inc
Signed-off-by: Jeff Garzik <jeff@garzik.org>