1. 24 12月, 2009 3 次提交
  2. 12 12月, 2009 23 次提交
  3. 10 12月, 2009 1 次提交
    • C
      vfs: Implement proper O_SYNC semantics · 6b2f3d1f
      Christoph Hellwig 提交于
      While Linux provided an O_SYNC flag basically since day 1, it took until
      Linux 2.4.0-test12pre2 to actually get it implemented for filesystems,
      since that day we had generic_osync_around with only minor changes and the
      great "For now, when the user asks for O_SYNC, we'll actually give
      O_DSYNC" comment.  This patch intends to actually give us real O_SYNC
      semantics in addition to the O_DSYNC semantics.  After Jan's O_SYNC
      patches which are required before this patch it's actually surprisingly
      simple, we just need to figure out when to set the datasync flag to
      vfs_fsync_range and when not.
      
      This patch renames the existing O_SYNC flag to O_DSYNC while keeping it's
      numerical value to keep binary compatibility, and adds a new real O_SYNC
      flag.  To guarantee backwards compatiblity it is defined as expanding to
      both the O_DSYNC and the new additional binary flag (__O_SYNC) to make
      sure we are backwards-compatible when compiled against the new headers.
      
      This also means that all places that don't care about the differences can
      just check O_DSYNC and get the right behaviour for O_SYNC, too - only
      places that actuall care need to check __O_SYNC in addition.  Drivers and
      network filesystems have been updated in a fail safe way to always do the
      full sync magic if O_DSYNC is set.  The few places setting O_SYNC for
      lower layers are kept that way for now to stay failsafe.
      
      We enforce that O_DSYNC is set when __O_SYNC is set early in the open path
      to make sure we always get these sane options.
      
      Note that parisc really screwed up their headers as they already define a
      O_DSYNC that has always been a no-op.  We try to repair it by using it for
      the new O_DSYNC and redefinining O_SYNC to send both the traditional
      O_SYNC numerical value _and_ the O_DSYNC one.
      
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Grant Grundler <grundler@parisc-linux.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Andreas Dilger <adilger@sun.com>
      Acked-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      Acked-by: NKyle McMartin <kyle@mcmartin.ca>
      Acked-by: NUlrich Drepper <drepper@redhat.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJan Kara <jack@suse.cz>
      6b2f3d1f
  4. 04 12月, 2009 1 次提交
  5. 01 12月, 2009 1 次提交
  6. 23 11月, 2009 1 次提交
    • C
      omap1: omap_udc: Add clocking and disable vbus sense for omap7xx · 45f780a0
      Cory Maccarrone 提交于
      The l3_ocpi_ck clock is needed on omap7xx processors for USB.
      Additionally, bit 8 of the SOFT_REQ_REG needs to be enabled for
      the usb_dc_ck on omap7xx, which is a different bit than that
      of the omap16xx-defined clock of the same name.
      
      I added a provision for the usb_dc_ck and l3_ocpi_ck clocks as
      dc_clk and hhc_clk, respectively, for omap7xx CPUs.  Additionally,
      I added a check in machine_without_vbus_sense for all omap7xx
      devices, as presently I know of no omap7xx-based devices that
      have vbus sense, and it made more sense to me to use a cpu check
      here than to spell out each machine one at a time.  Finally, DMA
      is disabled for omap7xx, as it causes problems with these chips.
      
      Cc: linux-usb@vger.kernel.org
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NCory Maccarrone <darkstar6262@gmail.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      45f780a0
  7. 12 11月, 2009 1 次提交
  8. 31 10月, 2009 1 次提交
    • A
      USB: fsl_udc_core: Fix kernel oops on module removal · 37c4fd8c
      Anton Vorontsov 提交于
      fsl_udc_release() calls dma_free_coherent() with an inappropriate
      device passed to it, and since the device has no dma_ops, the following
      oops pops up:
      
        Kernel BUG at d103ce9c [verbose debug info unavailable]
        Oops: Exception in kernel mode, sig: 5 [#1]
        ...
        NIP [d103ce9c] fsl_udc_release+0x50/0x80 [fsl_usb2_udc]
        LR [d103ce74] fsl_udc_release+0x28/0x80 [fsl_usb2_udc]
        Call Trace:
        [cfbc7dc0] [d103ce74] fsl_udc_release+0x28/0x80 [fsl_usb2_udc]
        [cfbc7dd0] [c01a35c4] device_release+0x2c/0x90
        [cfbc7de0] [c016b480] kobject_cleanup+0x58/0x98
        [cfbc7e00] [c016c52c] kref_put+0x54/0x6c
        [cfbc7e10] [c016b360] kobject_put+0x34/0x64
        [cfbc7e20] [c01a1d0c] put_device+0x1c/0x2c
        [cfbc7e30] [d103dbfc] fsl_udc_remove+0xc0/0x1e4 [fsl_usb2_udc]
        ...
      
      This patch fixes the issue by passing dev->parent, which points to
      a correct device.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: Li Yang <leoli@freescale.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: Guennadi Liakhovetski <lg@denx.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      37c4fd8c
  9. 21 10月, 2009 2 次提交
    • R
      ARM: Fix lubbock defconfig build · 09963911
      Russell King 提交于
      drivers/built-in.o: In function `pxa25x_udc_probe':
      drivers/usb/gadget/pxa25x_udc.c:2195: undefined reference to `otg_get_transceiver'
      drivers/usb/gadget/pxa25x_udc.c:2300: undefined reference to `otg_put_transceiver'
      
      pxa25x_udc.c unconditionally uses these two functions, so we need to
      ensure that the object providing them is also built.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      09963911
    • T
      omap: headers: Move remaining headers from include/mach to include/plat · ce491cf8
      Tony Lindgren 提交于
      Move the remaining headers under plat-omap/include/mach
      to plat-omap/include/plat. Also search and replace the
      files using these headers to include using the right path.
      
      This was done with:
      
      #!/bin/bash
      mach_dir_old="arch/arm/plat-omap/include/mach"
      plat_dir_new="arch/arm/plat-omap/include/plat"
      headers=$(cd $mach_dir_old && ls *.h)
      omap_dirs="arch/arm/*omap*/ \
      drivers/video/omap \
      sound/soc/omap"
      other_files="drivers/leds/leds-ams-delta.c \
      drivers/mfd/menelaus.c \
      drivers/mfd/twl4030-core.c \
      drivers/mtd/nand/ams-delta.c"
      
      for header in $headers; do
      	old="#include <mach\/$header"
      	new="#include <plat\/$header"
      	for dir in $omap_dirs; do
      		find $dir -type f -name \*.[chS] | \
      			xargs sed -i "s/$old/$new/"
      	done
      	find drivers/ -type f -name \*omap*.[chS] | \
      		xargs sed -i "s/$old/$new/"
      	for file in $other_files; do
      		sed -i "s/$old/$new/" $file
      	done
      done
      
      for header in $(ls $mach_dir_old/*.h); do
      	git mv $header $plat_dir_new/
      done
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      ce491cf8
  10. 15 10月, 2009 1 次提交
  11. 10 10月, 2009 1 次提交
  12. 06 10月, 2009 1 次提交
    • M
      usb: r8a66597-udc unaligned fifo fix · 59c82d12
      Magnus Damm 提交于
      Rework the r8a66597-udc fifo code to avoid unaligned accesses.
      
      Without this patch unaligned exceptions will degrade the
      USB performance. The exceptions come from the fact that
      the usb fifo data buffers may be misaligned.
      
      This patch updates the fifo access code to only use
      insl()/outsl() and insw()/outsw() in the case of properly
      aligned data buffers. The fallback case is that inl()/inw()
      are used for misaligned buffer reads together with outb()
      that is used for misaligned buffer writes.
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      59c82d12
  13. 05 10月, 2009 1 次提交
  14. 02 10月, 2009 1 次提交
  15. 24 9月, 2009 1 次提交