[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20130923194207.GS9093@linux.vnet.ibm.com>
Date: Mon, 23 Sep 2013 12:42:07 -0700
From: "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To: Michael Opdenacker <michael.opdenacker@...e-electrons.com>
Cc: trivial@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] [TRIVIAL] treewide: fix occurrences of "the the "
On Thu, Sep 12, 2013 at 09:53:17PM +0200, Michael Opdenacker wrote:
> Fix all occurrences of "the the " in the source code,
> comments and documentation.
>
> The replacement couldn't be automated because sometimes
> the first "the" was meant to be another word.
>
> Example: "according the the"
> meaning: "according to the"
>
> Note that I sometimes took the opportunity to fix
> other spelling issues or typos in the same sentences.
> I also fixed a few checkpatch errors in the same
> lines.
>
> If this is not the best time to get this patch merged,
> I'll be happy to rebase and post it again when needed.
>
> Signed-off-by: Michael Opdenacker <michael.opdenacker@...e-electrons.com>
I queued the changes to Documentation/RCU/checklist.txt for 3.13 with
your Signed-off-by.
Thanx, Paul
> ---
> Documentation/ABI/testing/sysfs-devices-memory | 2 +-
> Documentation/DocBook/media/v4l/controls.xml | 2 +-
> Documentation/DocBook/media/v4l/vidioc-g-parm.xml | 2 +-
> Documentation/RCU/checklist.txt | 2 +-
> Documentation/devicetree/bindings/arm/msm/timer.txt | 2 +-
> Documentation/devicetree/bindings/ata/cavium-compact-flash.txt | 2 +-
> Documentation/devicetree/bindings/mtd/fsmc-nand.txt | 2 +-
> Documentation/email-clients.txt | 2 +-
> Documentation/filesystems/autofs4-mount-control.txt | 6 +++---
> Documentation/futex-requeue-pi.txt | 2 +-
> Documentation/input/multi-touch-protocol.txt | 2 +-
> Documentation/io-mapping.txt | 2 +-
> Documentation/kmemcheck.txt | 2 +-
> Documentation/networking/spider_net.txt | 2 +-
> Documentation/power/devices.txt | 2 +-
> Documentation/security/Smack.txt | 2 +-
> Documentation/static-keys.txt | 2 +-
> Documentation/trace/ring-buffer-design.txt | 2 +-
> Documentation/usb/WUSB-Design-overview.txt | 2 +-
> Documentation/virtual/kvm/api.txt | 2 +-
> Documentation/vm/unevictable-lru.txt | 2 +-
> arch/arm/Kconfig | 2 +-
> arch/arm/include/asm/unwind.h | 2 +-
> arch/arm/mach-omap2/omap_hwmod.c | 6 +++---
> arch/arm/mach-pxa/stargate2.c | 2 +-
> arch/blackfin/mach-common/entry.S | 2 +-
> arch/c6x/platforms/cache.c | 2 +-
> arch/ia64/include/asm/spinlock.h | 2 +-
> arch/ia64/include/asm/uv/uv_hub.h | 2 +-
> arch/m68k/platform/coldfire/intc-2.c | 2 +-
> arch/metag/kernel/process.c | 2 +-
> arch/microblaze/kernel/entry.S | 2 +-
> arch/mips/alchemy/devboards/pm.c | 2 +-
> arch/mips/include/asm/octeon/cvmx-pip.h | 2 +-
> arch/mips/include/asm/spinlock.h | 2 +-
> arch/mips/kernel/smtc.c | 2 +-
> arch/mips/kvm/kvm_mips.c | 2 +-
> arch/mips/mm/c-octeon.c | 4 ++--
> arch/mips/netlogic/xlr/fmn.c | 2 +-
> arch/powerpc/include/asm/epapr_hcalls.h | 2 +-
> arch/powerpc/include/asm/hw_breakpoint.h | 2 +-
> arch/powerpc/kernel/head_64.S | 2 +-
> arch/powerpc/mm/gup.c | 2 +-
> arch/powerpc/mm/hugetlbpage.c | 2 +-
> arch/powerpc/platforms/52xx/mpc52xx_gpt.c | 2 +-
> arch/powerpc/platforms/chrp/setup.c | 2 +-
> arch/powerpc/platforms/powernv/pci-ioda.c | 2 +-
> arch/s390/mm/gup.c | 2 +-
> arch/sparc/kernel/pci.c | 2 +-
> arch/sparc/mm/gup.c | 2 +-
> arch/tile/include/asm/irqflags.h | 2 +-
> arch/tile/include/gxio/trio.h | 2 +-
> arch/tile/kernel/single_step.c | 2 +-
> arch/x86/include/asm/spinlock.h | 2 +-
> arch/x86/include/asm/uv/uv_hub.h | 2 +-
> arch/x86/kvm/x86.c | 2 +-
> arch/x86/mm/gup.c | 4 ++--
> arch/x86/xen/setup.c | 2 +-
> arch/xtensa/include/asm/initialize_mmu.h | 2 +-
> drivers/acpi/acpica/accommon.h | 2 +-
> drivers/block/drbd/drbd_main.c | 2 +-
> drivers/char/apm-emulation.c | 2 +-
> drivers/char/xilinx_hwicap/fifo_icap.c | 2 +-
> drivers/cpuidle/driver.c | 4 ++--
> drivers/crypto/picoxcell_crypto.c | 2 +-
> drivers/crypto/ux500/hash/hash_core.c | 2 +-
> drivers/gpio/gpio-ich.c | 2 +-
> drivers/gpu/drm/i915/i915_gem.c | 2 +-
> drivers/gpu/drm/i915/intel_display.c | 4 ++--
> drivers/gpu/drm/radeon/atombios.h | 4 ++--
> drivers/gpu/drm/radeon/r300_reg.h | 2 +-
> drivers/gpu/drm/radeon/radeon_device.c | 2 +-
> drivers/gpu/drm/radeon/radeon_fence.c | 2 +-
> drivers/gpu/drm/radeon/radeon_gart.c | 2 +-
> drivers/hv/channel.c | 4 ++--
> drivers/hv/vmbus_drv.c | 2 +-
> drivers/hwmon/pmbus/ucd9200.c | 2 +-
> drivers/infiniband/hw/ipath/ipath_common.h | 2 +-
> drivers/infiniband/hw/qib/qib.h | 2 +-
> drivers/input/mouse/gpio_mouse.c | 2 +-
> drivers/input/touchscreen/atmel_mxt_ts.c | 2 +-
> drivers/isdn/hardware/mISDN/hfcsusb.c | 2 +-
> drivers/lguest/core.c | 2 +-
> drivers/media/dvb-frontends/tda1002x.h | 2 +-
> drivers/media/dvb-frontends/tda10048.c | 2 +-
> drivers/media/pci/cx88/cx88-dsp.c | 2 +-
> drivers/media/pci/ivtv/ivtv-yuv.c | 2 +-
> drivers/media/pci/saa7164/saa7164-core.c | 2 +-
> drivers/media/platform/davinci/vpbe.c | 2 +-
> drivers/media/platform/exynos4-is/fimc-capture.c | 2 +-
> drivers/media/platform/omap3isp/isp.c | 2 +-
> drivers/media/rc/iguanair.c | 2 +-
> drivers/media/usb/dvb-usb/friio-fe.c | 2 +-
> drivers/media/usb/dvb-usb/friio.c | 2 +-
> drivers/media/usb/dvb-usb/friio.h | 2 +-
> drivers/media/usb/gspca/finepix.c | 2 +-
> drivers/media/usb/tm6000/tm6000-cards.c | 2 +-
> drivers/media/usb/uvc/uvc_video.c | 2 +-
> drivers/memory/emif.c | 2 +-
> drivers/message/fusion/mptspi.c | 2 +-
> drivers/mfd/db8500-prcmu.c | 2 +-
> drivers/misc/sgi-gru/grukservices.c | 2 +-
> drivers/misc/sgi-xp/xpc_uv.c | 2 +-
> drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 2 +-
> drivers/mtd/ubi/ubi.h | 4 ++--
> drivers/mtd/ubi/wl.c | 2 +-
> drivers/net/ethernet/calxeda/xgmac.c | 2 +-
> drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +-
> drivers/net/ethernet/emulex/benet/be_main.c | 2 +-
> drivers/net/ethernet/intel/e1000/e1000_hw.c | 2 +-
> drivers/net/ethernet/intel/e1000e/ich8lan.c | 2 +-
> drivers/net/ethernet/intel/igb/e1000_82575.c | 2 +-
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 2 +-
> drivers/net/ethernet/neterion/s2io.c | 2 +-
> drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c | 2 +-
> drivers/net/wimax/i2400m/i2400m.h | 4 ++--
> drivers/net/wimax/i2400m/rx.c | 2 +-
> drivers/net/wimax/i2400m/tx.c | 2 +-
> drivers/net/wireless/ath/ath10k/rx_desc.h | 2 +-
> drivers/net/wireless/ath/ath6kl/hif.h | 2 +-
> drivers/net/wireless/ath/ath6kl/sdio.c | 2 +-
> drivers/net/wireless/ath/ath9k/ar9002_phy.c | 2 +-
> drivers/net/wireless/ath/ath9k/ar9003_phy.c | 2 +-
> drivers/net/wireless/brcm80211/brcmsmac/main.c | 2 +-
> drivers/net/wireless/iwlwifi/mvm/fw-api-tx.h | 4 ++--
> drivers/net/wireless/iwlwifi/mvm/phy-ctxt.c | 4 ++--
> drivers/of/base.c | 2 +-
> drivers/pci/hotplug/acpiphp_glue.c | 2 +-
> drivers/pcmcia/pxa2xx_hx4700.c | 2 +-
> drivers/power/power_supply_sysfs.c | 5 +++--
> drivers/rtc/rtc-rs5c372.c | 2 +-
> drivers/s390/net/qeth_core_main.c | 2 +-
> drivers/scsi/bfa/bfa_fcs_rport.c | 2 +-
> drivers/scsi/fcoe/fcoe.c | 6 +++---
> drivers/scsi/fcoe/fcoe_ctlr.c | 4 ++--
> drivers/scsi/isci/host.h | 2 +-
> drivers/scsi/isci/remote_device.h | 2 +-
> drivers/scsi/isci/remote_node_context.h | 2 +-
> drivers/scsi/isci/task.c | 2 +-
> drivers/scsi/lpfc/lpfc_attr.c | 8 ++++----
> drivers/scsi/lpfc/lpfc_els.c | 2 +-
> drivers/scsi/lpfc/lpfc_hbadisc.c | 4 ++--
> drivers/scsi/lpfc/lpfc_init.c | 2 +-
> drivers/scsi/lpfc/lpfc_mbox.c | 2 +-
> drivers/scsi/lpfc/lpfc_sli.c | 2 +-
> drivers/scsi/pm8001/pm8001_hwi.c | 2 +-
> drivers/spi/spi-ppc4xx.c | 2 +-
> drivers/staging/android/binder.h | 2 +-
> drivers/staging/et131x/et131x.c | 2 +-
> drivers/staging/lustre/lustre/llite/file.c | 2 +-
> drivers/staging/lustre/lustre/ptlrpc/pinger.c | 2 +-
> drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c | 4 ++--
> drivers/staging/rtl8188eu/core/rtw_cmd.c | 2 +-
> drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c | 2 +-
> drivers/staging/rtl8712/rtl871x_cmd.c | 2 +-
> drivers/staging/sep/sep_main.c | 6 +++---
> drivers/staging/tidspbridge/include/dspbridge/drv.h | 4 ++--
> drivers/staging/tidspbridge/pmgr/dev.c | 2 +-
> drivers/staging/wlags49_h2/README.wlags49 | 2 +-
> drivers/target/target_core_alua.c | 2 +-
> drivers/usb/serial/cypress_m8.c | 2 +-
> drivers/usb/serial/mos7720.c | 4 ++--
> drivers/usb/wusbcore/devconnect.c | 2 +-
> drivers/uwb/drp-ie.c | 2 +-
> drivers/video/omap/sossi.c | 2 +-
> drivers/video/sis/sis_accel.c | 2 +-
> fs/autofs4/dev-ioctl.c | 2 +-
> fs/btrfs/dev-replace.c | 2 +-
> fs/btrfs/send.c | 2 +-
> fs/btrfs/tree-log.c | 2 +-
> fs/dcache.c | 4 ++--
> fs/ecryptfs/keystore.c | 2 +-
> fs/ext2/ext2.h | 2 +-
> fs/ext4/inline.c | 4 ++--
> fs/f2fs/segment.h | 2 +-
> fs/ocfs2/localalloc.c | 2 +-
> fs/xfs/xfs_export.c | 2 +-
> include/drm/drm_rect.h | 2 +-
> include/linux/mm.h | 2 +-
> include/linux/moduleparam.h | 2 +-
> include/linux/skbuff.h | 2 +-
> include/net/caif/caif_layer.h | 2 +-
> include/net/ip6_fib.h | 2 +-
> include/net/wimax.h | 2 +-
> init/main.c | 2 +-
> kernel/jump_label.c | 2 +-
> kernel/printk/printk.c | 2 +-
> kernel/smp.c | 2 +-
> kernel/trace/ring_buffer.c | 2 +-
> lib/bitmap.c | 2 +-
> lib/dynamic_queue_limits.c | 2 +-
> lib/earlycpio.c | 2 +-
> lib/syscall.c | 2 +-
> mm/hugetlb.c | 2 +-
> mm/page_alloc.c | 2 +-
> net/bluetooth/hci_conn.c | 2 +-
> net/bluetooth/hci_core.c | 2 +-
> net/sctp/chunk.c | 2 +-
> net/sunrpc/auth_generic.c | 2 +-
> net/tipc/link.c | 2 +-
> net/wimax/op-rfkill.c | 2 +-
> scripts/tracing/draw_functrace.py | 2 +-
> security/apparmor/context.c | 2 +-
> security/keys/keyctl.c | 2 +-
> sound/pci/hda/hda_codec.c | 2 +-
> sound/pci/hda/patch_sigmatel.c | 2 +-
> sound/pci/ice1712/prodigy192.c | 2 +-
> sound/soc/codecs/wm9713.c | 2 +-
> sound/soc/fsl/fsl_dma.c | 2 +-
> sound/soc/fsl/fsl_ssi.c | 2 +-
> sound/sparc/dbri.c | 2 +-
> tools/perf/Documentation/perf-diff.txt | 2 +-
> tools/power/x86/turbostat/turbostat.8 | 4 ++--
> 213 files changed, 244 insertions(+), 243 deletions(-)
>
> diff --git a/Documentation/ABI/testing/sysfs-devices-memory b/Documentation/ABI/testing/sysfs-devices-memory
> index 7405de2..4b3c020 100644
> --- a/Documentation/ABI/testing/sysfs-devices-memory
> +++ b/Documentation/ABI/testing/sysfs-devices-memory
> @@ -45,7 +45,7 @@ Description:
> The file /sys/devices/system/memory/memoryX/state
> is read-write. When read, its contents show the
> online/offline state of the memory section. When written,
> - root can toggle the the online/offline state of a removable
> + root can toggle the online/offline state of a removable
> memory section (see removable file description above)
> using the following commands.
> # echo online > /sys/devices/system/memory/memoryX/state
> diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
> index 7a3b49b..7cfc7c2 100644
> --- a/Documentation/DocBook/media/v4l/controls.xml
> +++ b/Documentation/DocBook/media/v4l/controls.xml
> @@ -3303,7 +3303,7 @@ giving priority to the center of the metered area.</entry>
> <row>
> <entry><constant>V4L2_EXPOSURE_METERING_MATRIX</constant> </entry>
> <entry>A multi-zone metering. The light intensity is measured
> -in several points of the frame and the the results are combined. The
> +in several points of the frame and the results are combined. The
> algorithm of the zones selection and their significance in calculating the
> final value is device dependent.</entry>
> </row>
> diff --git a/Documentation/DocBook/media/v4l/vidioc-g-parm.xml b/Documentation/DocBook/media/v4l/vidioc-g-parm.xml
> index f4e28e7..7217287 100644
> --- a/Documentation/DocBook/media/v4l/vidioc-g-parm.xml
> +++ b/Documentation/DocBook/media/v4l/vidioc-g-parm.xml
> @@ -267,7 +267,7 @@ is intended for still imaging applications. The idea is to get the
> best possible image quality that the hardware can deliver. It is not
> defined how the driver writer may achieve that; it will depend on the
> hardware and the ingenuity of the driver writer. High quality mode is
> -a different mode from the the regular motion video capture modes. In
> +a different mode from the regular motion video capture modes. In
> high quality mode:<itemizedlist>
> <listitem>
> <para>The driver may be able to capture higher
> diff --git a/Documentation/RCU/checklist.txt b/Documentation/RCU/checklist.txt
> index 7703ec7..ad6cba4 100644
> --- a/Documentation/RCU/checklist.txt
> +++ b/Documentation/RCU/checklist.txt
> @@ -203,7 +203,7 @@ over a rather long period of time, but improvements are always welcome!
> the corresponding readers must disable preemption, possibly
> by calling rcu_read_lock_sched() and rcu_read_unlock_sched().
> If the updater uses synchronize_srcu() or call_srcu(),
> - the the corresponding readers must use srcu_read_lock() and
> + the corresponding readers must use srcu_read_lock() and
> srcu_read_unlock(), and with the same srcu_struct. The rules for
> the expedited primitives are the same as for their non-expedited
> counterparts. Mixing things up will result in confusion and
> diff --git a/Documentation/devicetree/bindings/arm/msm/timer.txt b/Documentation/devicetree/bindings/arm/msm/timer.txt
> index c6ef8f1..74607b6 100644
> --- a/Documentation/devicetree/bindings/arm/msm/timer.txt
> +++ b/Documentation/devicetree/bindings/arm/msm/timer.txt
> @@ -8,7 +8,7 @@ Properties:
> "qcom,kpss-timer" - krait subsystem
> "qcom,scss-timer" - scorpion subsystem
>
> -- interrupts : Interrupts for the the debug timer, the first general purpose
> +- interrupts : Interrupts for the debug timer, the first general purpose
> timer, and optionally a second general purpose timer in that
> order.
>
> diff --git a/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt b/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt
> index 93986a5..3bacc8e 100644
> --- a/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt
> +++ b/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt
> @@ -9,7 +9,7 @@ Properties:
>
> Compatibility with many Cavium evaluation boards.
>
> -- reg: The base address of the the CF chip select banks. Depending on
> +- reg: The base address of the CF chip select banks. Depending on
> the device configuration, there may be one or two banks.
>
> - cavium,bus-width: The width of the connection to the CF devices. Valid
> diff --git a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt
> index ec42935..5235cbc 100644
> --- a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt
> +++ b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt
> @@ -9,7 +9,7 @@ Required properties:
> Optional properties:
> - bank-width : Width (in bytes) of the device. If not present, the width
> defaults to 1 byte
> -- nand-skip-bbtscan: Indicates the the BBT scanning should be skipped
> +- nand-skip-bbtscan: Indicates the BBT scanning should be skipped
> - timings: array of 6 bytes for NAND timings. The meanings of these bytes
> are:
> byte 0 TCLR : CLE to RE delay in number of AHB clock cycles, only 4 bits
> diff --git a/Documentation/email-clients.txt b/Documentation/email-clients.txt
> index 860c29a..e9f5dac 100644
> --- a/Documentation/email-clients.txt
> +++ b/Documentation/email-clients.txt
> @@ -104,7 +104,7 @@ Then from the "Message" menu item, select insert file and choose your patch.
> As an added bonus you can customise the message creation toolbar menu
> and put the "insert file" icon there.
>
> -Make the the composer window wide enough so that no lines wrap. As of
> +Make the composer window wide enough so that no lines wrap. As of
> KMail 1.13.5 (KDE 4.5.4), KMail will apply word wrapping when sending
> the email if the lines wrap in the composer window. Having word wrapping
> disabled in the Options menu isn't enough. Thus, if your patch has very
> diff --git a/Documentation/filesystems/autofs4-mount-control.txt b/Documentation/filesystems/autofs4-mount-control.txt
> index 4c95935..e548964 100644
> --- a/Documentation/filesystems/autofs4-mount-control.txt
> +++ b/Documentation/filesystems/autofs4-mount-control.txt
> @@ -255,7 +255,7 @@ AUTOFS_DEV_IOCTL_OPENMOUNT and AUTOFS_DEV_IOCTL_CLOSEMOUNT
>
> Obtain and release a file descriptor for an autofs managed mount point
> path. The open call requires an initialized struct autofs_dev_ioctl with
> -the the path field set and the size field adjusted appropriately as well
> +the path field set and the size field adjusted appropriately as well
> as the arg1 field set to the device number of the autofs mount. The
> device number can be obtained from the mount options shown in
> /proc/mounts. The close call requires an initialized struct
> @@ -373,7 +373,7 @@ variation uses the path and optionally arg1 set to an autofs mount type.
> The call returns 1 if this is a mount point and sets arg1 to the device
> number of the mount and field arg2 to the relevant super block magic
> number (described below) or 0 if it isn't a mountpoint. In both cases
> -the the device number (as returned by new_encode_dev()) is returned
> +the device number (as returned by new_encode_dev()) is returned
> in field arg1.
>
> If supplied with a file descriptor we're looking for a specific mount,
> @@ -387,7 +387,7 @@ is one or 0 if it isn't a mountpoint.
> If a path is supplied (and the ioctlfd field is set to -1) then the path
> is looked up and is checked to see if it is the root of a mount. If a
> type is also given we are looking for a particular autofs mount and if
> -a match isn't found a fail is returned. If the the located path is the
> +a match isn't found a fail is returned. If the located path is the
> root of a mount 1 is returned along with the super magic of the mount
> or 0 otherwise.
>
> diff --git a/Documentation/futex-requeue-pi.txt b/Documentation/futex-requeue-pi.txt
> index 9dc1ff4..31b1661 100644
> --- a/Documentation/futex-requeue-pi.txt
> +++ b/Documentation/futex-requeue-pi.txt
> @@ -67,7 +67,7 @@ pthread_cond_wait_pi(cond, mutex)
> lock(cond->__data.__lock);
> } while(...)
> unlock(cond->__data.__lock);
> - /* the kernel acquired the the mutex for us */
> + /* the kernel acquired the mutex for us */
> }
>
> pthread_cond_broadcast_pi(cond)
> diff --git a/Documentation/input/multi-touch-protocol.txt b/Documentation/input/multi-touch-protocol.txt
> index de139b1..7b4f59c 100644
> --- a/Documentation/input/multi-touch-protocol.txt
> +++ b/Documentation/input/multi-touch-protocol.txt
> @@ -372,7 +372,7 @@ simple scheme, which is compatible with earlier usage, is:
>
> Rationale: We have no information about the orientation of the touching
> ellipse, so approximate it with an inscribed circle instead. The tool
> -ellipse should align with the the vector (T - C), so the diameter must
> +ellipse should align with the vector (T - C), so the diameter must
> increase with distance(T, C). Finally, assume that the touch diameter is
> equal to the tool thickness, and we arrive at the formulas above.
>
> diff --git a/Documentation/io-mapping.txt b/Documentation/io-mapping.txt
> index 473e43b..5ca7842 100644
> --- a/Documentation/io-mapping.txt
> +++ b/Documentation/io-mapping.txt
> @@ -38,7 +38,7 @@ maps are more efficient:
>
> void io_mapping_unmap_atomic(void *vaddr)
>
> - 'vaddr' must be the the value returned by the last
> + 'vaddr' must be the value returned by the last
> io_mapping_map_atomic_wc call. This unmaps the specified
> page and allows the task to sleep once again.
>
> diff --git a/Documentation/kmemcheck.txt b/Documentation/kmemcheck.txt
> index 9398a50..a41bdeb 100644
> --- a/Documentation/kmemcheck.txt
> +++ b/Documentation/kmemcheck.txt
> @@ -541,7 +541,7 @@ initialized. This is the beginning of the struct:
> 92 } _sifields;
> 93 } siginfo_t;
>
> -On 64-bit, the int is 4 bytes long, so it must the the union member that has
> +On 64-bit, the int is 4 bytes long, so it must the union member that has
> not been initialized. We can verify this using gdb:
>
> $ gdb vmlinux
> diff --git a/Documentation/networking/spider_net.txt b/Documentation/networking/spider_net.txt
> index 4b4adb8..b0b75f8 100644
> --- a/Documentation/networking/spider_net.txt
> +++ b/Documentation/networking/spider_net.txt
> @@ -73,7 +73,7 @@ Thus, in an idle system, the GDACTDPA, tail and head pointers will
> all be pointing at the same descr, which should be "empty". All of the
> other descrs in the ring should be "empty" as well.
>
> -The show_rx_chain() routine will print out the the locations of the
> +The show_rx_chain() routine will print out the locations of the
> GDACTDPA, tail and head pointers. It will also summarize the contents
> of the ring, starting at the tail pointer, and listing the status
> of the descrs that follow.
> diff --git a/Documentation/power/devices.txt b/Documentation/power/devices.txt
> index a66c982..47d46df 100644
> --- a/Documentation/power/devices.txt
> +++ b/Documentation/power/devices.txt
> @@ -391,7 +391,7 @@ When resuming from freeze, standby or memory sleep, the phases are:
> the resume methods. This generally involves undoing the actions of the
> preceding suspend_late phase.
>
> - 3 The resume methods should bring the the device back to its operating
> + 3 The resume methods should bring the device back to its operating
> state, so that it can perform normal I/O. This generally involves
> undoing the actions of the suspend phase.
>
> diff --git a/Documentation/security/Smack.txt b/Documentation/security/Smack.txt
> index 7a2d30c..5ea996f 100644
> --- a/Documentation/security/Smack.txt
> +++ b/Documentation/security/Smack.txt
> @@ -3,7 +3,7 @@
> "Good for you, you've decided to clean the elevator!"
> - The Elevator, from Dark Star
>
> -Smack is the the Simplified Mandatory Access Control Kernel.
> +Smack is the Simplified Mandatory Access Control Kernel.
> Smack is a kernel based implementation of mandatory access
> control that includes simplicity in its primary design goals.
>
> diff --git a/Documentation/static-keys.txt b/Documentation/static-keys.txt
> index 9f5263d..e5f46e7 100644
> --- a/Documentation/static-keys.txt
> +++ b/Documentation/static-keys.txt
> @@ -116,7 +116,7 @@ The branch(es) can then be switched via:
> static_key_slow_dec(&key);
>
> Thus, 'static_key_slow_inc()' means 'make the branch true', and
> -'static_key_slow_dec()' means 'make the the branch false' with appropriate
> +'static_key_slow_dec()' means 'make the branch false' with appropriate
> reference counting. For example, if the key is initialized true, a
> static_key_slow_dec(), will switch the branch to false. And a subsequent
> static_key_slow_inc(), will change the branch back to true. Likewise, if the
> diff --git a/Documentation/trace/ring-buffer-design.txt b/Documentation/trace/ring-buffer-design.txt
> index 7d350b4..ff747b6 100644
> --- a/Documentation/trace/ring-buffer-design.txt
> +++ b/Documentation/trace/ring-buffer-design.txt
> @@ -683,7 +683,7 @@ against nested writers.
> cmpxchg(tail_page, temp_page, next_page)
>
> The above will update the tail page if it is still pointing to the expected
> -page. If this fails, a nested write pushed it forward, the the current write
> +page. If this fails, a nested write pushed it forward, the current write
> does not need to push it.
>
>
> diff --git a/Documentation/usb/WUSB-Design-overview.txt b/Documentation/usb/WUSB-Design-overview.txt
> index 4c5e379..1cd07c0 100644
> --- a/Documentation/usb/WUSB-Design-overview.txt
> +++ b/Documentation/usb/WUSB-Design-overview.txt
> @@ -25,7 +25,7 @@ updated content.
> * Design-overview.txt-1.8
>
> This code implements a Ultra Wide Band stack for Linux, as well as
> -drivers for the the USB based UWB radio controllers defined in the
> +drivers for the USB based UWB radio controllers defined in the
> Wireless USB 1.0 specification (including Wireless USB host controller
> and an Intel WiNET controller).
>
> diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt
> index 858aecf..cb54d29 100644
> --- a/Documentation/virtual/kvm/api.txt
> +++ b/Documentation/virtual/kvm/api.txt
> @@ -1462,7 +1462,7 @@ struct kvm_lapic_state {
> char regs[KVM_APIC_REG_SIZE];
> };
>
> -Copies the input argument into the the Local APIC registers. The data format
> +Copies the input argument into the Local APIC registers. The data format
> and layout are the same as documented in the architecture manual.
>
>
> diff --git a/Documentation/vm/unevictable-lru.txt b/Documentation/vm/unevictable-lru.txt
> index a68db769..441dd22 100644
> --- a/Documentation/vm/unevictable-lru.txt
> +++ b/Documentation/vm/unevictable-lru.txt
> @@ -453,7 +453,7 @@ putback_lru_page() function to add migrated pages back to the LRU.
> mmap(MAP_LOCKED) SYSTEM CALL HANDLING
> -------------------------------------
>
> -In addition the the mlock()/mlockall() system calls, an application can request
> +In addition to the mlock()/mlockall() system calls, an application can request
> that a region of memory be mlocked supplying the MAP_LOCKED flag to the mmap()
> call. Furthermore, any mmap() call or brk() call that expands the heap by a
> task that has previously called mlockall() with the MCL_FUTURE flag will result
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index c8a916f..6bd7582 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -2021,7 +2021,7 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND
> bool "Extend with bootloader kernel arguments"
> help
> The command-line arguments provided by the boot loader will be
> - appended to the the device tree bootargs property.
> + appended to the device tree bootargs property.
>
> endchoice
>
> diff --git a/arch/arm/include/asm/unwind.h b/arch/arm/include/asm/unwind.h
> index d1c3f3a..4f697ed 100644
> --- a/arch/arm/include/asm/unwind.h
> +++ b/arch/arm/include/asm/unwind.h
> @@ -22,7 +22,7 @@
>
> #ifndef __ASSEMBLY__
>
> -/* Unwind reason code according the the ARM EABI documents */
> +/* Unwind reason code according to the ARM EABI documents */
> enum unwind_reason_code {
> URC_OK = 0, /* operation completed successfully */
> URC_CONTINUE_UNWIND = 8,
> diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
> index d9ee0ff..5232252 100644
> --- a/arch/arm/mach-omap2/omap_hwmod.c
> +++ b/arch/arm/mach-omap2/omap_hwmod.c
> @@ -721,7 +721,7 @@ static int _del_initiator_dep(struct omap_hwmod *oh, struct omap_hwmod *init_oh)
> }
>
> /**
> - * _init_main_clk - get a struct clk * for the the hwmod's main functional clk
> + * _init_main_clk - get a struct clk * for the hwmod's main functional clk
> * @oh: struct omap_hwmod *
> *
> * Called from _init_clocks(). Populates the @oh _clk (main
> @@ -759,7 +759,7 @@ static int _init_main_clk(struct omap_hwmod *oh)
> }
>
> /**
> - * _init_interface_clks - get a struct clk * for the the hwmod's interface clks
> + * _init_interface_clks - get a struct clk * for the hwmod's interface clks
> * @oh: struct omap_hwmod *
> *
> * Called from _init_clocks(). Populates the @oh OCP slave interface
> @@ -802,7 +802,7 @@ static int _init_interface_clks(struct omap_hwmod *oh)
> }
>
> /**
> - * _init_opt_clk - get a struct clk * for the the hwmod's optional clocks
> + * _init_opt_clk - get a struct clk * for the hwmod's optional clocks
> * @oh: struct omap_hwmod *
> *
> * Called from _init_clocks(). Populates the @oh omap_hwmod_opt_clk
> diff --git a/arch/arm/mach-pxa/stargate2.c b/arch/arm/mach-pxa/stargate2.c
> index 62aea3e..cd2a206 100644
> --- a/arch/arm/mach-pxa/stargate2.c
> +++ b/arch/arm/mach-pxa/stargate2.c
> @@ -423,7 +423,7 @@ static void __init imote2_stargate2_init(void)
> }
>
> #ifdef CONFIG_MACH_INTELMOTE2
> -/* As the the imote2 doesn't currently have a conventional SD slot
> +/* As the imote2 doesn't currently have a conventional SD slot
> * there is no option to hotplug cards, making all this rather simple
> */
> static int imote2_mci_get_ro(struct device *dev)
> diff --git a/arch/blackfin/mach-common/entry.S b/arch/blackfin/mach-common/entry.S
> index 86b5a09..9c86123 100644
> --- a/arch/blackfin/mach-common/entry.S
> +++ b/arch/blackfin/mach-common/entry.S
> @@ -480,7 +480,7 @@ ENTRY(_trap) /* Exception: 4th entry into system event table(supervisor mode)*/
> #ifdef CONFIG_EXACT_HWERR
> /* Make sure all pending read/writes complete. This will ensure any
> * accesses which could cause hardware errors completes, and signal
> - * the the hardware before we do something silly, like crash the
> + * the hardware before we do something silly, like crash the
> * kernel. We don't need to work around anomaly 05000312, since
> * we are already atomic
> */
> diff --git a/arch/c6x/platforms/cache.c b/arch/c6x/platforms/cache.c
> index 86318a1..dc21f94 100644
> --- a/arch/c6x/platforms/cache.c
> +++ b/arch/c6x/platforms/cache.c
> @@ -437,7 +437,7 @@ void __init c6x_cache_init(void)
> if (!cache_base)
> return;
>
> - /* Set L2 caches on the the whole L2 SRAM memory */
> + /* Set L2 caches on the whole L2 SRAM memory */
> L2_cache_set_mode(L2MODE_SIZE);
>
> /* Enable L1 */
> diff --git a/arch/ia64/include/asm/spinlock.h b/arch/ia64/include/asm/spinlock.h
> index 45698cd..bd6ea40 100644
> --- a/arch/ia64/include/asm/spinlock.h
> +++ b/arch/ia64/include/asm/spinlock.h
> @@ -23,7 +23,7 @@
> * the queue, and the other indicating the current tail. The lock is acquired
> * by atomically noting the tail and incrementing it by one (thus adding
> * ourself to the queue and noting our position), then waiting until the head
> - * becomes equal to the the initial value of the tail.
> + * becomes equal to the initial value of the tail.
> * The pad bits in the middle are used to prevent the next_ticket number
> * overflowing into the now_serving number.
> *
> diff --git a/arch/ia64/include/asm/uv/uv_hub.h b/arch/ia64/include/asm/uv/uv_hub.h
> index 53e9dfa..3ea4168 100644
> --- a/arch/ia64/include/asm/uv/uv_hub.h
> +++ b/arch/ia64/include/asm/uv/uv_hub.h
> @@ -257,7 +257,7 @@ static inline int uv_numa_blade_id(void)
> return 0;
> }
>
> -/* Convert a cpu number to the the UV blade number */
> +/* Convert a cpu number to the UV blade number */
> static inline int uv_cpu_to_blade_id(int cpu)
> {
> return 0;
> diff --git a/arch/m68k/platform/coldfire/intc-2.c b/arch/m68k/platform/coldfire/intc-2.c
> index 9950933..f74f0e47 100644
> --- a/arch/m68k/platform/coldfire/intc-2.c
> +++ b/arch/m68k/platform/coldfire/intc-2.c
> @@ -7,7 +7,7 @@
> * family, the 5270, 5271, 5274, 5275, and the 528x family which have two such
> * controllers, and the 547x and 548x families which have only one of them.
> *
> - * The external 7 fixed interrupts are part the the Edge Port unit of these
> + * The external 7 fixed interrupts are part of the Edge Port unit of these
> * ColdFire parts. They can be configured as level or edge triggered.
> *
> * (C) Copyright 2009-2011, Greg Ungerer <gerg@...pgear.com>
> diff --git a/arch/metag/kernel/process.c b/arch/metag/kernel/process.c
> index 483dff9..30052da 100644
> --- a/arch/metag/kernel/process.c
> +++ b/arch/metag/kernel/process.c
> @@ -211,7 +211,7 @@ int copy_thread(unsigned long clone_flags, unsigned long usp,
> /*
> * Get a pointer to where the new child's register block should have
> * been pushed.
> - * The Meta's stack grows upwards, and the context is the the first
> + * The Meta's stack grows upwards, and the context is the first
> * thing to be pushed by TBX (phew)
> */
> *childregs = *current_pt_regs();
> diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S
> index 0536bc0..b417be0 100644
> --- a/arch/microblaze/kernel/entry.S
> +++ b/arch/microblaze/kernel/entry.S
> @@ -445,7 +445,7 @@ TRAP_return: /* Make global symbol for debugging */
>
>
> /* This the initial entry point for a new child thread, with an appropriate
> - stack in place that makes it look the the child is in the middle of an
> + stack in place that makes it look like the child is in the middle of an
> syscall. This function is actually `returned to' from switch_thread
> (copy_thread makes ret_from_fork the return address in each new thread's
> saved context). */
> diff --git a/arch/mips/alchemy/devboards/pm.c b/arch/mips/alchemy/devboards/pm.c
> index b86bff3..6363d3c 100644
> --- a/arch/mips/alchemy/devboards/pm.c
> +++ b/arch/mips/alchemy/devboards/pm.c
> @@ -16,7 +16,7 @@
> * Generic suspend userspace interface for Alchemy development boards.
> * This code exports a few sysfs nodes under /sys/power/db1x/ which
> * can be used by userspace to en/disable all au1x-provided wakeup
> - * sources and configure the timeout after which the the TOYMATCH2 irq
> + * sources and configure the timeout after which the TOYMATCH2 irq
> * is to trigger a wakeup.
> */
>
> diff --git a/arch/mips/include/asm/octeon/cvmx-pip.h b/arch/mips/include/asm/octeon/cvmx-pip.h
> index a76fe5a..a6e8835 100644
> --- a/arch/mips/include/asm/octeon/cvmx-pip.h
> +++ b/arch/mips/include/asm/octeon/cvmx-pip.h
> @@ -503,7 +503,7 @@ static inline void cvmx_pip_tag_mask_clear(uint64_t mask_index)
> * offsetof() to determine the offsets into packet headers.
> * For example, offsetof(ethhdr, protocol) returns the offset
> * of the ethernet protocol field. The bitmask selects which
> - * bytes to include the the tag, with bit offset X selecting
> + * bytes to include in the tag, with bit offset X selecting
> * byte at offset X from the beginning of the packet data.
> * @len: Number of bytes to include. Usually this is the sizeof()
> * the field.
> diff --git a/arch/mips/include/asm/spinlock.h b/arch/mips/include/asm/spinlock.h
> index 78d201f..b6f41f6 100644
> --- a/arch/mips/include/asm/spinlock.h
> +++ b/arch/mips/include/asm/spinlock.h
> @@ -31,7 +31,7 @@
> * the queue, and the other indicating the current tail. The lock is acquired
> * by atomically noting the tail and incrementing it by one (thus adding
> * ourself to the queue and noting our position), then waiting until the head
> - * becomes equal to the the initial value of the tail.
> + * becomes equal to the initial value of the tail.
> */
>
> static inline int arch_spin_is_locked(arch_spinlock_t *lock)
> diff --git a/arch/mips/kernel/smtc.c b/arch/mips/kernel/smtc.c
> index dfc1b91..cfde409 100644
> --- a/arch/mips/kernel/smtc.c
> +++ b/arch/mips/kernel/smtc.c
> @@ -908,7 +908,7 @@ void smtc_send_ipi(int cpu, int type, unsigned int action)
>
> if ((tcstatus & TCSTATUS_IXMT) != 0) {
> /*
> - * If we're in the the irq-off version of the wait
> + * If we're in the irq-off version of the wait
> * loop, we need to force exit from the wait and
> * do a direct post of the IPI.
> */
> diff --git a/arch/mips/kvm/kvm_mips.c b/arch/mips/kvm/kvm_mips.c
> index a7b0445..4074bc8 100644
> --- a/arch/mips/kvm/kvm_mips.c
> +++ b/arch/mips/kvm/kvm_mips.c
> @@ -1197,7 +1197,7 @@ int __init kvm_mips_init(void)
> /* On MIPS, kernel modules are executed from "mapped space", which requires TLBs.
> * The TLB handling code is statically linked with the rest of the kernel (kvm_tlb.c)
> * to avoid the possibility of double faulting. The issue is that the TLB code
> - * references routines that are part of the the KVM module,
> + * references routines that are part of the KVM module,
> * which are only available once the module is loaded.
> */
> kvm_mips_gfn_to_pfn = gfn_to_pfn;
> diff --git a/arch/mips/mm/c-octeon.c b/arch/mips/mm/c-octeon.c
> index a0bcdbb..a3051b2 100644
> --- a/arch/mips/mm/c-octeon.c
> +++ b/arch/mips/mm/c-octeon.c
> @@ -333,7 +333,7 @@ static void co_cache_error_call_notifiers(unsigned long val)
> }
>
> /*
> - * Called when the the exception is recoverable
> + * Called when the exception is recoverable
> */
>
> asmlinkage void cache_parity_error_octeon_recoverable(void)
> @@ -342,7 +342,7 @@ asmlinkage void cache_parity_error_octeon_recoverable(void)
> }
>
> /**
> - * Called when the the exception is not recoverable
> + * Called when the exception is not recoverable
> */
>
> asmlinkage void cache_parity_error_octeon_non_recoverable(void)
> diff --git a/arch/mips/netlogic/xlr/fmn.c b/arch/mips/netlogic/xlr/fmn.c
> index d428e84..1d1eb1e 100644
> --- a/arch/mips/netlogic/xlr/fmn.c
> +++ b/arch/mips/netlogic/xlr/fmn.c
> @@ -144,7 +144,7 @@ void xlr_percpu_fmn_init(void)
> * For sending FMN messages, we need credits on the destination
> * bucket. Program the credits this core has on the 128 possible
> * destination buckets.
> - * We cannot use a loop here, because the the first argument has
> + * We cannot use a loop here, because the first argument has
> * to be a constant integer value.
> */
> COP2_CC_INIT_CPU_DEST(0, cpu_fmn_info->credit_config);
> diff --git a/arch/powerpc/include/asm/epapr_hcalls.h b/arch/powerpc/include/asm/epapr_hcalls.h
> index 86b0ac7..51dd1f6 100644
> --- a/arch/powerpc/include/asm/epapr_hcalls.h
> +++ b/arch/powerpc/include/asm/epapr_hcalls.h
> @@ -246,7 +246,7 @@ static inline unsigned int ev_int_get_mask(unsigned int interrupt,
> * ev_int_eoi - signal the end of interrupt processing
> * @interrupt: the interrupt number
> *
> - * This function signals the end of processing for the the specified
> + * This function signals the end of processing for the specified
> * interrupt, which must be the interrupt currently in service. By
> * definition, this is also the highest-priority interrupt.
> *
> diff --git a/arch/powerpc/include/asm/hw_breakpoint.h b/arch/powerpc/include/asm/hw_breakpoint.h
> index eb0f4ac..0917910 100644
> --- a/arch/powerpc/include/asm/hw_breakpoint.h
> +++ b/arch/powerpc/include/asm/hw_breakpoint.h
> @@ -30,7 +30,7 @@ struct arch_hw_breakpoint {
> u16 len; /* length of the target data symbol */
> };
>
> -/* Note: Don't change the the first 6 bits below as they are in the same order
> +/* Note: Don't change the first 6 bits below as they are in the same order
> * as the dabr and dabrx.
> */
> #define HW_BRK_TYPE_READ 0x01
> diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
> index 3d11d80..534c33e 100644
> --- a/arch/powerpc/kernel/head_64.S
> +++ b/arch/powerpc/kernel/head_64.S
> @@ -92,7 +92,7 @@ __secondary_hold_acknowledge:
> #ifdef CONFIG_RELOCATABLE
> /* This flag is set to 1 by a loader if the kernel should run
> * at the loaded address instead of the linked address. This
> - * is used by kexec-tools to keep the the kdump kernel in the
> + * is used by kexec-tools to keep the kdump kernel in the
> * crash_kernel region. The loader is responsible for
> * observing the alignment requirement.
> */
> diff --git a/arch/powerpc/mm/gup.c b/arch/powerpc/mm/gup.c
> index 6936547..5dc8868 100644
> --- a/arch/powerpc/mm/gup.c
> +++ b/arch/powerpc/mm/gup.c
> @@ -154,7 +154,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
> * the pagetables from being freed on powerpc.
> *
> * So long as we atomically load page table pointers versus teardown,
> - * we can follow the address down to the the page and take a ref on it.
> + * we can follow the address down to the page and take a ref on it.
> */
> local_irq_disable();
>
> diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c
> index d67db4b..5c993db 100644
> --- a/arch/powerpc/mm/hugetlbpage.c
> +++ b/arch/powerpc/mm/hugetlbpage.c
> @@ -943,7 +943,7 @@ void flush_dcache_icache_hugepage(struct page *page)
> * (4) hugepd pointer, bottom two bits == 00, next 4 bits indicate size of table
> *
> * So long as we atomically load page table pointers we are safe against teardown,
> - * we can follow the address down to the the page and take a ref on it.
> + * we can follow the address down to the page and take a ref on it.
> */
>
> pte_t *find_linux_pte_or_hugepte(pgd_t *pgdir, unsigned long ea, unsigned *shift)
> diff --git a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c
> index 6929982..a2ce008 100644
> --- a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c
> +++ b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c
> @@ -9,7 +9,7 @@
> * Free Software Foundation; either version 2 of the License, or (at your
> * option) any later version.
> *
> - * This file is a driver for the the General Purpose Timer (gpt) devices
> + * This file is a driver for the General Purpose Timer (gpt) devices
> * found on the MPC5200 SoC. Each timer has an IO pin which can be used
> * for GPIO or can be used to raise interrupts. The timer function can
> * be used independently from the IO pin, or it can be used to control
> diff --git a/arch/powerpc/platforms/chrp/setup.c b/arch/powerpc/platforms/chrp/setup.c
> index c665d7d..baeb4df 100644
> --- a/arch/powerpc/platforms/chrp/setup.c
> +++ b/arch/powerpc/platforms/chrp/setup.c
> @@ -251,7 +251,7 @@ static void briq_restart(char *cmd)
> * Per default, input/output-device points to the keyboard/screen
> * If no card is installed, the built-in serial port is used as a fallback.
> * But unfortunately, the firmware does not connect /chosen/{stdin,stdout}
> - * the the built-in serial node. Instead, a /failsafe node is created.
> + * to the built-in serial node. Instead, a /failsafe node is created.
> */
> static void chrp_init_early(void)
> {
> diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
> index 74a5a57..f4a1db8 100644
> --- a/arch/powerpc/platforms/powernv/pci-ioda.c
> +++ b/arch/powerpc/platforms/powernv/pci-ioda.c
> @@ -889,7 +889,7 @@ static void pnv_pci_init_ioda_msis(struct pnv_phb *phb) { }
>
> /*
> * This function is supposed to be called on basis of PE from top
> - * to bottom style. So the the I/O or MMIO segment assigned to
> + * to bottom style. So the I/O or MMIO segment assigned to
> * parent PE could be overrided by its child PEs if necessary.
> */
> static void pnv_ioda_setup_pe_seg(struct pci_controller *hose,
> diff --git a/arch/s390/mm/gup.c b/arch/s390/mm/gup.c
> index 5d758db..e47a8d4 100644
> --- a/arch/s390/mm/gup.c
> +++ b/arch/s390/mm/gup.c
> @@ -236,7 +236,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
> * prevent the pagetables from being freed on s390.
> *
> * So long as we atomically load page table pointers versus teardown,
> - * we can follow the address down to the the page and take a ref on it.
> + * we can follow the address down to the page and take a ref on it.
> */
> local_irq_disable();
> pgdp = pgd_offset(mm, addr);
> diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c
> index bc4d3f5..99c8c5e 100644
> --- a/arch/sparc/kernel/pci.c
> +++ b/arch/sparc/kernel/pci.c
> @@ -305,7 +305,7 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm,
> /* We can't actually use the firmware value, we have
> * to read what is in the register right now. One
> * reason is that in the case of IDE interfaces the
> - * firmware can sample the value before the the IDE
> + * firmware can sample the value before the IDE
> * interface is programmed into native mode.
> */
> pci_read_config_dword(dev, PCI_CLASS_REVISION, &class);
> diff --git a/arch/sparc/mm/gup.c b/arch/sparc/mm/gup.c
> index 01ee23d..758cfa6 100644
> --- a/arch/sparc/mm/gup.c
> +++ b/arch/sparc/mm/gup.c
> @@ -190,7 +190,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
> * the pagetables from being freed on sparc.
> *
> * So long as we atomically load page table pointers versus teardown,
> - * we can follow the address down to the the page and take a ref on it.
> + * we can follow the address down to the page and take a ref on it.
> */
> local_irq_disable();
>
> diff --git a/arch/tile/include/asm/irqflags.h b/arch/tile/include/asm/irqflags.h
> index 71af574..f7f64c8 100644
> --- a/arch/tile/include/asm/irqflags.h
> +++ b/arch/tile/include/asm/irqflags.h
> @@ -116,7 +116,7 @@
> * Note that in particular, the tile timer interrupt comes and goes
> * from this set, since we have no other way to turn off the timer.
> * Likewise, INTCTRL_K is removed and re-added during device
> - * interrupts, as is the the hardwall UDN_FIREWALL interrupt.
> + * interrupts, as is the hardwall UDN_FIREWALL interrupt.
> * We use a low bit (MEM_ERROR) as our sentinel value and make sure it
> * is always claimed as an "active interrupt" so we can query that bit
> * to know our current state.
> diff --git a/arch/tile/include/gxio/trio.h b/arch/tile/include/gxio/trio.h
> index df10a66..50a3d5c 100644
> --- a/arch/tile/include/gxio/trio.h
> +++ b/arch/tile/include/gxio/trio.h
> @@ -206,7 +206,7 @@ typedef struct {
> /* Initialize a TRIO context.
> *
> * This function allocates a TRIO "service domain" and maps the MMIO
> - * registers into the the caller's VA space.
> + * registers into the caller's VA space.
> *
> * @param trio_index Which TRIO shim; Gx36 must pass 0.
> * @param context Context object to be initialized.
> diff --git a/arch/tile/kernel/single_step.c b/arch/tile/kernel/single_step.c
> index de07fa7..c554ffb 100644
> --- a/arch/tile/kernel/single_step.c
> +++ b/arch/tile/kernel/single_step.c
> @@ -277,7 +277,7 @@ P("\n");
>
> /*
> * Called after execve() has started the new image. This allows us
> - * to reset the info state. Note that the the mmap'ed memory, if there
> + * to reset the info state. Note that the mmap'ed memory, if there
> * was any, has already been unmapped by the exec.
> */
> void single_step_execve(void)
> diff --git a/arch/x86/include/asm/spinlock.h b/arch/x86/include/asm/spinlock.h
> index bf156de..59213c3 100644
> --- a/arch/x86/include/asm/spinlock.h
> +++ b/arch/x86/include/asm/spinlock.h
> @@ -72,7 +72,7 @@ static __always_inline int arch_spin_value_unlocked(arch_spinlock_t lock)
> * the queue, and the other indicating the current tail. The lock is acquired
> * by atomically noting the tail and incrementing it by one (thus adding
> * ourself to the queue and noting our position), then waiting until the head
> - * becomes equal to the the initial value of the tail.
> + * becomes equal to the initial value of the tail.
> *
> * We use an xadd covering *both* parts of the lock, to increment the tail and
> * also load the position of the head, which takes care of memory ordering
> diff --git a/arch/x86/include/asm/uv/uv_hub.h b/arch/x86/include/asm/uv/uv_hub.h
> index 2c32df9..76f6cc0 100644
> --- a/arch/x86/include/asm/uv/uv_hub.h
> +++ b/arch/x86/include/asm/uv/uv_hub.h
> @@ -522,7 +522,7 @@ static inline int uv_numa_blade_id(void)
> return uv_hub_info->numa_blade_id;
> }
>
> -/* Convert a cpu number to the the UV blade number */
> +/* Convert a cpu number to the UV blade number */
> static inline int uv_cpu_to_blade_id(int cpu)
> {
> return uv_cpu_to_blade[cpu];
> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
> index e5ca72a..458d830 100644
> --- a/arch/x86/kvm/x86.c
> +++ b/arch/x86/kvm/x86.c
> @@ -7040,7 +7040,7 @@ void kvm_arch_destroy_vm(struct kvm *kvm)
> if (current->mm == kvm->mm) {
> /*
> * Free memory regions allocated on behalf of userspace,
> - * unless the the memory map has changed due to process exit
> + * unless the memory map has changed due to process exit
> * or fd copying.
> */
> struct kvm_userspace_memory_region mem;
> diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c
> index dd74e46..d9d367e 100644
> --- a/arch/x86/mm/gup.c
> +++ b/arch/x86/mm/gup.c
> @@ -275,7 +275,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
> *
> * So long as we atomically load page table pointers versus teardown
> * (which we do on x86, with the above PAE exception), we can follow the
> - * address down to the the page and take a ref on it.
> + * address down to the page and take a ref on it.
> */
> local_irq_save(flags);
> pgdp = pgd_offset(mm, addr);
> @@ -347,7 +347,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
> *
> * So long as we atomically load page table pointers versus teardown
> * (which we do on x86, with the above PAE exception), we can follow the
> - * address down to the the page and take a ref on it.
> + * address down to the page and take a ref on it.
> */
> local_irq_disable();
> pgdp = pgd_offset(mm, addr);
> diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
> index 09f3059..0f7fd77 100644
> --- a/arch/x86/xen/setup.c
> +++ b/arch/x86/xen/setup.c
> @@ -463,7 +463,7 @@ char * __init xen_memory_setup(void)
> * - mfn_list
> * - xen_start_info
> * See comment above "struct start_info" in <xen/interface/xen.h>
> - * We tried to make the the memblock_reserve more selective so
> + * We tried to make the memblock_reserve more selective so
> * that it would be clear what region is reserved. Sadly we ran
> * in the problem wherein on a 64-bit hypervisor with a 32-bit
> * initial domain, the pt_base has the cr3 value which is not
> diff --git a/arch/xtensa/include/asm/initialize_mmu.h b/arch/xtensa/include/asm/initialize_mmu.h
> index 722553f..3c8e71a 100644
> --- a/arch/xtensa/include/asm/initialize_mmu.h
> +++ b/arch/xtensa/include/asm/initialize_mmu.h
> @@ -6,7 +6,7 @@
> * For the new V3 MMU we remap the TLB from virtual == physical
> * to the standard Linux mapping used in earlier MMU's.
> *
> - * The the MMU we also support a new configuration register that
> + * In the MMU we also support a new configuration register that
> * specifies how the S32C1I instruction operates with the cache
> * controller.
> *
> diff --git a/drivers/acpi/acpica/accommon.h b/drivers/acpi/acpica/accommon.h
> index 8a6c4a0..90fe27f 100644
> --- a/drivers/acpi/acpica/accommon.h
> +++ b/drivers/acpi/acpica/accommon.h
> @@ -47,7 +47,7 @@
> /*
> * Common set of includes for all ACPICA source files.
> * We put them here because we don't want to duplicate them
> - * in the the source code again and again.
> + * in the source code again and again.
> *
> * Note: The order of these include files is important.
> */
> diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
> index 55635ed..f6b702d 100644
> --- a/drivers/block/drbd/drbd_main.c
> +++ b/drivers/block/drbd/drbd_main.c
> @@ -2700,7 +2700,7 @@ enum drbd_ret_code conn_new_minor(struct drbd_tconn *tconn, unsigned int minor,
> }
>
> add_disk(disk);
> - kref_init(&mdev->kref); /* one ref for both idrs and the the add_disk */
> + kref_init(&mdev->kref); /* one ref for both idrs and the add_disk */
>
> /* inherit the connection state */
> mdev->state.conn = tconn->cstate;
> diff --git a/drivers/char/apm-emulation.c b/drivers/char/apm-emulation.c
> index 46118f8..6834b01 100644
> --- a/drivers/char/apm-emulation.c
> +++ b/drivers/char/apm-emulation.c
> @@ -559,7 +559,7 @@ static int apm_suspend_notifier(struct notifier_block *nb,
> wake_up_interruptible(&apm_waitqueue);
>
> /*
> - * Wait for the the suspend_acks_pending variable to drop to
> + * Wait for the suspend_acks_pending variable to drop to
> * zero, meaning everybody acked the suspend event (or the
> * process was killed.)
> *
> diff --git a/drivers/char/xilinx_hwicap/fifo_icap.c b/drivers/char/xilinx_hwicap/fifo_icap.c
> index 02225eb..619f3a3 100644
> --- a/drivers/char/xilinx_hwicap/fifo_icap.c
> +++ b/drivers/char/xilinx_hwicap/fifo_icap.c
> @@ -111,7 +111,7 @@ static inline u32 fifo_icap_fifo_read(struct hwicap_drvdata *drvdata)
> }
>
> /**
> - * fifo_icap_set_read_size - Set the the size register.
> + * fifo_icap_set_read_size - Set the size register.
> * @drvdata: a pointer to the drvdata.
> * @data: the size of the following read transaction, in words.
> **/
> diff --git a/drivers/cpuidle/driver.c b/drivers/cpuidle/driver.c
> index 3ac499d..b25ec77 100644
> --- a/drivers/cpuidle/driver.c
> +++ b/drivers/cpuidle/driver.c
> @@ -56,7 +56,7 @@ static inline void __cpuidle_unset_driver(struct cpuidle_driver *drv)
> }
>
> /**
> - * __cpuidle_set_driver - set per CPU driver variables the the given driver.
> + * __cpuidle_set_driver - set per CPU driver variables for the given driver.
> * @drv: a valid pointer to a struct cpuidle_driver
> *
> * For each CPU in the driver's cpumask, unset the registered driver per CPU
> @@ -169,7 +169,7 @@ static int __cpuidle_driver_init(struct cpuidle_driver *drv)
> /*
> * Look for the timer stop flag in the different states, so that we know
> * if the broadcast timer has to be set up. The loop is in the reverse
> - * order, because usually on of the the deeper states has this flag set.
> + * order, because usually one of the deeper states has this flag set.
> */
> for (i = drv->state_count - 1; i >= 0 ; i--) {
>
> diff --git a/drivers/crypto/picoxcell_crypto.c b/drivers/crypto/picoxcell_crypto.c
> index 888f7f4..b5668e0 100644
> --- a/drivers/crypto/picoxcell_crypto.c
> +++ b/drivers/crypto/picoxcell_crypto.c
> @@ -53,7 +53,7 @@
> #define CMD0_IRQ_THRESHOLD 1
>
> /*
> - * The timeout period (in jiffies) for a PDU. When the the number of PDUs in
> + * The timeout period (in jiffies) for a PDU. When the number of PDUs in
> * flight is greater than the STAT_IRQ_THRESHOLD or 0 the timer is disabled.
> * When there are packets in flight but lower than the threshold, we enable
> * the timer and at expiry, attempt to remove any processed packets from the
> diff --git a/drivers/crypto/ux500/hash/hash_core.c b/drivers/crypto/ux500/hash/hash_core.c
> index 1c73f4f..2f2a427 100644
> --- a/drivers/crypto/ux500/hash/hash_core.c
> +++ b/drivers/crypto/ux500/hash/hash_core.c
> @@ -435,7 +435,7 @@ static int hash_get_device_data(struct hash_ctx *ctx,
> * @keylen: The lengt of the key.
> *
> * Note! This function DOES NOT write to the NBLW registry, even though
> - * specified in the the hw design spec. Either due to incorrect info in the
> + * specified in the hw design spec. Either due to incorrect info in the
> * spec or due to a bug in the hw.
> */
> static void hash_hw_write_key(struct hash_device_data *device_data,
> diff --git a/drivers/gpio/gpio-ich.c b/drivers/gpio/gpio-ich.c
> index 814addb..ee45a3d 100644
> --- a/drivers/gpio/gpio-ich.c
> +++ b/drivers/gpio/gpio-ich.c
> @@ -399,7 +399,7 @@ static int ichx_gpio_probe(struct platform_device *pdev)
>
> /*
> * If necessary, determine the I/O address of ACPI/power management
> - * registers which are needed to read the the GPE0 register for GPI pins
> + * registers which are needed to read the GPE0 register for GPI pins
> * 0 - 15 on some chipsets.
> */
> if (!ichx_priv.desc->uses_gpe0)
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index d9e337f..2682b90 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -2101,7 +2101,7 @@ int __i915_add_request(struct intel_ring_buffer *ring,
>
> /* Whilst this request exists, batch_obj will be on the
> * active_list, and so will hold the active reference. Only when this
> - * request is retired will the the batch_obj be moved onto the
> + * request is retired will the batch_obj be moved onto the
> * inactive_list and lose its active reference. Hence we do not need
> * to explicitly hold another reference here.
> */
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 2489d0b..c292bb2 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -2134,7 +2134,7 @@ void intel_display_handle_reset(struct drm_device *dev)
> * will get its events and not get stuck.
> *
> * Also update the base address of all primary
> - * planes to the the last fb to make sure we're
> + * planes to the last fb to make sure we're
> * showing the correct fb after a reset.
> *
> * Need to make two loops over the crtcs so that we
> @@ -8895,7 +8895,7 @@ static int __intel_set_mode(struct drm_crtc *crtc,
> }
>
> /* Only after disabling all output pipelines that will be changed can we
> - * update the the output configuration. */
> + * update the output configuration. */
> intel_modeset_update_state(dev, prepare_pipes);
>
> if (dev_priv->display.modeset_global_resources)
> diff --git a/drivers/gpu/drm/radeon/atombios.h b/drivers/gpu/drm/radeon/atombios.h
> index af10f85..559002e 100644
> --- a/drivers/gpu/drm/radeon/atombios.h
> +++ b/drivers/gpu/drm/radeon/atombios.h
> @@ -2779,8 +2779,8 @@ ucMaxNBVoltageHigh: Voltage regulator dependent PWM value. High 8 bits of t
> ucMinNBVoltageHigh: Voltage regulator dependent PWM value. High 8 bits of the value for the min voltage.Set this one to 0x00 if VC without PWM or no VC at all.
>
>
> -usInterNBVoltageLow: Voltage regulator dependent PWM value. The value makes the the voltage >=Min NB voltage but <=InterNBVoltageHigh. Set this to 0x0000 if VC without PWM or no VC at all.
> -usInterNBVoltageHigh: Voltage regulator dependent PWM value. The value makes the the voltage >=InterNBVoltageLow but <=Max NB voltage.Set this to 0x0000 if VC without PWM or no VC at all.
> +usInterNBVoltageLow: Voltage regulator dependent PWM value. The value makes the voltage >=Min NB voltage but <=InterNBVoltageHigh. Set this to 0x0000 if VC without PWM or no VC at all.
> +usInterNBVoltageHigh: Voltage regulator dependent PWM value. The value makes the voltage >=InterNBVoltageLow but <=Max NB voltage.Set this to 0x0000 if VC without PWM or no VC at all.
> */
>
>
> diff --git a/drivers/gpu/drm/radeon/r300_reg.h b/drivers/gpu/drm/radeon/r300_reg.h
> index 00c0d2b..36af5f1 100644
> --- a/drivers/gpu/drm/radeon/r300_reg.h
> +++ b/drivers/gpu/drm/radeon/r300_reg.h
> @@ -353,7 +353,7 @@
> # define R300_PVS_CNTL_1_PROGRAM_START_SHIFT 0
> # define R300_PVS_CNTL_1_POS_END_SHIFT 10
> # define R300_PVS_CNTL_1_PROGRAM_END_SHIFT 20
> -/* Addresses are relative the the vertex program parameters area. */
> +/* Addresses are relative to the vertex program parameters area. */
> #define R300_VAP_PVS_CNTL_2 0x22D4
> # define R300_PVS_CNTL_2_PARAM_OFFSET_SHIFT 0
> # define R300_PVS_CNTL_2_PARAM_COUNT_SHIFT 16
> diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
> index 16cb879..b5c12df 100644
> --- a/drivers/gpu/drm/radeon/radeon_device.c
> +++ b/drivers/gpu/drm/radeon/radeon_device.c
> @@ -321,7 +321,7 @@ void radeon_doorbell_free(struct radeon_device *rdev, u32 doorbell)
>
> /*
> * radeon_wb_*()
> - * Writeback is the the method by which the the GPU updates special pages
> + * Writeback is the method by which the GPU updates special pages
> * in memory with the status of certain GPU events (fences, ring pointers,
> * etc.).
> */
> diff --git a/drivers/gpu/drm/radeon/radeon_fence.c b/drivers/gpu/drm/radeon/radeon_fence.c
> index ddb8f8e..555529a 100644
> --- a/drivers/gpu/drm/radeon/radeon_fence.c
> +++ b/drivers/gpu/drm/radeon/radeon_fence.c
> @@ -45,7 +45,7 @@
> * for GPU/CPU synchronization. When the fence is written,
> * it is expected that all buffers associated with that fence
> * are no longer in use by the associated ring on the GPU and
> - * that the the relevant GPU caches have been flushed. Whether
> + * that the relevant GPU caches have been flushed. Whether
> * we use a scratch register or memory location depends on the asic
> * and whether writeback is enabled.
> */
> diff --git a/drivers/gpu/drm/radeon/radeon_gart.c b/drivers/gpu/drm/radeon/radeon_gart.c
> index b990b1a..2c0d2fb 100644
> --- a/drivers/gpu/drm/radeon/radeon_gart.c
> +++ b/drivers/gpu/drm/radeon/radeon_gart.c
> @@ -405,7 +405,7 @@ void radeon_gart_fini(struct radeon_device *rdev)
> * (uncached system pages).
> * Each VM has an ID associated with it and there is a page table
> * associated with each VMID. When execting a command buffer,
> - * the kernel tells the the ring what VMID to use for that command
> + * the kernel tells the ring what VMID to use for that command
> * buffer. VMIDs are allocated dynamically as commands are submitted.
> * The userspace drivers maintain their own address space and the kernel
> * sets up their pages tables accordingly when they submit their
> diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
> index 6de6c98..423f156 100644
> --- a/drivers/hv/channel.c
> +++ b/drivers/hv/channel.c
> @@ -586,7 +586,7 @@ EXPORT_SYMBOL_GPL(vmbus_close);
> * vmbus_sendpacket() - Send the specified buffer on the given channel
> * @channel: Pointer to vmbus_channel structure.
> * @buffer: Pointer to the buffer you want to receive the data into.
> - * @bufferlen: Maximum size of what the the buffer will hold
> + * @bufferlen: Maximum size of what the buffer will hold
> * @requestid: Identifier of the request
> * @type: Type of packet that is being send e.g. negotiate, time
> * packet etc.
> @@ -761,7 +761,7 @@ EXPORT_SYMBOL_GPL(vmbus_sendpacket_multipagebuffer);
> * vmbus_recvpacket() - Retrieve the user packet on the specified channel
> * @channel: Pointer to vmbus_channel structure.
> * @buffer: Pointer to the buffer you want to receive the data into.
> - * @bufferlen: Maximum size of what the the buffer will hold
> + * @bufferlen: Maximum size of what the buffer will hold
> * @buffer_actual_len: The actual size of the data after it was received
> * @requestid: Identifier of the request
> *
> diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c
> index f9fe46f..2e81686 100644
> --- a/drivers/hv/vmbus_drv.c
> +++ b/drivers/hv/vmbus_drv.c
> @@ -714,7 +714,7 @@ void vmbus_device_unregister(struct hv_device *device_obj)
>
>
> /*
> - * VMBUS is an acpi enumerated device. Get the the IRQ information
> + * VMBUS is an acpi enumerated device. Get the IRQ information
> * from DSDT.
> */
>
> diff --git a/drivers/hwmon/pmbus/ucd9200.c b/drivers/hwmon/pmbus/ucd9200.c
> index 033d6ac..d41d7e3 100644
> --- a/drivers/hwmon/pmbus/ucd9200.c
> +++ b/drivers/hwmon/pmbus/ucd9200.c
> @@ -117,7 +117,7 @@ static int ucd9200_probe(struct i2c_client *client,
> * This only affects the READ_IOUT and READ_TEMPERATURE2 registers.
> * READ_IOUT will return the sum of currents of all phases of a rail,
> * and READ_TEMPERATURE2 will return the maximum temperature detected
> - * for the the phases of the rail.
> + * for the phases of the rail.
> */
> for (i = 0; i < info->pages; i++) {
> /*
> diff --git a/drivers/infiniband/hw/ipath/ipath_common.h b/drivers/infiniband/hw/ipath/ipath_common.h
> index 28cfe97..231b545 100644
> --- a/drivers/infiniband/hw/ipath/ipath_common.h
> +++ b/drivers/infiniband/hw/ipath/ipath_common.h
> @@ -87,7 +87,7 @@
> * These 3 values (SDR and DDR may be ORed for auto-speed
> * negotiation) are used for the 3rd argument to path_f_set_ib_cfg
> * with cmd IPATH_IB_CFG_SPD_ENB, by direct calls or via sysfs. They
> - * are also the the possible values for ipath_link_speed_enabled and active
> + * are also the possible values for ipath_link_speed_enabled and active
> * The values were chosen to match values used within the IB spec.
> */
> #define IPATH_IB_SDR 1
> diff --git a/drivers/infiniband/hw/qib/qib.h b/drivers/infiniband/hw/qib/qib.h
> index 1946101..1adecf0 100644
> --- a/drivers/infiniband/hw/qib/qib.h
> +++ b/drivers/infiniband/hw/qib/qib.h
> @@ -333,7 +333,7 @@ struct qib_verbs_txreq {
> * These 7 values (SDR, DDR, and QDR may be ORed for auto-speed
> * negotiation) are used for the 3rd argument to path_f_set_ib_cfg
> * with cmd QIB_IB_CFG_SPD_ENB, by direct calls or via sysfs. They
> - * are also the the possible values for qib_link_speed_enabled and active
> + * are also the possible values for qib_link_speed_enabled and active
> * The values were chosen to match values used within the IB spec.
> */
> #define QIB_IB_SDR 1
> diff --git a/drivers/input/mouse/gpio_mouse.c b/drivers/input/mouse/gpio_mouse.c
> index 6b44413..59f820e6 100644
> --- a/drivers/input/mouse/gpio_mouse.c
> +++ b/drivers/input/mouse/gpio_mouse.c
> @@ -18,7 +18,7 @@
>
> /*
> * Timer function which is run every scan_ms ms when the device is opened.
> - * The dev input variable is set to the the input_dev pointer.
> + * The dev input variable is set to the input_dev pointer.
> */
> static void gpio_mouse_scan(struct input_polled_dev *dev)
> {
> diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
> index 59aa240..9842375 100644
> --- a/drivers/input/touchscreen/atmel_mxt_ts.c
> +++ b/drivers/input/touchscreen/atmel_mxt_ts.c
> @@ -1017,7 +1017,7 @@ static int mxt_load_fw(struct device *dev, const char *fn)
>
> frame_size = ((*(fw->data + pos) << 8) | *(fw->data + pos + 1));
>
> - /* We should add 2 at frame size as the the firmware data is not
> + /* We should add 2 at frame size as the firmware data is not
> * included the CRC bytes.
> */
> frame_size += 2;
> diff --git a/drivers/isdn/hardware/mISDN/hfcsusb.c b/drivers/isdn/hardware/mISDN/hfcsusb.c
> index 114f3bc..24c15bf 100644
> --- a/drivers/isdn/hardware/mISDN/hfcsusb.c
> +++ b/drivers/isdn/hardware/mISDN/hfcsusb.c
> @@ -1566,7 +1566,7 @@ reset_hfcsusb(struct hfcsusb *hw)
> write_reg(hw, HFCUSB_USB_SIZE, (hw->packet_size / 8) |
> ((hw->packet_size / 8) << 4));
>
> - /* set USB_SIZE_I to match the the wMaxPacketSize for ISO transfers */
> + /* set USB_SIZE_I to match the wMaxPacketSize for ISO transfers */
> write_reg(hw, HFCUSB_USB_SIZE_I, hw->iso_packet_size);
>
> /* enable PCM/GCI master mode */
> diff --git a/drivers/lguest/core.c b/drivers/lguest/core.c
> index 0bf1e4e..def8b35 100644
> --- a/drivers/lguest/core.c
> +++ b/drivers/lguest/core.c
> @@ -205,7 +205,7 @@ void __lgwrite(struct lg_cpu *cpu, unsigned long addr, const void *b,
> /*:*/
>
> /*H:030
> - * Let's jump straight to the the main loop which runs the Guest.
> + * Let's jump straight to the main loop which runs the Guest.
> * Remember, this is called by the Launcher reading /dev/lguest, and we keep
> * going around and around until something interesting happens.
> */
> diff --git a/drivers/media/dvb-frontends/tda1002x.h b/drivers/media/dvb-frontends/tda1002x.h
> index e404b6e..ce0fb85 100644
> --- a/drivers/media/dvb-frontends/tda1002x.h
> +++ b/drivers/media/dvb-frontends/tda1002x.h
> @@ -1,6 +1,6 @@
> /*
> TDA10021/TDA10023 - Single Chip Cable Channel Receiver driver module
> - used on the the Siemens DVB-C cards
> + used on the Siemens DVB-C cards
>
> Copyright (C) 1999 Convergence Integrated Media GmbH <ralph@...vergence.de>
> Copyright (C) 2004 Markus Schulz <msc@...zsystem.de>
> diff --git a/drivers/media/dvb-frontends/tda10048.c b/drivers/media/dvb-frontends/tda10048.c
> index 71fb632..17534ff 100644
> --- a/drivers/media/dvb-frontends/tda10048.c
> +++ b/drivers/media/dvb-frontends/tda10048.c
> @@ -1134,7 +1134,7 @@ struct dvb_frontend *tda10048_attach(const struct tda10048_config *config,
> state->pll_pfactor = 0;
> }
>
> - /* Establish any defaults the the user didn't pass */
> + /* Establish any defaults the user didn't pass */
> tda10048_establish_defaults(&state->frontend);
>
> /* Set the xtal and freq defaults */
> diff --git a/drivers/media/pci/cx88/cx88-dsp.c b/drivers/media/pci/cx88/cx88-dsp.c
> index a990726..1f8820f 100644
> --- a/drivers/media/pci/cx88/cx88-dsp.c
> +++ b/drivers/media/pci/cx88/cx88-dsp.c
> @@ -37,7 +37,7 @@
> (compat_remainder(carrier + tone, srate)) / srate * 2 * INT_PI))
>
> /* We calculate the baseband frequencies of the carrier and the pilot tones
> - * based on the the sampling rate of the audio rds fifo. */
> + * based on the sampling rate of the audio rds fifo. */
>
> #define FREQ_A2_CARRIER baseband_freq(54687.5, 2689.36, 0.0)
> #define FREQ_A2_DUAL baseband_freq(54687.5, 2689.36, 274.1)
> diff --git a/drivers/media/pci/ivtv/ivtv-yuv.c b/drivers/media/pci/ivtv/ivtv-yuv.c
> index 2ad65eb..00e0818 100644
> --- a/drivers/media/pci/ivtv/ivtv-yuv.c
> +++ b/drivers/media/pci/ivtv/ivtv-yuv.c
> @@ -555,7 +555,7 @@ static void ivtv_yuv_handle_vertical(struct ivtv *itv, struct yuv_frame_info *f)
> reg_2964 = (reg_2964 << 16) + reg_2964 + (reg_2964 * 46 / 94);
>
> /* Okay, we've wasted time working out the correct value,
> - but if we use it, it fouls the the window alignment.
> + but if we use it, it fouls the window alignment.
> Fudge it to what we want... */
> reg_2964 = 0x00010001 + ((reg_2964 & 0x0000FFFF) - (reg_2964 >> 16));
> reg_2968 = 0x00010001 + ((reg_2968 & 0x0000FFFF) - (reg_2968 >> 16));
> diff --git a/drivers/media/pci/saa7164/saa7164-core.c b/drivers/media/pci/saa7164/saa7164-core.c
> index d37ee37..328956a 100644
> --- a/drivers/media/pci/saa7164/saa7164-core.c
> +++ b/drivers/media/pci/saa7164/saa7164-core.c
> @@ -636,7 +636,7 @@ static irqreturn_t saa7164_irq(int irq, void *dev_id)
> }
>
> /* Check that the hardware is accessible. If the status bytes are
> - * 0xFF then the device is not accessible, the the IRQ belongs
> + * 0xFF then the device is not accessible, the IRQ belongs
> * to another driver.
> * 4 x u32 interrupt registers.
> */
> diff --git a/drivers/media/platform/davinci/vpbe.c b/drivers/media/platform/davinci/vpbe.c
> index 33b9660..6ea16e2 100644
> --- a/drivers/media/platform/davinci/vpbe.c
> +++ b/drivers/media/platform/davinci/vpbe.c
> @@ -316,7 +316,7 @@ static int vpbe_set_default_output(struct vpbe_device *vpbe_dev)
> * vpbe_get_output - Get output
> * @vpbe_dev - vpbe device ptr
> *
> - * return current vpbe output to the the index
> + * return current vpbe output to the index
> */
> static unsigned int vpbe_get_output(struct vpbe_device *vpbe_dev)
> {
> diff --git a/drivers/media/platform/exynos4-is/fimc-capture.c b/drivers/media/platform/exynos4-is/fimc-capture.c
> index fb27ff7..0a9140b 100644
> --- a/drivers/media/platform/exynos4-is/fimc-capture.c
> +++ b/drivers/media/platform/exynos4-is/fimc-capture.c
> @@ -505,7 +505,7 @@ static int fimc_capture_open(struct file *file)
>
> if (ret == 0 && vc->user_subdev_api && vc->inh_sensor_ctrls) {
> /*
> - * Recreate controls of the the video node to drop
> + * Recreate controls of the video node to drop
> * any controls inherited from the sensor subdev.
> */
> fimc_ctrls_delete(vc->ctx);
> diff --git a/drivers/media/platform/omap3isp/isp.c b/drivers/media/platform/omap3isp/isp.c
> index df3a0ec..cdba0d5 100644
> --- a/drivers/media/platform/omap3isp/isp.c
> +++ b/drivers/media/platform/omap3isp/isp.c
> @@ -1671,7 +1671,7 @@ void omap3isp_print_status(struct isp_device *isp)
> * To solve this problem power management support is split into prepare/complete
> * and suspend/resume operations. The pipelines are stopped in prepare() and the
> * ISP clocks get disabled in suspend(). Similarly, the clocks are reenabled in
> - * resume(), and the the pipelines are restarted in complete().
> + * resume(), and the pipelines are restarted in complete().
> *
> * TODO: PM dependencies between the ISP and sensors are not modeled explicitly
> * yet.
> diff --git a/drivers/media/rc/iguanair.c b/drivers/media/rc/iguanair.c
> index 19632b1..d01f106 100644
> --- a/drivers/media/rc/iguanair.c
> +++ b/drivers/media/rc/iguanair.c
> @@ -308,7 +308,7 @@ static int iguanair_set_tx_carrier(struct rc_dev *dev, uint32_t carrier)
> cycles = DIV_ROUND_CLOSEST(24000000, carrier * 2) -
> ir->cycle_overhead;
>
> - /* make up the the remainer of 4-cycle blocks */
> + /* make up the remainer of 4-cycle blocks */
> switch (cycles & 3) {
> case 0:
> sevens = 0;
> diff --git a/drivers/media/usb/dvb-usb/friio-fe.c b/drivers/media/usb/dvb-usb/friio-fe.c
> index d56f927..b5d2e80 100644
> --- a/drivers/media/usb/dvb-usb/friio-fe.c
> +++ b/drivers/media/usb/dvb-usb/friio-fe.c
> @@ -2,7 +2,7 @@
> *
> * Copyright (C) 2009 Akihiro Tsukada <tskd2@...oo.co.jp>
> *
> - * This module is based off the the gl861 and vp702x modules.
> + * This module is based off the gl861 and vp702x modules.
> *
> * This program is free software; you can redistribute it and/or modify it
> * under the terms of the GNU General Public License as published by the Free
> diff --git a/drivers/media/usb/dvb-usb/friio.c b/drivers/media/usb/dvb-usb/friio.c
> index 474a17e..4c7f8fe 100644
> --- a/drivers/media/usb/dvb-usb/friio.c
> +++ b/drivers/media/usb/dvb-usb/friio.c
> @@ -2,7 +2,7 @@
> *
> * Copyright (C) 2009 Akihiro Tsukada <tskd2@...oo.co.jp>
> *
> - * This module is based off the the gl861 and vp702x modules.
> + * This module is based off the gl861 and vp702x modules.
> *
> * This program is free software; you can redistribute it and/or modify it
> * under the terms of the GNU General Public License as published by the Free
> diff --git a/drivers/media/usb/dvb-usb/friio.h b/drivers/media/usb/dvb-usb/friio.h
> index 0f461ca..82d19dc 100644
> --- a/drivers/media/usb/dvb-usb/friio.h
> +++ b/drivers/media/usb/dvb-usb/friio.h
> @@ -2,7 +2,7 @@
> *
> * Copyright (C) 2009 Akihiro Tsukada <tskd2@...oo.co.jp>
> *
> - * This module is based off the the gl861 and vp702x modules.
> + * This module is based off the gl861 and vp702x modules.
> *
> * This program is free software; you can redistribute it and/or modify it
> * under the terms of the GNU General Public License as published by the Free
> diff --git a/drivers/media/usb/gspca/finepix.c b/drivers/media/usb/gspca/finepix.c
> index 52bdb56..414c1b7 100644
> --- a/drivers/media/usb/gspca/finepix.c
> +++ b/drivers/media/usb/gspca/finepix.c
> @@ -143,7 +143,7 @@ again:
> * for, then it's the end of the
> * frame. Sometimes the jpeg is not complete,
> * but there's nothing we can do. We also end
> - * here if the the jpeg ends right at the end
> + * here if the jpeg ends right at the end
> * of the frame. */
> gspca_frame_add(gspca_dev, LAST_PACKET,
> data, len);
> diff --git a/drivers/media/usb/tm6000/tm6000-cards.c b/drivers/media/usb/tm6000/tm6000-cards.c
> index 1ccaadd..e43f862 100644
> --- a/drivers/media/usb/tm6000/tm6000-cards.c
> +++ b/drivers/media/usb/tm6000/tm6000-cards.c
> @@ -1313,7 +1313,7 @@ static int tm6000_usb_probe(struct usb_interface *interface,
> le16_to_cpu(dev->udev->descriptor.idProduct),
> interface->altsetting->desc.bInterfaceNumber);
>
> -/* check if the the device has the iso in endpoint at the correct place */
> +/* check if the device has the iso in endpoint at the correct place */
> if (!dev->isoc_in.endp) {
> printk(KERN_ERR "tm6000: probing error: no IN ISOC endpoint!\n");
> rc = -ENODEV;
> diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c
> index 3394c34..6d34f08 100644
> --- a/drivers/media/usb/uvc/uvc_video.c
> +++ b/drivers/media/usb/uvc/uvc_video.c
> @@ -991,7 +991,7 @@ static int uvc_video_decode_start(struct uvc_streaming *stream,
> }
>
> /* Synchronize to the input stream by waiting for the FID bit to be
> - * toggled when the the buffer state is not UVC_BUF_STATE_ACTIVE.
> + * toggled when the buffer state is not UVC_BUF_STATE_ACTIVE.
> * stream->last_fid is initialized to -1, so the first isochronous
> * frame will always be in sync.
> *
> diff --git a/drivers/memory/emif.c b/drivers/memory/emif.c
> index 04644e7..303b322 100644
> --- a/drivers/memory/emif.c
> +++ b/drivers/memory/emif.c
> @@ -373,7 +373,7 @@ static const struct lpddr2_addressing *get_addressing_table(
> }
>
> /*
> - * Find the the right timing table from the array of timing
> + * Find the right timing table from the array of timing
> * tables of the device using DDR clock frequency
> */
> static const struct lpddr2_timings *get_timings_table(struct emif_data *emif,
> diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c
> index 5653e50..eb9640c 100644
> --- a/drivers/message/fusion/mptspi.c
> +++ b/drivers/message/fusion/mptspi.c
> @@ -101,7 +101,7 @@ static u8 mptspiInternalCtx = MPT_MAX_PROTOCOL_DRIVERS; /* Used only for interna
> * @target: per target private data
> * @sdev: SCSI device
> *
> - * Update the target negotiation parameters based on the the Inquiry
> + * Update the target negotiation parameters based on the Inquiry
> * data, adapter capabilities, and NVRAM settings.
> **/
> static void
> diff --git a/drivers/mfd/db8500-prcmu.c b/drivers/mfd/db8500-prcmu.c
> index 53f371d..92cd9d4 100644
> --- a/drivers/mfd/db8500-prcmu.c
> +++ b/drivers/mfd/db8500-prcmu.c
> @@ -898,7 +898,7 @@ void db8500_prcmu_get_abb_event_buffer(void __iomem **buf)
> * @opp: The new ARM operating point to which transition is to be made
> * Returns: 0 on success, non-zero on failure
> *
> - * This function sets the the operating point of the ARM.
> + * This function sets the operating point of the ARM.
> */
> int db8500_prcmu_set_arm_opp(u8 opp)
> {
> diff --git a/drivers/misc/sgi-gru/grukservices.c b/drivers/misc/sgi-gru/grukservices.c
> index 913de07..6482a9c 100644
> --- a/drivers/misc/sgi-gru/grukservices.c
> +++ b/drivers/misc/sgi-gru/grukservices.c
> @@ -48,7 +48,7 @@
> * kernel/user requirements.
> *
> * Blade percpu resources reserved for kernel use. These resources are
> - * reserved whenever the the kernel context for the blade is loaded. Note
> + * reserved whenever the kernel context for the blade is loaded. Note
> * that the kernel context is not guaranteed to be always available. It is
> * loaded on demand & can be stolen by a user if the user demand exceeds the
> * kernel demand. The kernel can always reload the kernel context but
> diff --git a/drivers/misc/sgi-xp/xpc_uv.c b/drivers/misc/sgi-xp/xpc_uv.c
> index b9e2000..a90b408 100644
> --- a/drivers/misc/sgi-xp/xpc_uv.c
> +++ b/drivers/misc/sgi-xp/xpc_uv.c
> @@ -1594,7 +1594,7 @@ out_2:
> * by xpc_notify_senders_of_disconnect_uv(), and to also get an
> * error returned here will confuse them. Additionally, since
> * in this case the channel is being disconnected we don't need
> - * to put the the msg_slot back on the free list.
> + * to put the msg_slot back on the free list.
> */
> if (cmpxchg(&msg_slot->func, func, NULL) != func) {
> ret = xpSuccess;
> diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
> index 59ab069..c7e69c0 100644
> --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
> +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
> @@ -965,7 +965,7 @@ static uint8_t gpmi_read_byte(struct mtd_info *mtd)
> /*
> * Handles block mark swapping.
> * It can be called in swapping the block mark, or swapping it back,
> - * because the the operations are the same.
> + * because the operations are the same.
> */
> static void block_mark_swapping(struct gpmi_nand_data *this,
> void *payload, void *auxiliary)
> diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h
> index 8ea6297..86cabd9 100644
> --- a/drivers/mtd/ubi/ubi.h
> +++ b/drivers/mtd/ubi/ubi.h
> @@ -253,7 +253,7 @@ struct ubi_fm_pool {
>
> /**
> * struct ubi_volume - UBI volume description data structure.
> - * @dev: device object to make use of the the Linux device model
> + * @dev: device object to make use of the Linux device model
> * @cdev: character device object to create character device
> * @ubi: reference to the UBI device description object
> * @vol_id: volume ID
> @@ -381,7 +381,7 @@ struct ubi_debug_info {
>
> /**
> * struct ubi_device - UBI device description structure
> - * @dev: UBI device object to use the the Linux device model
> + * @dev: UBI device object to use for the Linux device model
> * @cdev: character device object to create character device
> * @ubi_num: UBI device number
> * @ubi_name: UBI device name
> diff --git a/drivers/mtd/ubi/wl.c b/drivers/mtd/ubi/wl.c
> index 5df49d3..3f28964 100644
> --- a/drivers/mtd/ubi/wl.c
> +++ b/drivers/mtd/ubi/wl.c
> @@ -726,7 +726,7 @@ static int prot_queue_del(struct ubi_device *ubi, int pnum)
> /**
> * sync_erase - synchronously erase a physical eraseblock.
> * @ubi: UBI device description object
> - * @e: the the physical eraseblock to erase
> + * @e: the physical eraseblock to erase
> * @torture: if the physical eraseblock has to be tortured
> *
> * This function returns zero in case of success and a negative error code in
> diff --git a/drivers/net/ethernet/calxeda/xgmac.c b/drivers/net/ethernet/calxeda/xgmac.c
> index 78d6d6b..9fe8a88 100644
> --- a/drivers/net/ethernet/calxeda/xgmac.c
> +++ b/drivers/net/ethernet/calxeda/xgmac.c
> @@ -1235,7 +1235,7 @@ static int xgmac_rx(struct xgmac_priv *priv, int limit)
> * @budget : maximum number of packets that the current CPU can receive from
> * all interfaces.
> * Description :
> - * This function implements the the reception process.
> + * This function implements the reception process.
> * Also it runs the TX completion thread
> */
> static int xgmac_poll(struct napi_struct *napi, int budget)
> diff --git a/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c b/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
> index 4cbb2f9..065da74 100644
> --- a/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
> +++ b/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
> @@ -2467,7 +2467,7 @@ int t4_fwaddrspace_write(struct adapter *adap, unsigned int mbox,
> * @data: len bytes to hold the data read
> * @len: amount of data to read from window. Must be <=
> * MEMWIN0_APERATURE after adjusting for 16B for T4 and
> - * 128B for T5 alignment requirements of the the memory window.
> + * 128B for T5 alignment requirements of the memory window.
> *
> * Read len bytes of data from MC starting at @addr.
> */
> diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
> index 3224d28..a6cd241 100644
> --- a/drivers/net/ethernet/emulex/benet/be_main.c
> +++ b/drivers/net/ethernet/emulex/benet/be_main.c
> @@ -2128,7 +2128,7 @@ static irqreturn_t be_intx(int irq, void *dev)
> }
> be_eq_notify(adapter, eqo->q.id, false, true, num_evts);
>
> - /* Return IRQ_HANDLED only for the the first spurious intr
> + /* Return IRQ_HANDLED only for the first spurious intr
> * after a valid intr to stop the kernel from branding
> * this irq as a bad one!
> */
> diff --git a/drivers/net/ethernet/intel/e1000/e1000_hw.c b/drivers/net/ethernet/intel/e1000/e1000_hw.c
> index 2879b96..0c988a2 100644
> --- a/drivers/net/ethernet/intel/e1000/e1000_hw.c
> +++ b/drivers/net/ethernet/intel/e1000/e1000_hw.c
> @@ -4068,7 +4068,7 @@ static s32 e1000_do_read_eeprom(struct e1000_hw *hw, u16 offset, u16 words,
> * @hw: Struct containing variables accessed by shared code
> *
> * Reads the first 64 16 bit words of the EEPROM and sums the values read.
> - * If the the sum of the 64 16 bit words is 0xBABA, the EEPROM's checksum is
> + * If the sum of the 64 16 bit words is 0xBABA, the EEPROM's checksum is
> * valid.
> */
> s32 e1000_validate_eeprom_checksum(struct e1000_hw *hw)
> diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c
> index af08188..8c618fc 100644
> --- a/drivers/net/ethernet/intel/e1000e/ich8lan.c
> +++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c
> @@ -3533,7 +3533,7 @@ static s32 e1000_id_led_init_pchlan(struct e1000_hw *hw)
> * @hw: pointer to the HW structure
> *
> * ICH8 use the PCI Express bus, but does not contain a PCI Express Capability
> - * register, so the the bus width is hard coded.
> + * register, so the bus width is hard coded.
> **/
> static s32 e1000_get_bus_info_ich8lan(struct e1000_hw *hw)
> {
> diff --git a/drivers/net/ethernet/intel/igb/e1000_82575.c b/drivers/net/ethernet/intel/igb/e1000_82575.c
> index 79b5835..f0b546a 100644
> --- a/drivers/net/ethernet/intel/igb/e1000_82575.c
> +++ b/drivers/net/ethernet/intel/igb/e1000_82575.c
> @@ -2079,7 +2079,7 @@ out:
> * igb_reset_mdicnfg_82580 - Reset MDICNFG destination and com_mdio bits
> * @hw: pointer to the HW structure
> *
> - * This resets the the MDICNFG.Destination and MDICNFG.Com_MDIO bits based on
> + * This resets the MDICNFG.Destination and MDICNFG.Com_MDIO bits based on
> * the values found in the EEPROM. This addresses an issue in which these
> * bits are not restored from EEPROM after reset.
> **/
> diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> index 7aba452..1274e65 100644
> --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
> @@ -224,7 +224,7 @@ static void ixgbe_check_minimum_link(struct ixgbe_adapter *adapter,
> enum pcie_link_width width = PCIE_LNK_WIDTH_UNKNOWN;
> struct pci_dev *pdev;
>
> - /* determine whether to use the the parent device
> + /* determine whether to use the parent device
> */
> if (ixgbe_pcie_from_parent(&adapter->hw))
> pdev = adapter->pdev->bus->parent->self;
> diff --git a/drivers/net/ethernet/neterion/s2io.c b/drivers/net/ethernet/neterion/s2io.c
> index 51b0094..bc93418 100644
> --- a/drivers/net/ethernet/neterion/s2io.c
> +++ b/drivers/net/ethernet/neterion/s2io.c
> @@ -2167,7 +2167,7 @@ static int verify_xena_quiescence(struct s2io_nic *sp)
>
> /*
> * In PCI 33 mode, the P_PLL is not used, and therefore,
> - * the the P_PLL_LOCK bit in the adapter_status register will
> + * the P_PLL_LOCK bit in the adapter_status register will
> * not be asserted.
> */
> if (!(val64 & ADAPTER_STATUS_P_PLL_LOCK) &&
> diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> index 64b4639..39fe59d 100644
> --- a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> @@ -83,7 +83,7 @@ static int axienet_mdio_read(struct mii_bus *bus, int phy_id, int reg)
> * returns: 0 on success, -ETIMEDOUT on a timeout
> *
> * Writes the value to the requested register by first writing the value
> - * into MWD register. The the MCR register is then appropriately setup
> + * into MWD register. The MCR register is then appropriately setup
> * to finish the write operation.
> */
> static int axienet_mdio_write(struct mii_bus *bus, int phy_id, int reg,
> diff --git a/drivers/net/wimax/i2400m/i2400m.h b/drivers/net/wimax/i2400m/i2400m.h
> index 79c6505..d773204 100644
> --- a/drivers/net/wimax/i2400m/i2400m.h
> +++ b/drivers/net/wimax/i2400m/i2400m.h
> @@ -250,14 +250,14 @@ struct i2400m_barker_db;
> *
> * @bus_setup: [optional fill] Function called by the bus-generic code
> * [i2400m_setup()] to setup the basic bus-specific communications
> - * to the the device needed to load firmware. See LIFE CYCLE above.
> + * to the device needed to load firmware. See LIFE CYCLE above.
> *
> * NOTE: Doesn't need to upload the firmware, as that is taken
> * care of by the bus-generic code.
> *
> * @bus_release: [optional fill] Function called by the bus-generic
> * code [i2400m_release()] to shutdown the basic bus-specific
> - * communications to the the device needed to load firmware. See
> + * communications to the device needed to load firmware. See
> * LIFE CYCLE above.
> *
> * This function does not need to reset the device, just tear down
> diff --git a/drivers/net/wimax/i2400m/rx.c b/drivers/net/wimax/i2400m/rx.c
> index 0b60295..4466ee7 100644
> --- a/drivers/net/wimax/i2400m/rx.c
> +++ b/drivers/net/wimax/i2400m/rx.c
> @@ -693,7 +693,7 @@ void __i2400m_roq_queue(struct i2400m *i2400m, struct i2400m_roq *roq,
> * right spot where to insert the packet; we know the queue is
> * not empty, so we are not the first ones; we also know we
> * are not going to be the last ones. The list is sorted, so
> - * we have to insert before the the first guy with an nsn_itr
> + * we have to insert before the first guy with an nsn_itr
> * greater that our nsn. */
> skb_queue_walk(&roq->queue, skb_itr) {
> roq_data_itr = (struct i2400m_roq_data *) &skb_itr->cb;
> diff --git a/drivers/net/wimax/i2400m/tx.c b/drivers/net/wimax/i2400m/tx.c
> index f20886a..1f7b2b9 100644
> --- a/drivers/net/wimax/i2400m/tx.c
> +++ b/drivers/net/wimax/i2400m/tx.c
> @@ -233,7 +233,7 @@
> * i2400m_tx_skip_tail() Marks unusable FIFO tail space
> * i2400m->bus_tx_kick()
> *
> - * Now i2400m->bus_tx_kick() is the the bus-specific driver backend
> + * Now i2400m->bus_tx_kick() is the bus-specific driver backend
> * implementation; that would do:
> *
> * i2400m->bus_tx_kick()
> diff --git a/drivers/net/wireless/ath/ath10k/rx_desc.h b/drivers/net/wireless/ath/ath10k/rx_desc.h
> index bfec6c8..e43a5a8 100644
> --- a/drivers/net/wireless/ath/ath10k/rx_desc.h
> +++ b/drivers/net/wireless/ath/ath10k/rx_desc.h
> @@ -77,7 +77,7 @@ struct rx_attention {
> * first_msdu is set.
> *
> * peer_idx_invalid
> - * Indicates no matching entries within the the max search
> + * Indicates no matching entries within the max search
> * count. Only set when first_msdu is set.
> *
> * peer_idx_timeout
> diff --git a/drivers/net/wireless/ath/ath6kl/hif.h b/drivers/net/wireless/ath/ath6kl/hif.h
> index 61f6b21..cb15404 100644
> --- a/drivers/net/wireless/ath/ath6kl/hif.h
> +++ b/drivers/net/wireless/ath/ath6kl/hif.h
> @@ -98,7 +98,7 @@ struct bus_request {
> * emode - This indicates the whether the command is to be executed in a
> * blocking or non-blocking fashion (HIF_SYNCHRONOUS/
> * HIF_ASYNCHRONOUS). The read/write data paths in HTC have been
> - * implemented using the asynchronous mode allowing the the bus
> + * implemented using the asynchronous mode allowing the bus
> * driver to indicate the completion of operation through the
> * registered callback routine. The requirement primarily comes
> * from the contexts these operations get called from (a driver's
> diff --git a/drivers/net/wireless/ath/ath6kl/sdio.c b/drivers/net/wireless/ath/ath6kl/sdio.c
> index 7126bdd..f382798 100644
> --- a/drivers/net/wireless/ath/ath6kl/sdio.c
> +++ b/drivers/net/wireless/ath/ath6kl/sdio.c
> @@ -1176,7 +1176,7 @@ static int ath6kl_sdio_bmi_read(struct ath6kl *ar, u8 *buf, u32 len)
> * Wait for first 4 bytes to be in FIFO
> * If CONSERVATIVE_BMI_READ is enabled, also wait for
> * a BMI command credit, which indicates that the ENTIRE
> - * response is available in the the FIFO
> + * response is available in the FIFO
> *
> * CASE 3: length > 128
> * Wait for the first 4 bytes to be in FIFO
> diff --git a/drivers/net/wireless/ath/ath9k/ar9002_phy.c b/drivers/net/wireless/ath/ath9k/ar9002_phy.c
> index 1fc1fa9..700e308 100644
> --- a/drivers/net/wireless/ath/ath9k/ar9002_phy.c
> +++ b/drivers/net/wireless/ath/ath9k/ar9002_phy.c
> @@ -638,7 +638,7 @@ static void ar9002_hw_spectral_scan_config(struct ath_hw *ah,
> REG_CLR_BIT(ah, AR_PHY_SPECTRAL_SCAN,
> AR_PHY_SPECTRAL_SCAN_SHORT_REPEAT);
>
> - /* on AR92xx, the highest bit of count will make the the chip send
> + /* on AR92xx, the highest bit of count will make the chip send
> * spectral samples endlessly. Check if this really was intended,
> * and fix otherwise.
> */
> diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.c b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> index e897648..c973a79 100644
> --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
> @@ -1615,7 +1615,7 @@ static void ar9003_hw_spectral_scan_config(struct ath_hw *ah,
> REG_SET_BIT(ah, AR_PHY_RADAR_0, AR_PHY_RADAR_0_FFT_ENA);
> REG_SET_BIT(ah, AR_PHY_SPECTRAL_SCAN, AR_PHY_SPECTRAL_SCAN_ENABLE);
>
> - /* on AR93xx and newer, count = 0 will make the the chip send
> + /* on AR93xx and newer, count = 0 will make the chip send
> * spectral samples endlessly. Check if this really was intended,
> * and fix otherwise.
> */
> diff --git a/drivers/net/wireless/brcm80211/brcmsmac/main.c b/drivers/net/wireless/brcm80211/brcmsmac/main.c
> index 4608e0e..e34b184 100644
> --- a/drivers/net/wireless/brcm80211/brcmsmac/main.c
> +++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c
> @@ -3819,7 +3819,7 @@ static void brcms_b_set_shortslot(struct brcms_hardware *wlc_hw, bool shortslot)
> }
>
> /*
> - * Suspend the the MAC and update the slot timing
> + * Suspend the MAC and update the slot timing
> * for standard 11b/g (20us slots) or shortslot 11g (9us slots).
> */
> static void brcms_c_switch_shortslot(struct brcms_c_info *wlc, bool shortslot)
> diff --git a/drivers/net/wireless/iwlwifi/mvm/fw-api-tx.h b/drivers/net/wireless/iwlwifi/mvm/fw-api-tx.h
> index d606197..c03e73f 100644
> --- a/drivers/net/wireless/iwlwifi/mvm/fw-api-tx.h
> +++ b/drivers/net/wireless/iwlwifi/mvm/fw-api-tx.h
> @@ -194,7 +194,7 @@ enum iwl_tx_flags {
> * cleared. Combination of RATE_MCS_*
> * @sta_id: index of destination station in FW station table
> * @sec_ctl: security control, TX_CMD_SEC_*
> - * @initial_rate_index: index into the the rate table for initial TX attempt.
> + * @initial_rate_index: index into the rate table for initial TX attempt.
> * Applied if TX_CMD_FLG_STA_RATE_MSK is set, normally 0 for data frames.
> * @key: security key
> * @next_frame_flags: TX_CMD_SEC_* and TX_CMD_NEXT_FRAME_*
> @@ -545,7 +545,7 @@ struct iwl_beacon_notif {
>
> /**
> * enum iwl_dump_control - dump (flush) control flags
> - * @DUMP_TX_FIFO_FLUSH: Dump MSDUs until the the FIFO is empty
> + * @DUMP_TX_FIFO_FLUSH: Dump MSDUs until the FIFO is empty
> * and the TFD queues are empty.
> */
> enum iwl_dump_control {
> diff --git a/drivers/net/wireless/iwlwifi/mvm/phy-ctxt.c b/drivers/net/wireless/iwlwifi/mvm/phy-ctxt.c
> index a8652dd..89061e0 100644
> --- a/drivers/net/wireless/iwlwifi/mvm/phy-ctxt.c
> +++ b/drivers/net/wireless/iwlwifi/mvm/phy-ctxt.c
> @@ -65,7 +65,7 @@
> #include "fw-api.h"
> #include "mvm.h"
>
> -/* Maps the driver specific channel width definition to the the fw values */
> +/* Maps the driver specific channel width definition to the fw values */
> static inline u8 iwl_mvm_get_channel_width(struct cfg80211_chan_def *chandef)
> {
> switch (chandef->width) {
> @@ -86,7 +86,7 @@ static inline u8 iwl_mvm_get_channel_width(struct cfg80211_chan_def *chandef)
>
> /*
> * Maps the driver specific control channel position (relative to the center
> - * freq) definitions to the the fw values
> + * freq) definitions to the fw values
> */
> static inline u8 iwl_mvm_get_ctrl_pos(struct cfg80211_chan_def *chandef)
> {
> diff --git a/drivers/of/base.c b/drivers/of/base.c
> index 865d3f6..04f8ffb 100644
> --- a/drivers/of/base.c
> +++ b/drivers/of/base.c
> @@ -1737,7 +1737,7 @@ static void of_alias_add(struct alias_prop *ap, struct device_node *np,
> * of_alias_scan - Scan all properties of 'aliases' node
> *
> * The function scans all the properties of 'aliases' node and populate
> - * the the global lookup table with the properties. It returns the
> + * the global lookup table with the properties. It returns the
> * number of alias_prop found, or error code in error case.
> *
> * @dt_alloc: An allocator that provides a virtual address to memory
> diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c
> index f6488ad..0426b66 100644
> --- a/drivers/pci/hotplug/acpiphp_glue.c
> +++ b/drivers/pci/hotplug/acpiphp_glue.c
> @@ -36,7 +36,7 @@
> * when the bridge is scanned and it loses a refcount when the bridge
> * is removed.
> * - When a P2P bridge is present, we elevate the refcount on the subordinate
> - * bus. It loses the refcount when the the driver unloads.
> + * bus. It loses the refcount when the driver unloads.
> */
>
> #include <linux/init.h>
> diff --git a/drivers/pcmcia/pxa2xx_hx4700.c b/drivers/pcmcia/pxa2xx_hx4700.c
> index 7dfef3e..40511e3 100644
> --- a/drivers/pcmcia/pxa2xx_hx4700.c
> +++ b/drivers/pcmcia/pxa2xx_hx4700.c
> @@ -33,7 +33,7 @@ static int hx4700_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
> /*
> * IRQ type must be set before soc_pcmcia_hw_init() calls request_irq().
> * The asic3 default IRQ type is level trigger low level detect, exactly
> - * the the signal present on GPIOD4_CF_nCD when a CF card is inserted.
> + * the signal present on GPIOD4_CF_nCD when a CF card is inserted.
> * If the IRQ type is not changed, the asic3 interrupt handler will loop
> * repeatedly because it is unable to clear the level trigger interrupt.
> */
> diff --git a/drivers/power/power_supply_sysfs.c b/drivers/power/power_supply_sysfs.c
> index 44420d1..aa6d52e 100644
> --- a/drivers/power/power_supply_sysfs.c
> +++ b/drivers/power/power_supply_sysfs.c
> @@ -294,8 +294,9 @@ int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env)
>
> ret = power_supply_show_property(dev, attr, prop_buf);
> if (ret == -ENODEV || ret == -ENODATA) {
> - /* When a battery is absent, we expect -ENODEV. Don't abort;
> - send the uevent with at least the the PRESENT=0 property */
> + /* When a battery is absent, we expect -ENODEV.
> + * Don't abort; send the uevent with at least
> + * the PRESENT=0 property */
> ret = 0;
> continue;
> }
> diff --git a/drivers/rtc/rtc-rs5c372.c b/drivers/rtc/rtc-rs5c372.c
> index ccf54f0..2108302 100644
> --- a/drivers/rtc/rtc-rs5c372.c
> +++ b/drivers/rtc/rtc-rs5c372.c
> @@ -122,7 +122,7 @@ static int rs5c_get_regs(struct rs5c372 *rs5c)
> * least 80219 chips; this works around that bug.
> *
> * The third method on the other hand doesn't work for the SMBus-only
> - * configurations, so we use the the first method there, stripping off
> + * configurations, so we use the first method there, stripping off
> * the extra register in the process.
> */
> if (rs5c->smbus) {
> diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c
> index 0a328d0..8f4b19f 100644
> --- a/drivers/s390/net/qeth_core_main.c
> +++ b/drivers/s390/net/qeth_core_main.c
> @@ -3374,7 +3374,7 @@ static void qeth_flush_buffers(struct qeth_qdio_out_q *queue, int index,
> if (!atomic_read(&queue->set_pci_flags_count)) {
> /*
> * there's no outstanding PCI any more, so we
> - * have to request a PCI to be sure the the PCI
> + * have to request a PCI to be sure that the PCI
> * will wake at some time in the future then we
> * can flush packed buffers that might still be
> * hanging around, which can happen if no
> diff --git a/drivers/scsi/bfa/bfa_fcs_rport.c b/drivers/scsi/bfa/bfa_fcs_rport.c
> index 2035b0d..e62a734 100644
> --- a/drivers/scsi/bfa/bfa_fcs_rport.c
> +++ b/drivers/scsi/bfa/bfa_fcs_rport.c
> @@ -1983,7 +1983,7 @@ bfa_fcs_rport_gidpn_response(void *fcsarg, struct bfa_fcxp_s *fcxp, void *cbarg,
> /*
> * Device's PID has changed. We need to cleanup
> * and re-login. If there is another device with
> - * the the newly discovered pid, send an scn notice
> + * the newly discovered pid, send an scn notice
> * so that its new pid can be discovered.
> */
> list_for_each(qe, &rport->port->rport_q) {
> diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c
> index 07453bb..b02b9e5 100644
> --- a/drivers/scsi/fcoe/fcoe.c
> +++ b/drivers/scsi/fcoe/fcoe.c
> @@ -509,7 +509,7 @@ static void fcoe_interface_cleanup(struct fcoe_interface *fcoe)
> * @skb: The receive skb
> * @netdev: The associated net device
> * @ptype: The packet_type structure which was used to register this handler
> - * @orig_dev: The original net_device the the skb was received on.
> + * @orig_dev: The original net_device that the skb was received on.
> * (in case dev is a bond)
> *
> * Returns: 0 for success
> @@ -2709,7 +2709,7 @@ module_exit(fcoe_exit);
> * fcoe_flogi_resp() - FCoE specific FLOGI and FDISC response handler
> * @seq: active sequence in the FLOGI or FDISC exchange
> * @fp: response frame, or error encoded in a pointer (timeout)
> - * @arg: pointer the the fcoe_ctlr structure
> + * @arg: pointer to the fcoe_ctlr structure
> *
> * This handles MAC address management for FCoE, then passes control on to
> * the libfc FLOGI response handler.
> @@ -2738,7 +2738,7 @@ done:
> * fcoe_logo_resp() - FCoE specific LOGO response handler
> * @seq: active sequence in the LOGO exchange
> * @fp: response frame, or error encoded in a pointer (timeout)
> - * @arg: pointer the the fcoe_ctlr structure
> + * @arg: pointer to the fcoe_ctlr structure
> *
> * This handles MAC address management for FCoE, then passes control on to
> * the libfc LOGO response handler.
> diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c
> index 203415e..3bd4e86 100644
> --- a/drivers/scsi/fcoe/fcoe_ctlr.c
> +++ b/drivers/scsi/fcoe/fcoe_ctlr.c
> @@ -193,7 +193,7 @@ static int fcoe_sysfs_fcf_add(struct fcoe_fcf *new)
> * that doesn't have a priv (fcf was deleted). However,
> * libfcoe will always delete FCFs before trying to add
> * them. This is ensured because both recv_adv and
> - * age_fcfs are protected by the the fcoe_ctlr's mutex.
> + * age_fcfs are protected by the fcoe_ctlr's mutex.
> * This means that we should never get a FCF with a
> * non-NULL priv pointer.
> */
> @@ -655,7 +655,7 @@ static int fcoe_ctlr_encaps(struct fcoe_ctlr *fip, struct fc_lport *lport,
> *
> * The caller must check that the length is a multiple of 4.
> * The SKB must have enough headroom (28 bytes) and tailroom (8 bytes).
> - * The the skb must also be an fc_frame.
> + * The skb must also be an fc_frame.
> *
> * This is called from the lower-level driver with spinlocks held,
> * so we must not take a mutex here.
> diff --git a/drivers/scsi/isci/host.h b/drivers/scsi/isci/host.h
> index 4911310..cc2b2c0 100644
> --- a/drivers/scsi/isci/host.h
> +++ b/drivers/scsi/isci/host.h
> @@ -244,7 +244,7 @@ enum sci_controller_states {
> SCIC_INITIALIZED,
>
> /**
> - * This state indicates the the controller is in the process of becoming
> + * This state indicates that the controller is in the process of becoming
> * ready (i.e. starting). In this state no new IO operations are permitted.
> * This state is entered from the INITIALIZED state.
> */
> diff --git a/drivers/scsi/isci/remote_device.h b/drivers/scsi/isci/remote_device.h
> index 47a013f..07af745 100644
> --- a/drivers/scsi/isci/remote_device.h
> +++ b/drivers/scsi/isci/remote_device.h
> @@ -198,7 +198,7 @@ enum sci_status sci_remote_device_reset_complete(
> * permitted. This state is entered from the INITIAL state. This state
> * is entered from the STOPPING state.
> *
> - * @SCI_DEV_STARTING: This state indicates the the remote device is in
> + * @SCI_DEV_STARTING: This state indicates that the remote device is in
> * the process of becoming ready (i.e. starting). In this state no new
> * IO operations are permitted. This state is entered from the STOPPED
> * state.
> diff --git a/drivers/scsi/isci/remote_node_context.h b/drivers/scsi/isci/remote_node_context.h
> index c7ee81d..f22950b 100644
> --- a/drivers/scsi/isci/remote_node_context.h
> +++ b/drivers/scsi/isci/remote_node_context.h
> @@ -154,7 +154,7 @@ enum sci_remote_node_context_destination_state {
> /**
> * struct sci_remote_node_context - This structure contains the data
> * associated with the remote node context object. The remote node context
> - * (RNC) object models the the remote device information necessary to manage
> + * (RNC) object models the remote device information necessary to manage
> * the silicon RNC.
> */
> struct sci_remote_node_context {
> diff --git a/drivers/scsi/isci/task.c b/drivers/scsi/isci/task.c
> index 0d30ca8..63da523 100644
> --- a/drivers/scsi/isci/task.c
> +++ b/drivers/scsi/isci/task.c
> @@ -67,7 +67,7 @@
> /**
> * isci_task_refuse() - complete the request to the upper layer driver in
> * the case where an I/O needs to be completed back in the submit path.
> -* @ihost: host on which the the request was queued
> +* @ihost: host on which the request was queued
> * @task: request to complete
> * @response: response code for the completed task.
> * @status: status code for the completed task.
> diff --git a/drivers/scsi/lpfc/lpfc_attr.c b/drivers/scsi/lpfc/lpfc_attr.c
> index 16498e0..e5803a6 100644
> --- a/drivers/scsi/lpfc/lpfc_attr.c
> +++ b/drivers/scsi/lpfc/lpfc_attr.c
> @@ -1654,7 +1654,7 @@ lpfc_##attr##_show(struct device *dev, struct device_attribute *attr, \
> * takes a default argument, a minimum and maximum argument.
> *
> * lpfc_##attr##_init: Initializes an attribute.
> - * @phba: pointer the the adapter structure.
> + * @phba: pointer to the adapter structure.
> * @val: integer attribute value.
> *
> * Validates the min and max values then sets the adapter config field
> @@ -1687,7 +1687,7 @@ lpfc_##attr##_init(struct lpfc_hba *phba, uint val) \
> * into a function with the name lpfc_hba_queue_depth_set
> *
> * lpfc_##attr##_set: Sets an attribute value.
> - * @phba: pointer the the adapter structure.
> + * @phba: pointer to the adapter structure.
> * @val: integer attribute value.
> *
> * Description:
> @@ -1820,7 +1820,7 @@ lpfc_##attr##_show(struct device *dev, struct device_attribute *attr, \
> * lpfc_##attr##_init: validates the min and max values then sets the
> * adapter config field accordingly, or uses the default if out of range
> * and prints an error message.
> - * @phba: pointer the the adapter structure.
> + * @phba: pointer to the adapter structure.
> * @val: integer attribute value.
> *
> * Returns:
> @@ -1852,7 +1852,7 @@ lpfc_##attr##_init(struct lpfc_vport *vport, uint val) \
> * lpfc_##attr##_set: validates the min and max values then sets the
> * adapter config field if in the valid range. prints error message
> * and does not set the parameter if invalid.
> - * @phba: pointer the the adapter structure.
> + * @phba: pointer to the adapter structure.
> * @val: integer attribute value.
> *
> * Returns:
> diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c
> index 110445f..1ced982 100644
> --- a/drivers/scsi/lpfc/lpfc_els.c
> +++ b/drivers/scsi/lpfc/lpfc_els.c
> @@ -5783,7 +5783,7 @@ reject_out:
> * @rrq: Pointer to the rrq struct.
> *
> * Build a ELS RRQ command and send it to the target. If the issue_iocb is
> - * Successful the the completion handler will clear the RRQ.
> + * successful, the completion handler will clear the RRQ.
> *
> * Return codes
> * 0 - Successfully sent rrq els iocb.
> diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c
> index 60d6ca2..4f09f33 100644
> --- a/drivers/scsi/lpfc/lpfc_hbadisc.c
> +++ b/drivers/scsi/lpfc/lpfc_hbadisc.c
> @@ -2014,7 +2014,7 @@ static void lpfc_sli4_fcf_pri_list_del(struct lpfc_hba *phba,
> * @phba: pointer to lpfc hba data structure.
> * @fcf_index the index of the fcf record to update
> * This routine acquires the hbalock and then set the LPFC_FCF_FLOGI_FAILED
> - * flag so the the round robin slection for the particular priority level
> + * flag so that the round robin selection for the particular priority level
> * will try a different fcf record that does not have this bit set.
> * If the fcf record is re-read for any reason this flag is cleared brfore
> * adding it to the priority list.
> @@ -5692,7 +5692,7 @@ lpfc_nlp_get(struct lpfc_nodelist *ndlp)
> }
>
> /* This routine decrements the reference count for a ndlp structure. If the
> - * count goes to 0, this indicates the the associated nodelist should be
> + * count goes to 0, this indicates that the associated nodelist should be
> * freed. Returning 1 indicates the ndlp resource has been released; on the
> * other hand, returning 0 indicates the ndlp resource has not been released
> * yet.
> diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
> index 501147c..1eb3e98 100644
> --- a/drivers/scsi/lpfc/lpfc_init.c
> +++ b/drivers/scsi/lpfc/lpfc_init.c
> @@ -3783,7 +3783,7 @@ lpfc_sli4_async_link_evt(struct lpfc_hba *phba,
> bf_set(lpfc_mbx_read_top_link_spd, la,
> lpfc_sli4_parse_latt_link_speed(phba, acqe_link));
>
> - /* Fake the the following irrelvant fields */
> + /* Fake the following irrelevant fields */
> bf_set(lpfc_mbx_read_top_topology, la, LPFC_TOPOLOGY_PT_PT);
> bf_set(lpfc_mbx_read_top_alpa_granted, la, 0);
> bf_set(lpfc_mbx_read_top_il, la, 0);
> diff --git a/drivers/scsi/lpfc/lpfc_mbox.c b/drivers/scsi/lpfc/lpfc_mbox.c
> index 1f292e2..d9a9ddb 100644
> --- a/drivers/scsi/lpfc/lpfc_mbox.c
> +++ b/drivers/scsi/lpfc/lpfc_mbox.c
> @@ -2265,7 +2265,7 @@ lpfc_sli4_dump_cfg_rg23(struct lpfc_hba *phba, struct lpfcMboxq *mbox)
> * information via a READ_FCF mailbox command. This mailbox command also is used
> * to indicate where received unsolicited frames from this FCF will be sent. By
> * default this routine will set up the FCF to forward all unsolicited frames
> - * the the RQ ID passed in the @phba. This can be overridden by the caller for
> + * that the RQ ID passed in the @phba. This can be overridden by the caller for
> * more complicated setups.
> **/
> void
> diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
> index 0392e11..5cb256d 100644
> --- a/drivers/scsi/lpfc/lpfc_sli.c
> +++ b/drivers/scsi/lpfc/lpfc_sli.c
> @@ -16185,7 +16185,7 @@ out:
> * the offset after the write object mailbox has completed. @size is used to
> * determine the end of the object and whether the eof bit should be set.
> *
> - * Return 0 is successful and offset will contain the the new offset to use
> + * Return 0 is successful and offset will contain the new offset to use
> * for the next write.
> * Return negative value for error cases.
> **/
> diff --git a/drivers/scsi/pm8001/pm8001_hwi.c b/drivers/scsi/pm8001/pm8001_hwi.c
> index 4a21957..90cc9b4 100644
> --- a/drivers/scsi/pm8001/pm8001_hwi.c
> +++ b/drivers/scsi/pm8001/pm8001_hwi.c
> @@ -3204,7 +3204,7 @@ int pm8001_mpi_local_phy_ctl(struct pm8001_hba_info *pm8001_ha, void *piomb)
> *
> * when HBA driver received the identify done event or initiate FIS received
> * event(for SATA), it will invoke this function to notify the sas layer that
> - * the sas toplogy has formed, please discover the the whole sas domain,
> + * the sas toplogy has formed, please discover the whole sas domain,
> * while receive a broadcast(change) primitive just tell the sas
> * layer to discover the changed domain rather than the whole domain.
> */
> diff --git a/drivers/spi/spi-ppc4xx.c b/drivers/spi/spi-ppc4xx.c
> index 0ee53c2..d79aab1 100644
> --- a/drivers/spi/spi-ppc4xx.c
> +++ b/drivers/spi/spi-ppc4xx.c
> @@ -353,7 +353,7 @@ static void spi_ppc4xx_enable(struct ppc4xx_spi *hw)
> {
> /*
> * On all 4xx PPC's the SPI bus is shared/multiplexed with
> - * the 2nd I2C bus. We need to enable the the SPI bus before
> + * the 2nd I2C bus. We need to enable the SPI bus before
> * using it.
> */
>
> diff --git a/drivers/staging/android/binder.h b/drivers/staging/android/binder.h
> index cbe3451..98161a5 100644
> --- a/drivers/staging/android/binder.h
> +++ b/drivers/staging/android/binder.h
> @@ -246,7 +246,7 @@ enum binder_driver_return_protocol {
>
> BR_FAILED_REPLY = _IO('r', 17),
> /*
> - * The the last transaction (either a bcTRANSACTION or
> + * The last transaction (either a bcTRANSACTION or
> * a bcATTEMPT_ACQUIRE) failed (e.g. out of memory). No parameters.
> */
> };
> diff --git a/drivers/staging/et131x/et131x.c b/drivers/staging/et131x/et131x.c
> index f73e58f..55d41ab 100644
> --- a/drivers/staging/et131x/et131x.c
> +++ b/drivers/staging/et131x/et131x.c
> @@ -1242,7 +1242,7 @@ static void et1310_config_rxmac_regs(struct et131x_adapter *adapter)
> /* Initialize the Space Available Register */
> writel(0, &rxmac->space_avail);
>
> - /* Initialize the the mif_ctrl register
> + /* Initialize the mif_ctrl register
> * bit 3: Receive code error. One or more nibbles were signaled as
> * errors during the reception of the packet. Clear this
> * bit in Gigabit, set it in 100Mbit. This was derived
> diff --git a/drivers/staging/lustre/lustre/llite/file.c b/drivers/staging/lustre/lustre/llite/file.c
> index 253f026..e53b57a 100644
> --- a/drivers/staging/lustre/lustre/llite/file.c
> +++ b/drivers/staging/lustre/lustre/llite/file.c
> @@ -318,7 +318,7 @@ int ll_file_release(struct inode *inode, struct file *file)
> fd = LUSTRE_FPRIVATE(file);
> LASSERT(fd != NULL);
>
> - /* The last ref on @file, maybe not the the owner pid of statahead.
> + /* The last ref on @file, maybe not the owner pid of statahead.
> * Different processes can open the same dir, "ll_opendir_key" means:
> * it is me that should stop the statahead thread. */
> if (S_ISDIR(inode->i_mode) && lli->lli_opendir_key == fd &&
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/pinger.c b/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> index 227a0ae..c30abe1 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/pinger.c
> @@ -507,7 +507,7 @@ struct timeout_item* ptlrpc_new_timeout(int time, enum timeout_event event,
> }
>
> /**
> - * Register timeout event on the the pinger thread.
> + * Register timeout event on the pinger thread.
> * Note: the timeout list is an sorted list with increased timeout value.
> */
> static struct timeout_item*
> diff --git a/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c
> index 10b2210..89adfb8 100644
> --- a/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c
> +++ b/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c
> @@ -216,7 +216,7 @@ ieee80211_rx_frame_mgmt(struct ieee80211_device *ieee, struct sk_buff *skb,
> {
> struct ieee80211_hdr_4addr *hdr;
>
> - // cheat the the hdr type
> + /* cheat the hdr type */
> hdr = (struct ieee80211_hdr_4addr *)skb->data;
>
> /* On the struct stats definition there is written that
> @@ -485,7 +485,7 @@ int ieee80211_rtl_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
> struct ieee80211_crypt_data *crypt = NULL;
> int keyidx = 0;
>
> - // cheat the the hdr type
> + /* cheat the hdr type */
> hdr = (struct ieee80211_hdr_4addr *)skb->data;
> stats = &ieee->stats;
>
> diff --git a/drivers/staging/rtl8188eu/core/rtw_cmd.c b/drivers/staging/rtl8188eu/core/rtw_cmd.c
> index 9632ef4..0d1f95d 100644
> --- a/drivers/staging/rtl8188eu/core/rtw_cmd.c
> +++ b/drivers/staging/rtl8188eu/core/rtw_cmd.c
> @@ -968,7 +968,7 @@ _func_enter_;
>
> psecnetwork->IELength = 0;
> /* Added by Albert 2009/02/18 */
> - /* If the the driver wants to use the bssid to create the connection. */
> + /* If the driver wants to use the bssid to create the connection. */
> /* If not, we have to copy the connecting AP's MAC address to it so that */
> /* the driver just has the bssid information for PMKIDList searching. */
>
> diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c
> index 59900bf..0f47b34 100644
> --- a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c
> +++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c
> @@ -926,7 +926,7 @@ int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
>
> int i;
> struct ieee80211_rxb *rxb = NULL;
> - // cheat the the hdr type
> + /* cheat the hdr type */
> hdr = (struct ieee80211_hdr_4addr *)skb->data;
> stats = &ieee->stats;
>
> diff --git a/drivers/staging/rtl8712/rtl871x_cmd.c b/drivers/staging/rtl8712/rtl871x_cmd.c
> index f16307f..5b30e7c 100644
> --- a/drivers/staging/rtl8712/rtl871x_cmd.c
> +++ b/drivers/staging/rtl8712/rtl871x_cmd.c
> @@ -536,7 +536,7 @@ u8 r8712_joinbss_cmd(struct _adapter *padapter, struct wlan_network *pnetwork)
> memcpy(&psecuritypriv->authenticator_ie[1],
> &psecnetwork->IEs[12], (256-1));
> psecnetwork->IELength = 0;
> - /* If the the driver wants to use the bssid to create the connection.
> + /* If the driver wants to use the bssid to create the connection.
> * If not, we copy the connecting AP's MAC address to it so that
> * the driver just has the bssid information for PMKIDList searching.
> */
> diff --git a/drivers/staging/sep/sep_main.c b/drivers/staging/sep/sep_main.c
> index 6a98a20..2571180 100644
> --- a/drivers/staging/sep/sep_main.c
> +++ b/drivers/staging/sep/sep_main.c
> @@ -1209,7 +1209,7 @@ static int sep_lock_user_pages(struct sep_device *sep,
> int error = 0;
> u32 count;
> int result;
> - /* The the page of the end address of the user space buffer */
> + /* The page of the end address of the user space buffer */
> u32 end_page;
> /* The page of the start address of the user space buffer */
> u32 start_page;
> @@ -1413,7 +1413,7 @@ static int sep_lli_table_secure_dma(struct sep_device *sep,
> {
> int error = 0;
> u32 count;
> - /* The the page of the end address of the user space buffer */
> + /* The page of the end address of the user space buffer */
> u32 end_page;
> /* The page of the start address of the user space buffer */
> u32 start_page;
> @@ -1732,7 +1732,7 @@ static void *sep_shared_area_bus_to_virt(struct sep_device *sep,
> * @num_table_entries: number of entries
> * @table_data_size: total data size
> *
> - * Walk the the list of the print created tables and print all the data
> + * Walk the list of the print created tables and print all the data
> */
> static void sep_debug_print_lli_tables(struct sep_device *sep,
> struct sep_lli_entry *lli_table_ptr,
> diff --git a/drivers/staging/tidspbridge/include/dspbridge/drv.h b/drivers/staging/tidspbridge/include/dspbridge/drv.h
> index b0c7708..ee44aae 100644
> --- a/drivers/staging/tidspbridge/include/dspbridge/drv.h
> +++ b/drivers/staging/tidspbridge/include/dspbridge/drv.h
> @@ -253,7 +253,7 @@ extern int drv_get_dev_object(u32 index,
> /*
> * ======== drv_get_next_dev_object ========
> * Purpose:
> - * Returns the Ptr to the Next Device Object from the the List
> + * Returns the Ptr to the Next Device Object from the List
> * Parameters:
> * hdev_obj: Handle to the Device Object
> * Requires:
> @@ -269,7 +269,7 @@ extern u32 drv_get_next_dev_object(u32 hdev_obj);
> /*
> * ======== drv_get_next_dev_extension ========
> * Purpose:
> - * Returns the Ptr to the Next Device Extension from the the List
> + * Returns the Ptr to the Next Device Extension from the List
> * Parameters:
> * dev_extension: Handle to the Device Extension
> * Requires:
> diff --git a/drivers/staging/tidspbridge/pmgr/dev.c b/drivers/staging/tidspbridge/pmgr/dev.c
> index 6234ffb..408bb6b 100644
> --- a/drivers/staging/tidspbridge/pmgr/dev.c
> +++ b/drivers/staging/tidspbridge/pmgr/dev.c
> @@ -897,7 +897,7 @@ int dev_get_dev_type(struct dev_object *dev_obj, u8 *dev_type)
> *
> * 1. All Bridge function pointers which are NULL; and
> * 2. All function slots in the struct dev_object structure which have no
> - * corresponding slots in the the Bridge's interface, because the Bridge
> + * corresponding slots in the Bridge's interface, because the Bridge
> * is of an *older* version.
> * Parameters:
> * intf_fxns: Interface fxn Structure of the Bridge's Dev Object.
> diff --git a/drivers/staging/wlags49_h2/README.wlags49 b/drivers/staging/wlags49_h2/README.wlags49
> index f65acd6..368a22b 100644
> --- a/drivers/staging/wlags49_h2/README.wlags49
> +++ b/drivers/staging/wlags49_h2/README.wlags49
> @@ -396,7 +396,7 @@ Version 7.22 abg - July 28, 2004
> TxKey=1
>
> this configures eth1 to associate to the ESSID 'some_network' with
> - encryption on, where the the first encryption key is 'net01' and the key to
> + encryption on, where the first encryption key is 'net01' and the key to
> use for encryption is Key 1.
>
> Note that this only works on Agere hardware which uses this driver. For
> diff --git a/drivers/target/target_core_alua.c b/drivers/target/target_core_alua.c
> index cbe48ab..c1392223 100644
> --- a/drivers/target/target_core_alua.c
> +++ b/drivers/target/target_core_alua.c
> @@ -331,7 +331,7 @@ target_emulate_set_target_port_groups(struct se_cmd *cmd)
> } else {
> /*
> * Extact the RELATIVE TARGET PORT IDENTIFIER to identify
> - * the Target Port in question for the the incoming
> + * the Target Port in question for the incoming
> * SET_TARGET_PORT_GROUPS op.
> */
> rtpi = get_unaligned_be16(ptr + 2);
> diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c
> index 558605d..b69b337 100644
> --- a/drivers/usb/serial/cypress_m8.c
> +++ b/drivers/usb/serial/cypress_m8.c
> @@ -263,7 +263,7 @@ static int analyze_baud_rate(struct usb_serial_port *port, speed_t new_rate)
> /*
> * Mike Isely <isely@...ox.com> 2-Feb-2008: The
> * Cypress app note that describes this mechanism
> - * states the the low-speed part can't handle more
> + * states that the low-speed part can't handle more
> * than 800 bytes/sec, in which case 4800 baud is the
> * safest speed for a part like that.
> */
> diff --git a/drivers/usb/serial/mos7720.c b/drivers/usb/serial/mos7720.c
> index 84657e0..a107e37 100644
> --- a/drivers/usb/serial/mos7720.c
> +++ b/drivers/usb/serial/mos7720.c
> @@ -432,7 +432,7 @@ static int write_parport_reg_nonblock(struct mos7715_parport *mos_parport,
> }
>
> /*
> - * This is the the common top part of all parallel port callback operations that
> + * This is the common top part of all parallel port callback operations that
> * send synchronous messages to the device. This implements convoluted locking
> * that avoids two scenarios: (1) a port operation is called after usbserial
> * has called our release function, at which point struct mos7715_parport has
> @@ -471,7 +471,7 @@ static int parport_prologue(struct parport *pp)
> }
>
> /*
> - * This is the the common bottom part of all parallel port functions that send
> + * This is the common bottom part of all parallel port functions that send
> * synchronous messages to the device.
> */
> static inline void parport_epilogue(struct parport *pp)
> diff --git a/drivers/usb/wusbcore/devconnect.c b/drivers/usb/wusbcore/devconnect.c
> index 33a1278..b2aa189 100644
> --- a/drivers/usb/wusbcore/devconnect.c
> +++ b/drivers/usb/wusbcore/devconnect.c
> @@ -46,7 +46,7 @@
> *
> * ASSUMPTIONS:
> *
> - * - We use the the as device address the port number where it is
> + * - We use as device address the port number where it is
> * connected (port 0 doesn't exist). For unauth, it is 128 + that.
> *
> * ROADMAP:
> diff --git a/drivers/uwb/drp-ie.c b/drivers/uwb/drp-ie.c
> index b7d4f6b..caa4cb4 100644
> --- a/drivers/uwb/drp-ie.c
> +++ b/drivers/uwb/drp-ie.c
> @@ -262,7 +262,7 @@ int uwb_drp_ie_update(struct uwb_rsv *rsv)
> * We are given a zone id and the MAS bitmap of bits that need to be set in
> * this zone. Note that this zone may already have bits set and this only
> * adds settings - we cannot simply assign the MAS bitmap contents to the
> - * zone contents. We iterate over the the bits (MAS) in the zone and set the
> + * zone contents. We iterate over the bits (MAS) in the zone and set the
> * bits that are set in the given MAS bitmap.
> */
> static
> diff --git a/drivers/video/omap/sossi.c b/drivers/video/omap/sossi.c
> index d4e7684..501bc08 100644
> --- a/drivers/video/omap/sossi.c
> +++ b/drivers/video/omap/sossi.c
> @@ -370,7 +370,7 @@ static void sossi_set_bits_per_cycle(int bpc)
> int bus_pick_count, bus_pick_width;
>
> /*
> - * We set explicitly the the bus_pick_count as well, although
> + * We set explicitly the bus_pick_count as well, although
> * with remapping/reordering disabled it will be calculated by HW
> * as (32 / bus_pick_width).
> */
> diff --git a/drivers/video/sis/sis_accel.c b/drivers/video/sis/sis_accel.c
> index ceb434c..9177b80 100644
> --- a/drivers/video/sis/sis_accel.c
> +++ b/drivers/video/sis/sis_accel.c
> @@ -215,7 +215,7 @@ SiS310SubsequentScreenToScreenCopy(struct sis_video_info *ivideo, int src_x, int
> * and destination blitting areas overlap and
> * adapt the bitmap addresses synchronously
> * if the coordinates exceed the valid range.
> - * The the areas do not overlap, we do our
> + * If the areas do not overlap, we do our
> * normal check.
> */
> if((mymax - mymin) < height) {
> diff --git a/fs/autofs4/dev-ioctl.c b/fs/autofs4/dev-ioctl.c
> index 0f00da3..6a646a0 100644
> --- a/fs/autofs4/dev-ioctl.c
> +++ b/fs/autofs4/dev-ioctl.c
> @@ -492,7 +492,7 @@ static int autofs_dev_ioctl_askumount(struct file *fp,
> * located path is the root of a mount we return 1 along with
> * the super magic of the mount or 0 otherwise.
> *
> - * In both cases the the device number (as returned by
> + * In both cases the device number (as returned by
> * new_encode_dev()) is also returned.
> */
> static int autofs_dev_ioctl_ismountpoint(struct file *fp,
> diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c
> index 5f8f334..cac9a70 100644
> --- a/fs/btrfs/dev-replace.c
> +++ b/fs/btrfs/dev-replace.c
> @@ -810,7 +810,7 @@ int btrfs_dev_replace_is_ongoing(struct btrfs_dev_replace *dev_replace)
> * something that can happen if the dev_replace
> * procedure is suspended by an umount and then
> * the tgtdev is missing (or "btrfs dev scan") was
> - * not called and the the filesystem is remounted
> + * not called and the filesystem is remounted
> * in degraded state. This does not stop the
> * dev_replace procedure. It needs to be canceled
> * manually if the cancelation is wanted.
> diff --git a/fs/btrfs/send.c b/fs/btrfs/send.c
> index 2e14fd8..6628d43 100644
> --- a/fs/btrfs/send.c
> +++ b/fs/btrfs/send.c
> @@ -2789,7 +2789,7 @@ verbose_printk("btrfs: process_recorded_refs %llu\n", sctx->cur_ino);
> /*
> * We may have refs where the parent directory does not exist
> * yet. This happens if the parent directories inum is higher
> - * the the current inum. To handle this case, we create the
> + * than the current inum. To handle this case, we create the
> * parent directory out of order. But we need to check if this
> * did already happen before due to other refs in the same dir.
> */
> diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
> index ff60d89..203092b 100644
> --- a/fs/btrfs/tree-log.c
> +++ b/fs/btrfs/tree-log.c
> @@ -2522,7 +2522,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
> mutex_unlock(&log_root_tree->log_mutex);
>
> /*
> - * nobody else is going to jump in and write the the ctree
> + * nobody else is going to jump in and write the ctree
> * super here because the log_commit atomic below is protecting
> * us. We must be called with a transaction handle pinning
> * the running transaction open, so a full commit can't hop
> diff --git a/fs/dcache.c b/fs/dcache.c
> index 4d9df3c..fab316e 100644
> --- a/fs/dcache.c
> +++ b/fs/dcache.c
> @@ -1824,8 +1824,8 @@ EXPORT_SYMBOL(d_splice_alias);
> * same inode, only the actual correct case is stored in the dcache for
> * case-insensitive filesystems.
> *
> - * For a case-insensitive lookup match and if the the case-exact dentry
> - * already exists in in the dcache, use it and return it.
> + * For a case-insensitive lookup match and if the case-exact dentry
> + * already exists in the dcache, use it and return it.
> *
> * If no entry exists with the exact case name, allocate new dentry with
> * the exact case, and return the spliced entry.
> diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c
> index 7d52806..080ad57 100644
> --- a/fs/ecryptfs/keystore.c
> +++ b/fs/ecryptfs/keystore.c
> @@ -900,7 +900,7 @@ struct ecryptfs_parse_tag_70_packet_silly_stack {
> * @filename: This function kmalloc's the memory for the filename
> * @filename_size: This function sets this to the amount of memory
> * kmalloc'd for the filename
> - * @packet_size: This function sets this to the the number of octets
> + * @packet_size: This function sets this to the number of octets
> * in the packet parsed
> * @mount_crypt_stat: The mount-wide cryptographic context
> * @data: The memory location containing the start of the tag 70
> diff --git a/fs/ext2/ext2.h b/fs/ext2/ext2.h
> index d9a17d0..c9c6f2e 100644
> --- a/fs/ext2/ext2.h
> +++ b/fs/ext2/ext2.h
> @@ -51,7 +51,7 @@ struct ext2_block_alloc_info {
> /*
> * Was i_next_alloc_goal in ext2_inode_info
> * is the *physical* companion to i_next_alloc_block.
> - * it the the physical block number of the block which was most-recentl
> + * it is the physical block number of the block which was most-recently
> * allocated to this file. This give us the goal (target) for the next
> * allocation when we detect linearly ascending requests.
> */
> diff --git a/fs/ext4/inline.c b/fs/ext4/inline.c
> index d9ecbf1..1ff32c5 100644
> --- a/fs/ext4/inline.c
> +++ b/fs/ext4/inline.c
> @@ -276,7 +276,7 @@ static int ext4_create_inline_data(handle_t *handle,
> len = 0;
> }
>
> - /* Insert the the xttr entry. */
> + /* Insert the xttr entry. */
> i.value = value;
> i.value_len = len;
>
> @@ -832,7 +832,7 @@ out:
>
> /*
> * Prepare the write for the inline data.
> - * If the the data can be written into the inode, we just read
> + * If the data can be written into the inode, we just read
> * the page and make it uptodate, and start the journal.
> * Otherwise read the page, makes it dirty so that it can be
> * handle in writepages(the i_disksize update is left to the
> diff --git a/fs/f2fs/segment.h b/fs/f2fs/segment.h
> index bdd10ea..8926ba8 100644
> --- a/fs/f2fs/segment.h
> +++ b/fs/f2fs/segment.h
> @@ -153,7 +153,7 @@ struct seg_entry {
> unsigned short valid_blocks; /* # of valid blocks */
> unsigned char *cur_valid_map; /* validity bitmap of blocks */
> /*
> - * # of valid blocks and the validity bitmap stored in the the last
> + * # of valid blocks and the validity bitmap stored in the last
> * checkpoint pack. This information is used by the SSR mode.
> */
> unsigned short ckpt_valid_blocks;
> diff --git a/fs/ocfs2/localalloc.c b/fs/ocfs2/localalloc.c
> index cd5496b..dd27d2b 100644
> --- a/fs/ocfs2/localalloc.c
> +++ b/fs/ocfs2/localalloc.c
> @@ -690,7 +690,7 @@ int ocfs2_reserve_local_alloc_bits(struct ocfs2_super *osb,
> /*
> * Under certain conditions, the window slide code
> * might have reduced the number of bits available or
> - * disabled the the local alloc entirely. Re-check
> + * disabled the local alloc entirely. Re-check
> * here and return -ENOSPC if necessary.
> */
> status = -ENOSPC;
> diff --git a/fs/xfs/xfs_export.c b/fs/xfs/xfs_export.c
> index 066df42..1230796 100644
> --- a/fs/xfs/xfs_export.c
> +++ b/fs/xfs/xfs_export.c
> @@ -71,7 +71,7 @@ xfs_fs_encode_fh(
> fileid_type = FILEID_INO32_GEN_PARENT;
>
> /*
> - * If the the filesystem may contain 64bit inode numbers, we need
> + * If the filesystem may contain 64bit inode numbers, we need
> * to use larger file handles that can represent them.
> *
> * While we only allocate inodes that do not fit into 32 bits any
> diff --git a/include/drm/drm_rect.h b/include/drm/drm_rect.h
> index d128629..1f6d6c3 100644
> --- a/include/drm/drm_rect.h
> +++ b/include/drm/drm_rect.h
> @@ -120,7 +120,7 @@ static inline int drm_rect_height(const struct drm_rect *r)
> }
>
> /**
> - * drm_rect_visible - determine if the the rectangle is visible
> + * drm_rect_visible - determine if the rectangle is visible
> * @r: rectangle whose visibility is returned
> *
> * RETURNS:
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index caf543c..f288632 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -178,7 +178,7 @@ extern pgprot_t protection_map[16];
> #define FAULT_FLAG_TRIED 0x40 /* second try */
>
> /*
> - * vm_fault is filled by the the pagefault handler and passed to the vma's
> + * vm_fault is filled by the pagefault handler and passed to the vma's
> * ->fault function. The vma's ->fault is responsible for returning a bitmask
> * of VM_FAULT_xxx flags that give details about how the fault was handled.
> *
> diff --git a/include/linux/moduleparam.h b/include/linux/moduleparam.h
> index c3eb102..cf956c9 100644
> --- a/include/linux/moduleparam.h
> +++ b/include/linux/moduleparam.h
> @@ -94,7 +94,7 @@ struct kparam_array
> * ".") the kernel commandline parameter. Note that - is changed to _, so
> * the user can use "foo-bar=1" even for variable "foo_bar".
> *
> - * @perm is 0 if the the variable is not to appear in sysfs, or 0444
> + * @perm is 0 if the variable is not to appear in sysfs, or 0444
> * for world-readable, 0644 for root-writable, etc. Note that if it
> * is writable, you may need to use kparam_block_sysfs_write() around
> * accesses (esp. charp, which can be kfreed when it changes).
> diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
> index 2ddb48d..2c6a7ba 100644
> --- a/include/linux/skbuff.h
> +++ b/include/linux/skbuff.h
> @@ -2511,7 +2511,7 @@ static inline bool skb_defer_rx_timestamp(struct sk_buff *skb)
> * must call this function to return the skb back to the stack, with
> * or without a timestamp.
> *
> - * @skb: clone of the the original outgoing packet
> + * @skb: clone of the original outgoing packet
> * @hwtstamps: hardware time stamps, may be NULL if not available
> *
> */
> diff --git a/include/net/caif/caif_layer.h b/include/net/caif/caif_layer.h
> index 94e5ed6..e9a8d52 100644
> --- a/include/net/caif/caif_layer.h
> +++ b/include/net/caif/caif_layer.h
> @@ -184,7 +184,7 @@ struct cflayer {
> * CAIF packet downwards in the stack.
> * Packet handling rules:
> * - The CAIF packet (cfpkt) ownership is passed to the
> - * transmit function. This means that the the packet
> + * transmit function. This means that the packet
> * cannot be accessed after passing it to the below
> * layer using dn->transmit().
> *
> diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h
> index 48ec25a..4abf055 100644
> --- a/include/net/ip6_fib.h
> +++ b/include/net/ip6_fib.h
> @@ -100,7 +100,7 @@ struct rt6_info {
> struct in6_addr rt6i_gateway;
>
> /* Multipath routes:
> - * siblings is a list of rt6_info that have the the same metric/weight,
> + * siblings is a list of rt6_info that have the same metric/weight,
> * destination, but not the same gateway. nsiblings is just a cache
> * to speed up lookup.
> */
> diff --git a/include/net/wimax.h b/include/net/wimax.h
> index bbb74f9..e1f28cc 100644
> --- a/include/net/wimax.h
> +++ b/include/net/wimax.h
> @@ -43,7 +43,7 @@
> *
> * USAGE
> *
> - * Embed a `struct wimax_dev` at the beginning of the the device's
> + * Embed a `struct wimax_dev` at the beginning of the device's
> * private structure, initialize and register it. For details, see
> * `struct wimax_dev`s documentation.
> *
> diff --git a/init/main.c b/init/main.c
> index af310af..71a7395 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -484,7 +484,7 @@ asmlinkage void __init start_kernel(void)
> debug_objects_early_init();
>
> /*
> - * Set up the the initial canary ASAP:
> + * Set up the initial canary ASAP:
> */
> boot_init_stack_canary();
>
> diff --git a/kernel/jump_label.c b/kernel/jump_label.c
> index 297a924..3cf4a90 100644
> --- a/kernel/jump_label.c
> +++ b/kernel/jump_label.c
> @@ -17,7 +17,7 @@
>
> #ifdef HAVE_JUMP_LABEL
>
> -/* mutex to protect coming/going of the the jump_label table */
> +/* mutex to protect coming/going of the jump_label table */
> static DEFINE_MUTEX(jump_label_mutex);
>
> void jump_label_lock(void)
> diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
> index b4e8500..722b5a1 100644
> --- a/kernel/printk/printk.c
> +++ b/kernel/printk/printk.c
> @@ -2721,7 +2721,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_line);
> * @len: length of line placed into buffer
> *
> * Start at the end of the kmsg buffer and fill the provided buffer
> - * with as many of the the *youngest* kmsg records that fit into it.
> + * with as many of the *youngest* kmsg records that fit into it.
> * If the buffer is large enough, all available kmsg records will be
> * copied with a single call.
> *
> diff --git a/kernel/smp.c b/kernel/smp.c
> index 0564571..f9e336a 100644
> --- a/kernel/smp.c
> +++ b/kernel/smp.c
> @@ -602,7 +602,7 @@ EXPORT_SYMBOL(on_each_cpu_mask);
> * for all the required CPUs to finish. This may include the local
> * processor.
> * @cond_func: A callback function that is passed a cpu id and
> - * the the info parameter. The function is called
> + * the info parameter. The function is called
> * with preemption disabled. The function should
> * return a blooean value indicating whether to IPI
> * the specified CPU.
> diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
> index cc2f66f..04fb641 100644
> --- a/kernel/trace/ring_buffer.c
> +++ b/kernel/trace/ring_buffer.c
> @@ -2874,7 +2874,7 @@ rb_decrement_entry(struct ring_buffer_per_cpu *cpu_buffer,
> * This function lets the user discard an event in the ring buffer
> * and then that event will not be read later.
> *
> - * This function only works if it is called before the the item has been
> + * This function only works if it is called before the item has been
> * committed. It will try to free the event from the ring buffer
> * if another event has not been added behind it.
> *
> diff --git a/lib/bitmap.c b/lib/bitmap.c
> index 06f7e4f..8fa2ad3 100644
> --- a/lib/bitmap.c
> +++ b/lib/bitmap.c
> @@ -882,7 +882,7 @@ EXPORT_SYMBOL(bitmap_bitremap);
> * read it, you're overqualified for your current job.)
> *
> * In other words, @orig is mapped onto (surjectively) @dst,
> - * using the the map { <n, m> | the n-th bit of @relmap is the
> + * using the map { <n, m> | the n-th bit of @relmap is the
> * m-th set bit of @relmap }.
> *
> * Any set bits in @orig above bit number W, where W is the
> diff --git a/lib/dynamic_queue_limits.c b/lib/dynamic_queue_limits.c
> index 0777c5a..2ad6fc3 100644
> --- a/lib/dynamic_queue_limits.c
> +++ b/lib/dynamic_queue_limits.c
> @@ -60,7 +60,7 @@ void dql_completed(struct dql *dql, unsigned int count)
> * the whole interval (the check above).
> *
> * If there is slack, the amount of execess data queued above
> - * the the amount needed to prevent starvation, the queue limit
> + * the amount needed to prevent starvation, the queue limit
> * can be decreased. To avoid hysteresis we consider the
> * minimum amount of slack found over several iterations of the
> * completion routine.
> diff --git a/lib/earlycpio.c b/lib/earlycpio.c
> index 3eb3e47..9d4da0a 100644
> --- a/lib/earlycpio.c
> +++ b/lib/earlycpio.c
> @@ -50,7 +50,7 @@ enum cpio_fields {
> /**
> * cpio_data find_cpio_data - Search for files in an uncompressed cpio
> * @path: The directory to search for, including a slash at the end
> - * @data: Pointer to the the cpio archive or a header inside
> + * @data: Pointer to the cpio archive or a header inside
> * @len: Remaining length of the cpio based on data pointer
> * @nextoff: When a matching file is found, this is the offset from the
> * beginning of the cpio to the beginning of the next file, not the
> diff --git a/lib/syscall.c b/lib/syscall.c
> index 58710ee..90fc637 100644
> --- a/lib/syscall.c
> +++ b/lib/syscall.c
> @@ -31,7 +31,7 @@ static int collect_syscall(struct task_struct *target, long *callno,
> * @pc: filled with user PC
> *
> * If @target is blocked in a system call, returns zero with *@...lno
> - * set to the the call's number and @args filled in with its arguments.
> + * set to the call's number and @args filled in with its arguments.
> * Registers not used for system call arguments may not be available and
> * it is not kosher to use &struct user_regset calls while the system
> * call is still in progress. Note we may get this result if @target
> diff --git a/mm/hugetlb.c b/mm/hugetlb.c
> index b49579c..a81ee77 100644
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -1139,7 +1139,7 @@ static void return_unused_surplus_pages(struct hstate *h,
> * evenly across all nodes with memory. Iterate across these nodes
> * until we can no longer free unreserved surplus pages. This occurs
> * when the nodes with surplus pages have no free pages.
> - * free_pool_huge_page() will balance the the freed pages across the
> + * free_pool_huge_page() will balance the freed pages across the
> * on-line nodes with memory and will handle the hstate accounting.
> */
> while (nr_pages--) {
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 0ee638f..9812fa1 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4116,7 +4116,7 @@ static int __meminit zone_batchsize(struct zone *zone)
> * locking.
> *
> * Any new users of pcp->batch and pcp->high should ensure they can cope with
> - * those fields changing asynchronously (acording the the above rule).
> + * those fields changing asynchronously (according to the above rule).
> *
> * mutex_is_locked(&pcp_batch_high_lock) required when calling this function
> * outside of boot time (or some other assurance that no concurrent updaters
> diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c
> index f081712..f87b46f 100644
> --- a/net/bluetooth/hci_conn.c
> +++ b/net/bluetooth/hci_conn.c
> @@ -703,7 +703,7 @@ static int hci_conn_auth(struct hci_conn *conn, __u8 sec_level, __u8 auth_type)
> return 0;
> }
>
> -/* Encrypt the the link */
> +/* Encrypt the link */
> static void hci_conn_encrypt(struct hci_conn *conn)
> {
> BT_DBG("hcon %p", conn);
> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> index 634deba..add9fd7 100644
> --- a/net/bluetooth/hci_core.c
> +++ b/net/bluetooth/hci_core.c
> @@ -616,7 +616,7 @@ static void hci_init3_req(struct hci_request *req, unsigned long opt)
> * Delete Stored Link Key command. They are clearly indicating its
> * absence in the bit mask of supported commands.
> *
> - * Check the supported commands and only if the the command is marked
> + * Check the supported commands and only if the command is marked
> * as supported send it. If not supported assume that the controller
> * does not have actual support for stored link keys which makes this
> * command redundant anyway.
> diff --git a/net/sctp/chunk.c b/net/sctp/chunk.c
> index 7bd5ed4..4a8d5cc 100644
> --- a/net/sctp/chunk.c
> +++ b/net/sctp/chunk.c
> @@ -200,7 +200,7 @@ struct sctp_datamsg *sctp_datamsg_from_user(struct sctp_association *asoc,
> sizeof(struct sctphdr) - sizeof(struct sctp_data_chunk)) & ~3;
>
> max = asoc->frag_point;
> - /* If the the peer requested that we authenticate DATA chunks
> + /* If the peer requested that we authenticate DATA chunks
> * we need to accound for bundling of the AUTH chunks along with
> * DATA.
> */
> diff --git a/net/sunrpc/auth_generic.c b/net/sunrpc/auth_generic.c
> index f6d84be..856e05f 100644
> --- a/net/sunrpc/auth_generic.c
> +++ b/net/sunrpc/auth_generic.c
> @@ -184,7 +184,7 @@ void rpc_destroy_generic_auth(void)
> }
>
> /*
> - * Test the the current time (now) against the underlying credential key expiry
> + * Test the current time (now) against the underlying credential key expiry
> * minus a timeout and setup notification.
> *
> * The normal case:
> diff --git a/net/tipc/link.c b/net/tipc/link.c
> index 0cc3d90..c243712 100644
> --- a/net/tipc/link.c
> +++ b/net/tipc/link.c
> @@ -920,7 +920,7 @@ int tipc_link_send_buf(struct tipc_link *l_ptr, struct sk_buff *buf)
>
> /*
> * tipc_link_send(): same as tipc_link_send_buf(), but the link to use has
> - * not been selected yet, and the the owner node is not locked
> + * not been selected yet, and the owner node is not locked
> * Called by TIPC internal users, e.g. the name distributor
> */
> int tipc_link_send(struct sk_buff *buf, u32 dest, u32 selector)
> diff --git a/net/wimax/op-rfkill.c b/net/wimax/op-rfkill.c
> index 7ab60ba..123539f 100644
> --- a/net/wimax/op-rfkill.c
> +++ b/net/wimax/op-rfkill.c
> @@ -135,7 +135,7 @@ EXPORT_SYMBOL_GPL(wimax_report_rfkill_hw);
> * @state: New state of the RF kill switch. %WIMAX_RF_ON radio on,
> * %WIMAX_RF_OFF radio off.
> *
> - * Reports changes in the software RF switch state to the the WiMAX
> + * Reports changes in the software RF switch state to the WiMAX
> * stack.
> *
> * The main use is during initialization, so the driver can query the
> diff --git a/scripts/tracing/draw_functrace.py b/scripts/tracing/draw_functrace.py
> index db40fa0..9eb8c74 100644
> --- a/scripts/tracing/draw_functrace.py
> +++ b/scripts/tracing/draw_functrace.py
> @@ -8,7 +8,7 @@ This script parses a trace provided by the function tracer in
> kernel/trace/trace_functions.c
> The resulted trace is processed into a tree to produce a more human
> view of the call stack by drawing textual but hierarchical tree of
> -calls. Only the functions's names and the the call time are provided.
> +calls. Only the functions's names and the call time are provided.
>
> Usage:
> Be sure that you have CONFIG_FUNCTION_TRACER
> diff --git a/security/apparmor/context.c b/security/apparmor/context.c
> index 3064c6c..7b9769e 100644
> --- a/security/apparmor/context.c
> +++ b/security/apparmor/context.c
> @@ -13,7 +13,7 @@
> * License.
> *
> *
> - * AppArmor sets confinement on every task, via the the aa_task_cxt and
> + * AppArmor sets confinement on every task, via the aa_task_cxt and
> * the aa_task_cxt.profile, both of which are required and are not allowed
> * to be NULL. The aa_task_cxt is not reference counted and is unique
> * to each cred (which is reference count). The profile pointed to by
> diff --git a/security/keys/keyctl.c b/security/keys/keyctl.c
> index 33cfd27..3969a80 100644
> --- a/security/keys/keyctl.c
> +++ b/security/keys/keyctl.c
> @@ -459,7 +459,7 @@ error:
> * keyring, otherwise replace the link to the matching key with a link to the
> * new key.
> *
> - * The key must grant the caller Link permission and the the keyring must grant
> + * The key must grant the caller Link permission and the keyring must grant
> * the caller Write permission. Furthermore, if an additional link is created,
> * the keyring's quota will be extended.
> *
> diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
> index 5b6c4e3..cca0e93 100644
> --- a/sound/pci/hda/hda_codec.c
> +++ b/sound/pci/hda/hda_codec.c
> @@ -4981,7 +4981,7 @@ EXPORT_SYMBOL_HDA(snd_hda_power_save);
> * @nid: NID to check / update
> *
> * Check whether the given NID is in the amp list. If it's in the list,
> - * check the current AMP status, and update the the power-status according
> + * check the current AMP status, and update the power-status according
> * to the mute status.
> *
> * This function is supposed to be set or called from the check_power_status
> diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
> index fba0cef..c0f4058 100644
> --- a/sound/pci/hda/patch_sigmatel.c
> +++ b/sound/pci/hda/patch_sigmatel.c
> @@ -858,7 +858,7 @@ static int stac_auto_create_beep_ctls(struct hda_codec *codec,
> static struct snd_kcontrol_new beep_vol_ctl =
> HDA_CODEC_VOLUME(NULL, 0, 0, 0);
>
> - /* check for mute support for the the amp */
> + /* check for mute support for the amp */
> if ((caps & AC_AMPCAP_MUTE) >> AC_AMPCAP_MUTE_SHIFT) {
> const struct snd_kcontrol_new *temp;
> if (spec->anabeep_nid == nid)
> diff --git a/sound/pci/ice1712/prodigy192.c b/sound/pci/ice1712/prodigy192.c
> index e610339..6f8e563 100644
> --- a/sound/pci/ice1712/prodigy192.c
> +++ b/sound/pci/ice1712/prodigy192.c
> @@ -31,7 +31,7 @@
> * Experimentally I found out that only a combination of
> * OCKS0=1, OCKS1=1 (128fs, 64fs output) and ice1724 -
> * VT1724_MT_I2S_MCLK_128X=0 (256fs input) yields correct
> - * sampling rate. That means the the FPGA doubles the
> + * sampling rate. That means that the FPGA doubles the
> * MCK01 rate.
> *
> * Copyright (c) 2003 Takashi Iwai <tiwai@...e.de>
> diff --git a/sound/soc/codecs/wm9713.c b/sound/soc/codecs/wm9713.c
> index a53e175..6022481 100644
> --- a/sound/soc/codecs/wm9713.c
> +++ b/sound/soc/codecs/wm9713.c
> @@ -694,7 +694,7 @@ static void pll_factors(struct _pll_div *pll_div, unsigned int source)
> u64 Kpart;
> unsigned int K, Ndiv, Nmod, target;
>
> - /* The the PLL output is always 98.304MHz. */
> + /* The PLL output is always 98.304MHz. */
> target = 98304000;
>
> /* If the input frequency is over 14.4MHz then scale it down. */
> diff --git a/sound/soc/fsl/fsl_dma.c b/sound/soc/fsl/fsl_dma.c
> index 9cc5c1f..54f9a36 100644
> --- a/sound/soc/fsl/fsl_dma.c
> +++ b/sound/soc/fsl/fsl_dma.c
> @@ -169,7 +169,7 @@ static void fsl_dma_abort_stream(struct snd_pcm_substream *substream)
> /**
> * fsl_dma_update_pointers - update LD pointers to point to the next period
> *
> - * As each period is completed, this function changes the the link
> + * As each period is completed, this function changes the link
> * descriptor pointers for that period to point to the next period.
> */
> static void fsl_dma_update_pointers(struct fsl_dma_private *dma_private)
> diff --git a/sound/soc/fsl/fsl_ssi.c b/sound/soc/fsl/fsl_ssi.c
> index c6b7439..0ab23e4 100644
> --- a/sound/soc/fsl/fsl_ssi.c
> +++ b/sound/soc/fsl/fsl_ssi.c
> @@ -1020,7 +1020,7 @@ static int fsl_ssi_probe(struct platform_device *pdev)
> }
> }
>
> - /* Initialize the the device_attribute structure */
> + /* Initialize the device_attribute structure */
> dev_attr = &ssi_private->dev_attr;
> sysfs_attr_init(&dev_attr->attr);
> dev_attr->attr.name = "statistics";
> diff --git a/sound/sparc/dbri.c b/sound/sparc/dbri.c
> index eee7afc..a28b953 100644
> --- a/sound/sparc/dbri.c
> +++ b/sound/sparc/dbri.c
> @@ -615,7 +615,7 @@ A circular command buffer is used here. A new command is being added
> while another can be executed. The scheme works by adding two WAIT commands
> after each sent batch of commands. When the next batch is prepared it is
> added after the WAIT commands then the WAITs are replaced with single JUMP
> -command to the new batch. The the DBRI is forced to reread the last WAIT
> +command to the new batch. The DBRI is forced to reread the last WAIT
> command (replaced by the JUMP by then). If the DBRI is still executing
> previous commands the request to reread the WAIT command is ignored.
>
> diff --git a/tools/perf/Documentation/perf-diff.txt b/tools/perf/Documentation/perf-diff.txt
> index fdfceee..29b9bcd 100644
> --- a/tools/perf/Documentation/perf-diff.txt
> +++ b/tools/perf/Documentation/perf-diff.txt
> @@ -180,7 +180,7 @@ If specified the 'Weighted diff' column is displayed with value 'd' computed as:
>
> - period being the hist entry period value
>
> - - WEIGHT-A/WEIGHT-B being user suplied weights in the the '-c' option
> + - WEIGHT-A/WEIGHT-B being user suplied weights in the '-c' option
> behind ':' separator like '-c wdiff:1,2'.
> - WIEGHT-A being the weight of the data file
> - WIEGHT-B being the weight of the baseline data file
> diff --git a/tools/power/x86/turbostat/turbostat.8 b/tools/power/x86/turbostat/turbostat.8
> index b4ddb74..7e8aa3f 100644
> --- a/tools/power/x86/turbostat/turbostat.8
> +++ b/tools/power/x86/turbostat/turbostat.8
> @@ -35,9 +35,9 @@ The \fB-c MSR#\fP option includes the delta of the specified 32-bit MSR counter.
> .PP
> The \fB-C MSR#\fP option includes the delta of the specified 64-bit MSR counter.
> .PP
> -The \fB-m MSR#\fP option includes the the specified 32-bit MSR value.
> +The \fB-m MSR#\fP option includes the specified 32-bit MSR value.
> .PP
> -The \fB-M MSR#\fP option includes the the specified 64-bit MSR value.
> +The \fB-M MSR#\fP option includes the specified 64-bit MSR value.
> .PP
> The \fB-i interval_sec\fP option prints statistics every \fiinterval_sec\fP seconds.
> The default is 5 seconds.
> --
> 1.8.1.2
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists