firefly-linux-kernel-4.4.55.git
18 years ago[PATCH] libata: convert ATAPI_ENABLE_DMADIR to module parameter
Albert Lee [Tue, 4 Apr 2006 02:57:18 +0000 (10:57 +0800)]
[PATCH] libata: convert ATAPI_ENABLE_DMADIR to module parameter

Convert the ATAPI_ENABLE_DMADIR compile time option needed
by some SATA-PATA bridge to runtime module parameter.

Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoMerge branch 'master'
Jeff Garzik [Tue, 4 Apr 2006 12:41:29 +0000 (08:41 -0400)]
Merge branch 'master'

18 years agoLinux v2.6.17-rc1
Linus Torvalds [Mon, 3 Apr 2006 03:22:10 +0000 (20:22 -0700)]
Linux v2.6.17-rc1

Close of the merge window..

18 years ago[libata] bump versions
Jeff Garzik [Mon, 3 Apr 2006 00:41:36 +0000 (20:41 -0400)]
[libata] bump versions

18 years ago[libata] kill bogus cut-n-pasted comments in three drivers
Jeff Garzik [Mon, 3 Apr 2006 00:17:48 +0000 (20:17 -0400)]
[libata] kill bogus cut-n-pasted comments in three drivers

18 years agoUpdate dummy snd_power_wait() function for new calling convention
Linus Torvalds [Sun, 2 Apr 2006 21:37:36 +0000 (14:37 -0700)]
Update dummy snd_power_wait() function for new calling convention

Apparently nobody had tried to compile the ALSA CVS tree without power
management enabled.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'splice' of git://brick.kernel.dk/data/git/linux-2.6-block
Linus Torvalds [Sun, 2 Apr 2006 21:22:06 +0000 (14:22 -0700)]
Merge branch 'splice' of git://brick.kernel.dk/data/git/linux-2.6-block

* 'splice' of git://brick.kernel.dk/data/git/linux-2.6-block:
  [PATCH] splice: fix page stealing LRU handling.
  [PATCH] splice: page stealing needs to wait_on_page_writeback()
  [PATCH] splice: export generic_splice_sendpage
  [PATCH] splice: add a SPLICE_F_MORE flag
  [PATCH] splice: add comments documenting more of the code
  [PATCH] splice: improve writeback and clean up page stealing
  [PATCH] splice: fix shadow[] filling logic

18 years ago[PATCH] splice: fix page stealing LRU handling.
Jens Axboe [Sun, 2 Apr 2006 21:11:04 +0000 (23:11 +0200)]
[PATCH] splice: fix page stealing LRU handling.

Originally from Nick Piggin, just adapted to the newer branch.

You can't check PageLRU without holding zone->lru_lock.  The page
release code can get away with it only because the page refcount is 0 at
that point. Also, you can't reliably remove pages from the LRU unless
the refcount is 0. Ever.

Signed-off-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: page stealing needs to wait_on_page_writeback()
Jens Axboe [Sun, 2 Apr 2006 21:10:32 +0000 (23:10 +0200)]
[PATCH] splice: page stealing needs to wait_on_page_writeback()

Thanks to Andrew for the good explanation of why this is so. akpm writes:

If a page is under writeback and we remove it from pagecache, it's still
going to get written to disk.  But the VFS no longer knows about that page,
nor that this page is about to modify disk blocks.

So there might be scenarios in which those
blocks-which-are-about-to-be-written-to get reused for something else.
When writeback completes, it'll scribble on those blocks.

This won't happen in ext2/ext3-style filesystems in normal mode because the
page has buffers and try_to_release_page() will fail.

But ext2 in nobh mode doesn't attach buffers at all - it just sticks the
page in a BIO, finds some new blocks, points the BIO at those blocks and
lets it rip.

While that write IO's in flight, someone could truncate the file.  Truncate
won't block on the writeout because the page isn't in pagecache any more.
So truncate will the free the blocks from the file under the page's feet.
Then something else can reallocate those blocks.  Then write data to them.

Now, the original write completes, corrupting the filesystem.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: export generic_splice_sendpage
Jens Axboe [Sun, 2 Apr 2006 21:06:05 +0000 (23:06 +0200)]
[PATCH] splice: export generic_splice_sendpage

Forgot that one, thanks Jeff. Also move the other EXPORT_SYMBOL
to right below the functions.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: add a SPLICE_F_MORE flag
Jens Axboe [Sun, 2 Apr 2006 21:05:41 +0000 (23:05 +0200)]
[PATCH] splice: add a SPLICE_F_MORE flag

This lets userspace indicate whether more data will be coming in a
subsequent splice call.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: add comments documenting more of the code
Jens Axboe [Sun, 2 Apr 2006 21:05:09 +0000 (23:05 +0200)]
[PATCH] splice: add comments documenting more of the code

Hopefully this will make Andrew a little more happy.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: improve writeback and clean up page stealing
Jens Axboe [Sun, 2 Apr 2006 21:04:46 +0000 (23:04 +0200)]
[PATCH] splice: improve writeback and clean up page stealing

By cleaning up the writeback logic (killing write_one_page() and the manual
set_page_dirty()), we can get rid of ->stolen inside the pipe_buffer and
just keep it local in pipe_to_file().

This also adds dirty page balancing logic and O_SYNC handling.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[PATCH] splice: fix shadow[] filling logic
Jens Axboe [Sun, 2 Apr 2006 21:04:21 +0000 (23:04 +0200)]
[PATCH] splice: fix shadow[] filling logic

Clear the entire range, and don't increment pidx or we keep filling
the same position again and again.

Thanks to KAMEZAWA Hiroyuki.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Sun, 2 Apr 2006 20:34:00 +0000 (13:34 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm: (27 commits)
  [ARM] 3433/1: ARM: OMAP: 8/8 Update board files
  [ARM] 3455/1: ARM: OMAP: 7/8 Misc updates, take 2
  [ARM] 3454/1: ARM: OMAP: 6/8 Update framebuffer low-level init code, take 2
  [ARM] 3430/1: ARM: OMAP: 5/8 Update PM
  [ARM] 3429/1: ARM: OMAP: 4/8 Update GPIO
  [ARM] 3428/1: ARM: OMAP: 3/8 Update pin multiplexing
  [ARM] 3427/1: ARM: OMAP: 2/8 Update timers
  [ARM] 3426/1: ARM: OMAP: 1/8 Update clock framework
  [ARM] 3396/2: AT91RM9200 Platform devices update
  [ARM] 3395/2: AT91RM9200 Dataflash Card vs MMC selection
  [ARM] 3393/2: AT91RM9200 LED support
  [ARM] 3453/1: Poodle: Correctly set the memory size
  [ARM] 3446/1: i.MX: MMC/SD SDHC controller registration for i.MX/MX1 MX1ADS board
  [ARM] 3444/1: i.MX: Scatter-gather DMA emulation for i.MX/MX1
  [ARM] 3451/1: ep93xx: use the m48t86 rtc driver on the ts72xx platform
  [ARM] 3450/1: ep93xx: use the ep93xx rtc driver
  [ARM] 3452/1: [S3C2410] RX3715 - add nand information
  [ARM] 3449/1: [S3C2410] Anubis - fix NAND timings
  [ARM] 3448/1: [S3C2410] Settle delay when _enabling_ USB PLL
  [ARM] 3442/1: [S3C2410] SMDK: NAND device setup
  ...

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Sun, 2 Apr 2006 20:32:55 +0000 (13:32 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc

* master.kernel.org:/home/rmk/linux-2.6-mmc:
  [ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1
  [ARM] 3456/1: AT91RM9200 support for 2.6 (MMC/SD driver)

18 years agoMerge git://oss.sgi.com:8090/oss/git/xfs-2.6
Linus Torvalds [Sun, 2 Apr 2006 20:11:25 +0000 (13:11 -0700)]
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6

* git://oss.sgi.com:8090/oss/git/xfs-2.6:
  [XFS] Provide XFS support for the splice syscall.
  [XFS] Reenable write barriers by default.
  [XFS] Make project quota enforcement return an error code consistent with
  [XFS] Implement the silent parameter to fill_super, previously ignored.
  [XFS] Cleanup comment to remove reference to obsoleted function

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa
Linus Torvalds [Sun, 2 Apr 2006 20:08:49 +0000 (13:08 -0700)]
Merge /pub/scm/linux/kernel/git/perex/alsa

* master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (28 commits)
  [ALSA] Kconfig SND_SEQUENCER_OSS help text fix
  [ALSA] Add Aux input switch control for Aureon Universe
  [ALSA] pcxhr - Fix the crash with REV01 board
  [ALSA] sound/pci/hda: use create_singlethread_workqueue()
  [ALSA] hda-intel - Add support of ATI SB600
  [ALSA] cs4281 - Fix the check of timeout in probe
  [ALSA] cs4281 - Fix the check of right channel
  [ALSA] Test volume resolution of usb audio at initialization
  [ALSA] maestro3.c: fix BUG, optimization
  [ALSA] HDA/Realtek: multiple input mux definitions and pin mode additions
  [ALSA] AdLib FM card driver
  [ALSA] Fix / clean up PCM-OSS setup hooks
  [ALSA] Clean up PCM codes (take 2)
  [ALSA] Tiny clean up of PCM codes
  [ALSA] ISA drivers bailing on first !enable[i]
  [ALSA] Remove obsolete kfree_nocheck call
  [ALSA] Remove obsolete kfree_nocheck call
  [ALSA] Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards
  [ALSA] Add snd-riptide driver for Conexant Riptide chip
  [ALSA] hda-codec - Fix noisy output wtih AD1986A 3stack model
  ...

18 years ago[PATCH] sysfs: zero terminate sysfs write buffers
Greg Kroah-Hartman [Fri, 31 Mar 2006 23:37:06 +0000 (15:37 -0800)]
[PATCH] sysfs: zero terminate sysfs write buffers

No one should be writing a PAGE_SIZE worth of data to a normal sysfs
file, so properly terminate the buffer.

Thanks to Al Viro for pointing out my supidity here.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] revert incorrect mutex conversion in hdaps driver
Arjan van de Ven [Sun, 2 Apr 2006 17:24:57 +0000 (19:24 +0200)]
[PATCH] revert incorrect mutex conversion in hdaps driver

This reverts the mutex conversion that was recently done to the hdaps
driver; this coversion was buggy because the hdaps driver started using
this semaphore in IRQ context, which mutexes do not allow.  Easiest
solution for now is to just revert the patch (the patch was part of a
bigger GIT commit, 9a61bf6300533d3b64d7ff29adfec00e596de67d but this
only reverts this one file)

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Sun, 2 Apr 2006 20:01:11 +0000 (13:01 -0700)]
Merge /linux/kernel/git/wim/linux-2.6-watchdog

* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver
  [WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference
  [WATCHDOG] pcwd.c sprintf/strcpy fix
  [WATCHDOG] pcwd.c general clean-up after patches
  [WATCHDOG] pcwd.c add debug info
  [WATCHDOG] pcwd.c pcwd_cleanup_module patch
  [WATCHDOG] pcwd.c firmware-info patch
  [WATCHDOG] pcwd.c control status patch

18 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
Linus Torvalds [Sun, 2 Apr 2006 19:58:45 +0000 (12:58 -0700)]
Merge git://git./linux/kernel/git/bunk/trivial

* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (48 commits)
  Documentation: fix minor kernel-doc warnings
  BUG_ON() Conversion in drivers/net/
  BUG_ON() Conversion in drivers/s390/net/lcs.c
  BUG_ON() Conversion in mm/slab.c
  BUG_ON() Conversion in mm/highmem.c
  BUG_ON() Conversion in kernel/signal.c
  BUG_ON() Conversion in kernel/signal.c
  BUG_ON() Conversion in kernel/ptrace.c
  BUG_ON() Conversion in ipc/shm.c
  BUG_ON() Conversion in fs/freevxfs/
  BUG_ON() Conversion in fs/udf/
  BUG_ON() Conversion in fs/sysv/
  BUG_ON() Conversion in fs/inode.c
  BUG_ON() Conversion in fs/fcntl.c
  BUG_ON() Conversion in fs/dquot.c
  BUG_ON() Conversion in md/raid10.c
  BUG_ON() Conversion in md/raid6main.c
  BUG_ON() Conversion in md/raid5.c
  Fix minor documentation typo
  BFP->BPF in Documentation/networking/tuntap.txt
  ...

18 years ago[PATCH] sbp2: fix spinlock recursion
Stefan Richter [Sat, 1 Apr 2006 19:11:41 +0000 (21:11 +0200)]
[PATCH] sbp2: fix spinlock recursion

sbp2util_mark_command_completed takes a lock which was already taken by
sbp2scsi_complete_all_commands.  This is a regression in Linux 2.6.15.

 Reported by Kristian Harms at
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187394

[ More complete commentary, as response to questions by Andrew: ]

> This changes the call environment for all implementations of
> ->Current_done().  Are they all safe to call under this lock?

Short answer: Yes, trust me.  ;-) Long answer:

The done() callbacks are passed on to sbp2 from the SCSI stack along
with each SCSI command via the queuecommand hook.  The done() callback
is safe to call in atomic context.  So does
Documentation/scsi/scsi_mid_low_api.txt say, and many if not all SCSI
low-level handlers rely on this fact.  So whatever this callback does,
it is "self-contained" and it won't conflict with sbp2's internal ORB
list handling.  In particular, it won't race with the
sbp2_command_orb_lock.

Moreover, sbp2 already calls the done() handler with
sbp2_command_orb_lock taken in sbp2scsi_complete_all_commands().  I
admit this is ultimately no proof of correctness, especially since this
portion of code introduced the spinlock recursion in the first place and
we didn't realize it since this code's submission before 2.6.15 until
now.  (I have learned a lesson from this.)

I stress-tested my patch on x86 uniprocessor with a preemptible SMP
kernel (alas I have no SMP machine yet) and made sure that all code
paths which involve the sbp2_command_orb_lock were gone through multiple
times.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Sun, 2 Apr 2006 19:53:57 +0000 (12:53 -0700)]
Merge /pub/scm/linux/kernel/git/mchehab/v4l-dvb

* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (49 commits)
  V4L/DVB (3667b): cpia2: fix function prototype
  V4L/DVB (3702): Make msp3400 routing defines more consistent
  V4L/DVB (3700): Remove obsolete commands from tvp5150.c
  V4L/DVB (3697): More msp3400 and bttv fixes
  V4L/DVB (3696): Previous change for cx2341X boards broke the remote support
  V4L/DVB (3693): Fix msp3400c and bttv stereo/mono/bilingual detection/handling
  V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0
  V4L/DVB (3689): Kconfig: fix VP-3054 Secondary I2C Bus build configuration menu dependencies
  V4L/DVB (3673): Fix budget-av CAM reset
  V4L/DVB (3672): Fix memory leak in dvr open
  V4L/DVB (3671): New module parameter 'tv_standard' (dvb-ttpci driver)
  V4L/DVB (3670): Fix typo in comment
  V4L/DVB (3669): Configurable dma buffer size for saa7146-based budget dvb cards
  V4L/DVB (3653h): Move usb v4l docs into Documentation/video4linux
  V4L/DVB (3667a): Fix SAP + stereo mode at msp3400
  V4L/DVB (3666): Remove trailing newlines
  V4L/DVB (3665): Add new NEC uPD64031A and uPD64083 i2c drivers
  V4L/DVB (3663): Fix msp3400c wait time and better audio mode fallbacks
  V4L/DVB (3662): Don't set msp3400c-non-existent register
  V4L/DVB (3661): Add wm8739 stereo audio ADC i2c driver
  ...

18 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Sun, 2 Apr 2006 19:51:22 +0000 (12:51 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/ipath: kbuild infrastructure
  IB/ipath: infiniband verbs support
  IB/ipath: misc infiniband code, part 2
  IB/ipath: misc infiniband code, part 1
  IB/ipath: infiniband RC protocol support
  IB/ipath: infiniband UC and UD protocol support
  IB/ipath: infiniband header files
  IB/ipath: layering interfaces used by higher-level driver code
  IB/ipath: support for userspace apps using core driver
  IB/ipath: sysfs and ipathfs support for core driver
  IB/ipath: misc driver support code
  IB/ipath: chip initialisation code, and diag support
  IB/ipath: support for PCI Express devices
  IB/ipath: support for HyperTransport devices
  IB/ipath: core driver header files
  IB/ipath: core device driver

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
Linus Torvalds [Sun, 2 Apr 2006 19:49:59 +0000 (12:49 -0700)]
Merge /pub/scm/linux/kernel/git/brodo/pcmcia-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (33 commits)
  [PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error)
  [PATCH] pcmcia: fix pcmcia_device_remove oops
  [PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45
  [PATCH] pcmcia: pseudo device handling update
  [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_present
  [PATCH] pcmcia: use bitfield instead of p_state and state
  [PATCH] pcmcia: remove unused p_dev->state flags
  [PATCH] pcmcia: make pcmcia_release_{io,irq} static
  [PATCH] pcmcia: add return value to _config() functions
  [PATCH] pcmcia: remove dev_link_t and client_handle_t indirection
  [PATCH] pcmcia: embed dev_link_t into struct pcmcia_device
  [PATCH] pcmcia: rename pcmcia_device.state
  [PATCH] pcmcia: remove unneeded Vcc pseudo setting
  [PATCH] pcmcia: remove export of pcmcia_release_configuration
  [PATCH] pcmcia: default suspend and resume handling
  [PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irq
  [PATCH] pcmcia: add pcmcia_disable_device
  [PATCH] serial_cs: add Merlin U630 IDs
  [PATCH] pcmcia: AT91RM9200 Compact Flash driver
  [PATCH] pcmcia: socket.functions starts with 1
  ...

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Sun, 2 Apr 2006 19:49:19 +0000 (12:49 -0700)]
Merge /pub/scm/linux/kernel/git/dtor/input

* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits)
  Input: add support for Braille devices
  Input: synaptics - limit rate to 40pps on Toshiba Protege M300
  Input: gamecon - add SNES mouse support
  Input: make modalias code respect allowed buffer size
  Input: convert /proc handling to seq_file
  Input: limit attributes' output to PAGE_SIZE
  Input: gameport - fix memory leak
  Input: serio - fix memory leak
  Input: zaurus keyboard driver updates
  Input: i8042 - fix logic around pnp_register_driver()
  Input: ns558 - fix logic around pnp_register_driver()
  Input: pcspkr - separate device and driver registration
  Input: atkbd - allow disabling on X86_PC (if EMBEDDED)
  Input: atkbd - disable softrepeat for dumb keyboards
  Input: atkbd - fix complaints about 'releasing unknown key 0x7f'
  Input: HID - fix duplicate key mapping for Logitech UltraX remote
  Input: use kzalloc() throughout the code
  Input: fix input_free_device() implementation
  Input: initialize serio and gameport at subsystem level
  Input: uinput - semaphore to mutex conversion
  ...

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Sun, 2 Apr 2006 19:48:36 +0000 (12:48 -0700)]
Merge /pub/scm/linux/kernel/git/paulus/powerpc

* master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc:
  [PATCH] powerpc: iSeries needs slb_initialize to be called
  powerpc: hook up the splice syscall
  [PATCH] powerpc/cell: compile fixes
  [PATCH] powerpc: trivial spelling fixes in fault.c
  [PATCH] powerpc/pseries: EEH Cleanup
  [PATCH] powerpc/pseries: misc lparcfg fixes
  [PATCH] powerpc/pseries: fix device name printing, again.
  [PATCH] powerpc: Extends HCALL interface for InfiniBand usage
  [PATCH] powerpc/pseries: Change H_StudlyCaps to H_SHOUTING_CAPS
  [PATCH] powerpc/pseries: print message if EEH recovery fails
  [PATCH] powerpc/pseries: mutex lock to serialize EEH event processing
  powerpc: converted embedded platforms to use new define_machine support
  powerpc: merge machine_check_exception between ppc32 & ppc64

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sun, 2 Apr 2006 19:48:07 +0000 (12:48 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC]: Wire up sys_sync_file_range() into syscall tables.
  [SPARC]: Wire up sys_splice() into the syscall tables.
  [SPARC64]: Update defconfig.
  [SPARC64]: Align address in huge_pte_alloc().
  [SPARC64]: Document the instruction checks we do in do_sparc64_fault().
  [SPARC64]: Make tsb_sync() mm comparison more precise.

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sun, 2 Apr 2006 19:47:12 +0000 (12:47 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NET]: Fully fix the memory leaks in sys_accept().
  [NETFILTER]: iptables 32bit compat layer
  [NETFILTER]: {ip,nf}_conntrack_netlink: fix expectation notifier unregistration
  [NETFILTER]: fix ifdef for connmark support in nf_conntrack_netlink
  [NETFILTER]: x_tables: unify IPv4/IPv6 multiport match
  [NETFILTER]: x_tables: unify IPv4/IPv6 esp match
  [NET]: Fix dentry leak in sys_accept().
  [IPSEC]: Kill unused decap state structure
  [IPSEC]: Kill unused decap state argument
  [NET]: com90xx kmalloc fix
  [TG3]: Update driver version and reldate.
  [TG3]: Revert "Speed up SRAM access"

18 years agosplice: add SPLICE_F_NONBLOCK flag
Linus Torvalds [Sun, 2 Apr 2006 19:46:35 +0000 (12:46 -0700)]
splice: add SPLICE_F_NONBLOCK flag

It doesn't make the splice itself necessarily nonblocking (because the
actual file descriptors that are spliced from/to may block unless they
have the O_NONBLOCK flag set), but it makes the splice pipe operations
nonblocking.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1
Pavel Pisa [Sun, 2 Apr 2006 18:27:07 +0000 (19:27 +0100)]
[ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1

Patch from Pavel Pisa

This patch adds support of i.MX/MX1 SD/MMC controller.
It has been significantly redesigned from the original Sascha Hauer's
version to support scatter-gather DMA, to conform to latest Pierre Ossman's
and Russell King's MMC-SD Linux 2.6.x infrastructure.
The handling of all events has been moved to the softirq context
and is designed with no busy-looping in mind. Unfortunately
some controller bugs has to be overcome by limited looping
about 2-20 usec but these are observed only for initial card
recognition phase.

There are still some missing/missed IRQs problems under heavy load.
Help of somebody with access to the full SDHC design information
is probably necessary.

Regenerated against 2.6.16-git-060402 to solve clash with other patches.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3456/1: AT91RM9200 support for 2.6 (MMC/SD driver)
Andrew Victor [Sun, 2 Apr 2006 18:18:51 +0000 (19:18 +0100)]
[ARM] 3456/1: AT91RM9200 support for 2.6 (MMC/SD driver)

Patch from Andrew Victor

This patch adds support for the MMC/SD card interface on the Atmel
AT91RM9200 processor.

Original driver was by Nick Randell, but a number of people have
subsequently worked on it. It's currently maintained by Malcolm Noyes.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoppc64: actually add sys_splice() to the system call table
Linus Torvalds [Sun, 2 Apr 2006 17:44:36 +0000 (10:44 -0700)]
ppc64: actually add sys_splice() to the system call table

(We'd only added the number, which meant that actually trying
to use splice just went off into la-la-land)

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver
Andrew Victor [Tue, 14 Mar 2006 09:11:04 +0000 (11:11 +0200)]
[WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver

Watchdog driver for the Atmel AT91RM9200 processor.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference
Adrian Bunk [Fri, 10 Mar 2006 18:04:38 +0000 (19:04 +0100)]
[WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference

The Coverity checker noted that this resulted in a NULL pointer
reference if we were coming from

        if (usb_pcwd == NULL) {
                printk(KERN_ERR PFX "Out of memory\n");
                    goto error;
        }

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] pcwd.c sprintf/strcpy fix
Wim Van Sebroeck [Thu, 2 Mar 2006 19:05:16 +0000 (20:05 +0100)]
[WATCHDOG] pcwd.c sprintf/strcpy fix

change sprintf(pcwd_private.fw_ver_str, "ERROR");
to strcpy... as pointed out by Andrew Morton.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] pcwd.c general clean-up after patches
Wim Van Sebroeck [Sun, 12 Feb 2006 16:44:57 +0000 (17:44 +0100)]
[WATCHDOG] pcwd.c general clean-up after patches

removal of includes (since we don't use kmalloc and
TASK_INTERRUPTABLE anymore).
Addition of missing commands.
Printk that lets the user know when the module was
unloaded.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pcwd.c add debug info
Wim Van Sebroeck [Sun, 12 Feb 2006 16:12:55 +0000 (17:12 +0100)]
[WATCHDOG] pcwd.c add debug info

Add debugging info for the pcwd.c module.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pcwd.c pcwd_cleanup_module patch
Wim Van Sebroeck [Sun, 12 Feb 2006 15:51:34 +0000 (16:51 +0100)]
[WATCHDOG] pcwd.c pcwd_cleanup_module patch

static void pcwd_cleanup_module doesn't need a return;

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[ARM] 3433/1: ARM: OMAP: 8/8 Update board files
Tony Lindgren [Sun, 2 Apr 2006 16:46:30 +0000 (17:46 +0100)]
[ARM] 3433/1: ARM: OMAP: 8/8 Update board files

Patch from Tony Lindgren

This patch syncs OMAP board support with linux-omap tree.
The highlights of the patch are:
- Add support for Nokia 770 by Juha Yrjola
- Add support for Samsung Apollon by Kyungmin Park
- Add support for Amstrad E3 videophone by Jonathan McDowell
- Remove board-netstar.c board support as requested by Ladislav Michl
- Do platform_device registration in board files by Komal Shah et al.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3455/1: ARM: OMAP: 7/8 Misc updates, take 2
Tony Lindgren [Sun, 2 Apr 2006 16:46:27 +0000 (17:46 +0100)]
[ARM] 3455/1: ARM: OMAP: 7/8 Misc updates, take 2

Patch from Tony Lindgren

Update misc OMAP core code from linux-omap tree:

- McBSP updates by Samuel Ortiz, Andrzej Zaborowski
- Whitespace cleanups by Ladislav Michl
- Other fixes by various linux-omap developers

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3454/1: ARM: OMAP: 6/8 Update framebuffer low-level init code, take 2
Tony Lindgren [Sun, 2 Apr 2006 16:46:26 +0000 (17:46 +0100)]
[ARM] 3454/1: ARM: OMAP: 6/8 Update framebuffer low-level init code, take 2

Patch from Tony Lindgren

Update OMAP framebuffer low-level init code from linux-omap tree
by Imre Deak.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3430/1: ARM: OMAP: 5/8 Update PM
Tony Lindgren [Sun, 2 Apr 2006 16:46:25 +0000 (17:46 +0100)]
[ARM] 3430/1: ARM: OMAP: 5/8 Update PM

Patch from Tony Lindgren

Update OMAP PM code from linux-omap tree:

- Move PM code from plat-omap to mach-omap1 and mach-omap2
  by Tony Lindgren
- Add minimal PM support for omap24xx by Tony Lindgren and
  Richard Woodruff
- Misc updates to omap1 PM code by Tuukka Tikkanen et al
- Updates to the SRAM code needed for PM and FB by Imre Deak

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3429/1: ARM: OMAP: 4/8 Update GPIO
Tony Lindgren [Sun, 2 Apr 2006 16:46:23 +0000 (17:46 +0100)]
[ARM] 3429/1: ARM: OMAP: 4/8 Update GPIO

Patch from Tony Lindgren

Update OMAP GPIO code from linux-omap tree:

- Fix omap16xx edge control by Juha Yrjola
- Support for additional omap16xx trigger modes by Dirk Behme
- Fix edge detection by Tony Lindgren et al.
- Better support for omap15xx and omap310 by Andrej Zaborowski
- Fix omap15xx interrupt bug by Petukhov Nikolay

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3428/1: ARM: OMAP: 3/8 Update pin multiplexing
Tony Lindgren [Sun, 2 Apr 2006 16:46:22 +0000 (17:46 +0100)]
[ARM] 3428/1: ARM: OMAP: 3/8 Update pin multiplexing

Patch from Tony Lindgren

Update OMAP pin multiplexing code from linux-omap tree.
This patch adds new pin configurations by various OMAP
developers, and suport for omap730 by Brian Swetland.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3427/1: ARM: OMAP: 2/8 Update timers
Tony Lindgren [Sun, 2 Apr 2006 16:46:21 +0000 (17:46 +0100)]
[ARM] 3427/1: ARM: OMAP: 2/8 Update timers

Patch from Tony Lindgren

Update OMAP timers from linux-omap tree. The highlights of the
patch are:

- Move timer32k code from mach-omap1 to plat-omap and make it
  work also on omap24xx by Tony Lindgren
- Add support for dmtimer idle check for PM by Tuukka Tikkanen

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3426/1: ARM: OMAP: 1/8 Update clock framework
Tony Lindgren [Sun, 2 Apr 2006 16:46:20 +0000 (17:46 +0100)]
[ARM] 3426/1: ARM: OMAP: 1/8 Update clock framework

Patch from Tony Lindgren

Update OMAP clock framework from linux-omap tree.
The highlights of the patch are:

- Add support for omap730 clocks by Andrzej Zaborowski
- Fix compile warnings by Dirk Behme
- Add support for using dev id by Tony Lindgren and Komal Shah
- Move memory timings and PRCM into separate files by Tony Lindgren

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[WATCHDOG] pcwd.c firmware-info patch
Wim Van Sebroeck [Sun, 12 Feb 2006 15:47:34 +0000 (16:47 +0100)]
[WATCHDOG] pcwd.c firmware-info patch

Get the firmware version into the private data struct
of the ISA-PC watchdog card.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[WATCHDOG] pcwd.c control status patch
Wim Van Sebroeck [Sun, 12 Feb 2006 15:37:36 +0000 (16:37 +0100)]
[WATCHDOG] pcwd.c control status patch

Clean-up the control status code (insert tabs where relevant),
Add new Control Status defines, Make sure that the R2DS bit
stays the same.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
18 years ago[ARM] 3396/2: AT91RM9200 Platform devices update
Andrew Victor [Sun, 2 Apr 2006 16:15:51 +0000 (17:15 +0100)]
[ARM] 3396/2: AT91RM9200 Platform devices update

Patch from Andrew Victor

This patch updates the platform device resources for the Ethernet and
MMC peripherals.  It also adds platform device information for the NAND
(SmartMedia), I2C and the RTC.

(This version of the patch can be applied before Patch 3392/1)

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3395/2: AT91RM9200 Dataflash Card vs MMC selection
Andrew Victor [Sun, 2 Apr 2006 16:15:49 +0000 (17:15 +0100)]
[ARM] 3395/2: AT91RM9200 Dataflash Card vs MMC selection

Patch from Andrew Victor

On the Atmel AT91RM9200-DK and -EK boards, a pin is used to control
whether the card socket is used for a DataFlash Card or an MMC/SD card.

We now default to MMC/SD in the configuration files.

(This version of the patch can be applied before Patch 3392/1)

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3393/2: AT91RM9200 LED support
Andrew Victor [Sun, 2 Apr 2006 16:15:48 +0000 (17:15 +0100)]
[ARM] 3393/2: AT91RM9200 LED support

Patch from Andrew Victor

This patch adds support for the LED(s) on the AT91RM9200-based boards.

(This version of the patch can be applied before Patch 3392/1)

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3453/1: Poodle: Correctly set the memory size
Richard Purdie [Sun, 2 Apr 2006 16:11:00 +0000 (17:11 +0100)]
[ARM] 3453/1: Poodle: Correctly set the memory size

Patch from Richard Purdie

Force the Sharp Zaurus Poodle memory size to 32MB.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3446/1: i.MX: MMC/SD SDHC controller registration for i.MX/MX1 MX1ADS board
Pavel Pisa [Sun, 2 Apr 2006 15:58:38 +0000 (16:58 +0100)]
[ARM] 3446/1: i.MX: MMC/SD SDHC controller registration for i.MX/MX1 MX1ADS board

Patch from Pavel Pisa

From: Stefano Fedrigo <aleph@develer.com>

This adds to the MX1ADS platform the needed code to detect
insertion/removal of an MMC/SD card.  Tested on a v1.1 board.

Signed-off-by: Stefano Fedrigo <aleph@develer.com>
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3444/1: i.MX: Scatter-gather DMA emulation for i.MX/MX1
Pavel Pisa [Sun, 2 Apr 2006 15:58:37 +0000 (16:58 +0100)]
[ARM] 3444/1: i.MX: Scatter-gather DMA emulation for i.MX/MX1

Patch from Pavel Pisa

This patch contains simplified set of changes to add scatter-gather
emulation capability into MX1 DMA support. The result should
be still usable for next combination of DMA transfers
  Statter-Gather/linear/2D/FIFO to linear/2D/FIFO and
  linear/2D/FIFO to Statter-Gather/2D/FIFO
The patch corrects channel priority allocation to be compatible
with MX1 hardware implementation.
Previous code has not been adapted from its PXA original.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[PATCH] libata: print SControl in SATA link status info message
Tejun Heo [Sun, 2 Apr 2006 15:09:41 +0000 (00:09 +0900)]
[PATCH] libata: print SControl in SATA link status info message

Now that libata mangles with SControl, it's helpful to print out
SControl in link status message.  Add it.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[ARM] 3451/1: ep93xx: use the m48t86 rtc driver on the ts72xx platform
Lennert Buytenhek [Sun, 2 Apr 2006 15:17:40 +0000 (16:17 +0100)]
[ARM] 3451/1: ep93xx: use the m48t86 rtc driver on the ts72xx platform

Patch from Lennert Buytenhek

Instantiate the recently merged m48t86 rtc driver in the ts72xx code.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3450/1: ep93xx: use the ep93xx rtc driver
Lennert Buytenhek [Sun, 2 Apr 2006 15:17:34 +0000 (16:17 +0100)]
[ARM] 3450/1: ep93xx: use the ep93xx rtc driver

Patch from Lennert Buytenhek

Instantiate the recently merged ep93xx rtc driver in the ep93xx code.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3452/1: [S3C2410] RX3715 - add nand information
Ben Dooks [Sun, 2 Apr 2006 15:16:15 +0000 (16:16 +0100)]
[ARM] 3452/1: [S3C2410] RX3715 - add nand information

Patch from Ben Dooks

NAND definitions for the HP iPAQ RX3715's
internal NAND flash

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[PATCH] libata: make some libata-core routines extern
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: make some libata-core routines extern

Make libata-core routines which will be used by EH implementation
extern.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: separate out libata-eh.c
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: separate out libata-eh.c

A lot of EH codes are about to be added to libata.  Separate out
libata-eh.c.  ata_scsi_timed_out(), ata_scsi_error(),
ata_qc_timeout(), ata_eng_timeout(), ata_eh_qc_complete() and
ata_eh_qc_retry() are moved.  No code is changed by this patch.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: dec scmd->retries for qcs with zero err_mask
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: dec scmd->retries for qcs with zero err_mask

qcs might get retried because of unrelated failure.  e.g. NCQ command
failure causes the whole command set to be aborted.  Decrement
scmd->retries for such retrials to avoid unnecessarily failing
commands.  Note that scmd->retries will be incremented the first time.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: add @cdb to ata_exec_internal()
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: add @cdb to ata_exec_internal()

Add @cdb to ata_exec_internal().  It will be used by new EH.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: don't read TF directly from sense generation functions
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: don't read TF directly from sense generation functions

TF register might not be directly accessible depending on errors.
e.g. TF of failed NCQ command is in log page 10h.  Make reading TF
responsibility of error handlers.  For the current EH, simply push TF
reading into qc completion functions as they are practically part of
EH.  New EH will fill qc->tf with status registers before complting
qcs.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: always generate sense if qc->err_mask is non-zero
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: always generate sense if qc->err_mask is non-zero

Current sense generation code does not generate sense error if status
register value doesn't indicate error condition.  However, LLDD's may
indicate errors which 't show up in status register.  Completing such
qc's without generating sense results in successful completion of
failed commands.

Invoke ata_to_sense_error() regardless of status register if
qc->err_mask is not zero such that ata_to_sense_error() generates
default sense error.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: pass qc around intead of ap during PIO
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: pass qc around intead of ap during PIO

The current code passes pointer to ap around and repeatedly performs
ata_qc_from_tag() to access the ongoing qc.  This is unnatural and
makes EH synchronization cumbersome.  Make PIO codes deal with qc
instead of ap.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: add ATA_QCFLAG_IO
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: add ATA_QCFLAG_IO

Add a new qc flag ATA_QCFLAG_IO.  This flag gets set for normal IO
commands originating from SCSI midlayer.  This information will be
used by EH to determine transfer speed reconfiguration.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: clear ATA_DFLAG_PIO before setting it
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: clear ATA_DFLAG_PIO before setting it

ata_dev_set_mode() is now responsible for managing ATA_DFLAG_PIO.
Clear it before setting it.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: clear only affected flags during ata_dev_configure()
Tejun Heo [Sun, 2 Apr 2006 09:51:53 +0000 (18:51 +0900)]
[PATCH] libata: clear only affected flags during ata_dev_configure()

ata_dev_configure() should not clear dynamic device flags determined
elsewhere.  Lower eight bits are reserved for feature flags, define
ATA_DFLAG_CFG_MASK and clear only those bits before configuring
device.  Without this patch, ATA_DFLAG_PIO gets turned off during
revalidation making PIO mode unuseable.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: rename ATA_FLAG_PORT_DISABLED to ATA_FLAG_DISABLED
Tejun Heo [Sun, 2 Apr 2006 09:51:52 +0000 (18:51 +0900)]
[PATCH] libata: rename ATA_FLAG_PORT_DISABLED to ATA_FLAG_DISABLED

Rename ATA_FLAG_PORT_DISABLED to ATA_FLAG_DISABLED for consistency.
(ATA_FLAG_* are always about ports).

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: clean up constants
Tejun Heo [Sun, 2 Apr 2006 09:51:52 +0000 (18:51 +0900)]
[PATCH] libata: clean up constants

* Reorder ATA_DFLAG_* such that feature flags determined by
  ata_dev_configure() are on lower bits.  Reserve lower eight bits
  for this purpose and allocate dynamic flags from bit 8.

* Reorder ATA_FLAG_* such that feature flags determined during driver
  initiailization are on bits 0:15, dynamic flags on 16:23 and LLDD
  specific flags on 24:31.

* Kill trailing white space and lower-case an one line comment for
  consistency.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: ATA_FLAG_IN_EH is not used, kill it
Tejun Heo [Sun, 2 Apr 2006 09:51:52 +0000 (18:51 +0900)]
[PATCH] libata: ATA_FLAG_IN_EH is not used, kill it

Kill unused flag ATA_FLAG_IN_EH.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: ata_dev_revalidate() printk update
Tejun Heo [Sun, 2 Apr 2006 09:51:52 +0000 (18:51 +0900)]
[PATCH] libata: ata_dev_revalidate() printk update

Make sure ata_dev_revalidate() complains on failures and kill
revalidation failure message printed from ata_dev_set_mode().

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: report device number when PIO fails
Tejun Heo [Sun, 2 Apr 2006 09:51:52 +0000 (18:51 +0900)]
[PATCH] libata: report device number when PIO fails

Report device number on PIO failure.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: consider disabled devices in ata_dev_xfermask()
Tejun Heo [Sun, 2 Apr 2006 08:54:47 +0000 (17:54 +0900)]
[PATCH] libata: consider disabled devices in ata_dev_xfermask()

ata_bus_probe() now marks failed devices properly and leaves
meaningful transfer mode masks.  This patch makes ata_dev_xfermask()
consider disable devices when determining PIO mode to avoid violating
device selection timing.

While at it, move port-wide resttriction out of device iteration loop
and try to make the function look a bit prettier.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: improve ata_bus_probe()
Tejun Heo [Sun, 2 Apr 2006 08:54:46 +0000 (17:54 +0900)]
[PATCH] libata: improve ata_bus_probe()

Improve ata_bus_probe() such that configuration failures are handled
better.  Each device is given ATA_PROBE_MAX_TRIES chances, but any
non-transient error (revalidation failure with -ENODEV, configuration
failure with -EINVAL...) disables the device directly.  Any IO error
results in SATA PHY speed down and ata_set_mode() failure lowers
transfer mode.  The last try always puts a device into PIO-0.

After each failure, the whole port is reset to make sure that the
controller and all the devices are in a known and stable state.  The
reset also applies SATA SPD configuration if necessary.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: implement ata_down_xfermask_limit()
Tejun Heo [Sun, 2 Apr 2006 08:54:46 +0000 (17:54 +0900)]
[PATCH] libata: implement ata_down_xfermask_limit()

Implement ata_down_xfermask_limit().  This function manipulates
@dev->pio/mwdma/udma_mask such that the next lower transfer mode is
selected.  This will be used to improve ata_bus_probe() failure
handling and later by EH.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: add 5s sleep between resets
Tejun Heo [Sun, 2 Apr 2006 11:55:02 +0000 (20:55 +0900)]
[PATCH] libata: add 5s sleep between resets

Some devices react badly if resets are performed back-to-back.  Give
devices some time to breath and tell user that we're taking a nap.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: use SATA speed down in ata_drive_probe_reset()
Tejun Heo [Sun, 2 Apr 2006 08:54:46 +0000 (17:54 +0900)]
[PATCH] libata: use SATA speed down in ata_drive_probe_reset()

Make ata_drive_probe_reset() use SATA SPD configuration.  Hardreset
will be force if speed renegotiation is necessary.  Also, if a
hardreset fails, PHY speed is stepped down and hardreset is retried
until the lowest speed is reached.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: implement ap->sata_spd_limit and helpers
Tejun Heo [Sun, 2 Apr 2006 11:53:28 +0000 (20:53 +0900)]
[PATCH] libata: implement ap->sata_spd_limit and helpers

ap->sata_spd_limit contrains SATA PHY speed of the port.  It is
initialized to the configured value prior to probing thus preserving
BIOS configured value.  hardreset is responsible for applying SPD
limit and sata_std_hardreset() is updated to do that.  SATA SPD limit
will be used to enhance failure handling during probing and later by
EH.

This patch also normalizes some comments around affected code.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] libata: implement ata_dev_absent()
Tejun Heo [Sun, 2 Apr 2006 08:54:46 +0000 (17:54 +0900)]
[PATCH] libata: implement ata_dev_absent()

For the time being we cannot use ata_dev_present() as it was renamed
to ata_dev_enabled() but we still need presence test.  Implement
negation of the test.  Conveniently, the negated result is needed in
more places.  This is suggested by Jeff Garzik.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoDocumentation: fix minor kernel-doc warnings
Martin Waitz [Sun, 2 Apr 2006 11:59:55 +0000 (13:59 +0200)]
Documentation: fix minor kernel-doc warnings

This patch updates the comments to match the actual code.

Signed-off-by: Martin Waitz <tali@admingilde.org>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in drivers/net/
Eric Sesterhenn [Sun, 2 Apr 2006 11:52:48 +0000 (13:52 +0200)]
BUG_ON() Conversion in drivers/net/

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in drivers/s390/net/lcs.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:50:14 +0000 (13:50 +0200)]
BUG_ON() Conversion in drivers/s390/net/lcs.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in mm/slab.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:49:25 +0000 (13:49 +0200)]
BUG_ON() Conversion in mm/slab.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in mm/highmem.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:47:35 +0000 (13:47 +0200)]
BUG_ON() Conversion in mm/highmem.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in kernel/signal.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:45:55 +0000 (13:45 +0200)]
BUG_ON() Conversion in kernel/signal.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in kernel/signal.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:44:47 +0000 (13:44 +0200)]
BUG_ON() Conversion in kernel/signal.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in kernel/ptrace.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:43:40 +0000 (13:43 +0200)]
BUG_ON() Conversion in kernel/ptrace.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in ipc/shm.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:42:42 +0000 (13:42 +0200)]
BUG_ON() Conversion in ipc/shm.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/freevxfs/
Eric Sesterhenn [Sun, 2 Apr 2006 11:41:02 +0000 (13:41 +0200)]
BUG_ON() Conversion in fs/freevxfs/

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/udf/
Eric Sesterhenn [Sun, 2 Apr 2006 11:40:13 +0000 (13:40 +0200)]
BUG_ON() Conversion in fs/udf/

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/sysv/
Eric Sesterhenn [Sun, 2 Apr 2006 11:39:21 +0000 (13:39 +0200)]
BUG_ON() Conversion in fs/sysv/

this changes if() BUG(); constructs to BUG_ON() which is
cleaner, contains unlikely() and can better optimized away.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/inode.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:38:18 +0000 (13:38 +0200)]
BUG_ON() Conversion in fs/inode.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/fcntl.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:37:19 +0000 (13:37 +0200)]
BUG_ON() Conversion in fs/fcntl.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in fs/dquot.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:36:13 +0000 (13:36 +0200)]
BUG_ON() Conversion in fs/dquot.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in md/raid10.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:34:29 +0000 (13:34 +0200)]
BUG_ON() Conversion in md/raid10.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in md/raid6main.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:33:30 +0000 (13:33 +0200)]
BUG_ON() Conversion in md/raid6main.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
18 years agoBUG_ON() Conversion in md/raid5.c
Eric Sesterhenn [Sun, 2 Apr 2006 11:31:42 +0000 (13:31 +0200)]
BUG_ON() Conversion in md/raid5.c

this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>