13 Dec, 2009

5 commits

  • * 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6:
    IXP4xx: GTWX5715 platform only has two PCI IRQ lines, not four.
    IXP4xx: Introduce IXP4XX_GPIO_IRQ(n) macro and convert IXP4xx platform files.
    IXP4xx: move Gemtek GTWX5715 platform macros to the platform code.
    IXP4xx: Remove unused Motorola PrPMC1100 platform macros.
    IXP4xx: move FSG platform macros to the platform code.
    IXP4xx: move DSM G600 platform macros to the platform code.
    IXP4xx: move NAS100D platform macros to the platform code.
    IXP4xx: move NSLU2 platform macros to the platform code.
    IXP4xx: move Coyote platform macros to the platform code.
    IXP4xx: move AVILA platform macros to the platform code.
    IXP4xx: move IXDP425 platform macros to the platform code.
    IXP4xx: Extend PCI MMIO indirect address space to 1 GB.
    IXP4xx: Fix compilation failure with CONFIG_IXP4XX_INDIRECT_PCI.
    IXP4xx: Drop "__ixp4xx_" prefix from in/out/ioread/iowrite functions for clarity.
    IXP4xx: Rename indirect MMIO primitives from __ixp4xx_* to __indirect_*.
    IXP4xx: Ensure index is positive in irq_to_gpio() and npe_request().
    ARM: fix insl() and outsl() endianness on IXP4xx architecture.
    IXP4xx: Fix normally-disabled debugging text in drivers/net/arm/ixp4xx_eth.c.
    IXP4xx: change the timer base frequency to 66.666000 MHz.

    Linus Torvalds
     
  • The fasync path takes the BKL (it probably doesn't need to in fact)
    while holding the file_list spinlock. You can't do that with the kernel
    lock: it causes lock inversions and deadlocks.

    Leave the BKL over that bit for the moment.

    Identified by AKPM.

    Signed-off-by: Alan Cox
    Acked-and-Tested-by: Thomas Gleixner
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (151 commits)
    powerpc: Fix usage of 64-bit instruction in 32-bit altivec code
    MAINTAINERS: Add PowerPC patterns
    powerpc/pseries: Track previous CPPR values to correctly EOI interrupts
    powerpc/pseries: Correct pseries/dlpar.c build break without CONFIG_SMP
    powerpc: Make "intspec" pointers in irq_host->xlate() const
    powerpc/8xx: DTLB Miss cleanup
    powerpc/8xx: Remove DIRTY pte handling in DTLB Error.
    powerpc/8xx: Start using dcbX instructions in various copy routines
    powerpc/8xx: Restore _PAGE_WRITETHRU
    powerpc/8xx: Add missing Guarded setting in DTLB Error.
    powerpc/8xx: Fixup DAR from buggy dcbX instructions.
    powerpc/8xx: Tag DAR with 0x00f0 to catch buggy instructions.
    powerpc/8xx: Update TLB asm so it behaves as linux mm expects.
    powerpc/8xx: Invalidate non present TLBs
    powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate
    pseries/pseries: Add code to online/offline CPUs of a DLPAR node
    powerpc: stop_this_cpu: remove the cpu from the online map.
    powerpc/pseries: Add kernel based CPU DLPAR handling
    sysfs/cpu: Add probe/release files
    powerpc/pseries: Kernel DLPAR Infrastructure
    ...

    Linus Torvalds
     
  • * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (75 commits)
    omap3: Fix OMAP35XX_REV macros
    omap: serial: fix non-empty uart fifo read abort
    omap3: Zoom2/3: Update hsmmc board config params
    omap3 : Enable TWL4030 Keypad for Zoom2 and Zoom3 boards
    omap3: id code detection 3525 vs 3515
    omap3: rx51: Use wl1251 in SPI mode 3
    omap3: zoom2/3: make MMC slot work again
    omap1: htcherald: Update defconfig to include mux support
    omap1: LCD_DMA: Use some define rather than a hexadecimal
    omap: header: remove unused data-type
    omap: arch/arm/plat-omap/devices.c - sort alphabetically
    omap: Correcting GPMC_CONFIG1_DEVICETYPE_NAND
    OMAP3: serial - allow platforms specify which UARTs to initialize
    omap3: cm-t35: add mux initialization
    OMAP4: Sync up omap4430 defconfig
    OMAP4: Remove the secondary wait loop
    OMAP4: AuxCoreBoot registers only accessible in secure mode
    OMAP4: Fix SRAM base and size
    OMAP4: Fix cpu detection
    omap3: pandora: board file updates for .33
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    be2net: fix error in rx completion processing.
    igbvf: avoid reset storms due to mailbox issues
    igb: fix handling of mailbox collisions between PF/VF
    usb: remove rare pm primitive for conversion to new API

    Linus Torvalds
     

12 Dec, 2009

35 commits

  • There are certain skews of the NIC which have multiple bits set in
    adapter->cap. Use & instead of == to process rx completions.

    Signed-off-by: Ajit Khaparde
    Signed-off-by: David S. Miller

    Ajit Khaparde
     
  • From: Alexander Duyck

    This change makes it so that reset/interrupt storms can be avoided when
    there are mailbox issues. The new behavior is to only allow the device to
    trigger mailbox related resets only once every 10 seconds.

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • This patch changes the handling of collisions between the use of the
    PF/VF sides of the mailbox.

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • This patch removes a rare use of the USB power management API which
    won't be supported after the conversion to the new generic runtime power
    management framework. Functionality is not altered.

    Signed-off-by: Oliver Neukum
    Signed-off-by: David S. Miller

    Oliver Neukum
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (75 commits)
    net: Handle NETREG_UNINITIALIZED devices correctly
    can: add the driver for Analog Devices Blackfin on-chip CAN controllers
    xfrm: Fix truncation length of authentication algorithms installed via PF_KEY
    net: use compat helper functions in compat_sys_recvmmsg
    net: fix compat_sys_recvmmsg parameter type
    cxgb3: Fixing EEH handlers
    cnic: Zero out status block and Event Queue indices.
    cnic: Send delete command when shutting down iSCSI ring.
    net: smc91x: Fix up type mismatch in smc_drv_resume().
    smc91x: fix unused flags warnings on UP systems
    MAINTAINERS: Transfering maintainership of cdc-ether
    net: Add missing TST_CFG_WRITE bits around sky2_pci_write
    net: Fix Yukon-2 Optima TCP offload setup
    net: niu uses crc32, so select CRC32
    wireless: update old static regulatory domain rules
    mac80211: Revert 'Use correct sign for mesh active path refresh'
    mac80211: Fixed bug in mesh portal paths
    net/mac80211: Correct size given to memset
    b43: Remove reset after fatal DMA error
    rtl8187: add radio led and fix warnings on suspend
    ...

    Linus Torvalds
     
  • * 'compat-ioctl-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground:
    usbdevfs: move compat_ioctl handling to devio.c
    lp: move compat_ioctl handling into lp.c
    compat_ioctl: pass compat pointer directly to handlers
    compat_ioctl: simplify lookup table
    compat_ioctl: simplify calling of handlers
    compat_ioctl: inline all conversion handlers
    compat_ioctl: Remove BKL
    compat_ioctl: remove all VT ioctl handling

    Linus Torvalds
     
  • * 'for-linus' of git://codeaurora.org/quic/kernel/dwalker/linux-msm:
    HTC Dream: mmc compilation fixes
    video: Allow selecting MSM framebuffer in Kconfig
    Add arm msm maintainer entry
    msm: Add memory map for HTC Dream
    msm: add minimal board file for HTC Dream device
    msm: make debugging UART (for DEBUG_LL) configurable

    Linus Torvalds
     
  • Conflicts:
    include/net/tcp.h

    David S. Miller
     
  • The patch corrects the issue introduced with one of my earlier patches:
    OMAP: DMA: Fix omapfb/lcdc on OMAP1510 broken when PM set[1]
    as pointed out by OMAP subsystem maintainer.

    Applies on top of my prevoius patch:
    OMAP: DMA: move LCD DMA related code from plat-omap to mach-omap1[2]

    Tested on Amstrad Delta
    Compile tested with omap_generic_2420_defconfig

    [1] http://patchwork.kernel.org/patch/57922/
    [2] http://patchwork.kernel.org/patch/61952/

    Signed-off-by: Janusz Krzysztofik
    Signed-off-by: Tony Lindgren

    Janusz Krzysztofik
     
  • Now that all OMAP boards are using the board resources, we don't need
    to keep the arch/board specific crap in the driver header.

    Cc: linux-net@vger.kernel.org
    Acked-by: Nicolas Pitre
    Signed-off-by: Ladislav Michl
    Signed-off-by: Tony Lindgren

    Ladislav Michl
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
    [ACPI/CPUFREQ] Introduce bios_limit per cpu cpufreq sysfs interface
    [CPUFREQ] make internal cpufreq_add_dev_* static
    [CPUFREQ] use an enum for speedstep processor identification
    [CPUFREQ] Document units for transition latency
    [CPUFREQ] Use global sysfs cpufreq structure for conservative governor tunings
    [CPUFREQ] Documentation: ABI: /sys/devices/system/cpu/cpu#/cpufreq/
    [CPUFREQ] powernow-k6: set transition latency value so ondemand governor can be used
    [CPUFREQ] cpumask: don't put a cpumask on the stack in x86...cpufreq/powernow-k8.c

    Linus Torvalds
     
  • The debug batman option needs to depend on the correct
    config option.

    Signed-off-by: Greg Kroah-Hartman
    [ "No means no!" - Linus ]
    Signed-off-by: Linus Torvalds

    Greg Kroah-Hartman
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (58 commits)
    tty: split the lock up a bit further
    tty: Move the leader test in disassociate
    tty: Push the bkl down a bit in the hangup code
    tty: Push the lock down further into the ldisc code
    tty: push the BKL down into the handlers a bit
    tty: moxa: split open lock
    tty: moxa: Kill the use of lock_kernel
    tty: moxa: Fix modem op locking
    tty: moxa: Kill off the throttle method
    tty: moxa: Locking clean up
    tty: moxa: rework the locking a bit
    tty: moxa: Use more tty_port ops
    tty: isicom: fix deadlock on shutdown
    tty: mxser: Use the new locking rules to fix setserial properly
    tty: mxser: use the tty_port_open method
    tty: isicom: sort out the board init logic
    tty: isicom: switch to the new tty_port_open helper
    tty: tty_port: Add a kref object to the tty port
    tty: istallion: tty port open/close methods
    tty: stallion: Convert to the tty_port_open/close methods
    ...

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6: (21 commits)
    ext3: PTR_ERR return of wrong pointer in setup_new_group_blocks()
    ext3: Fix data / filesystem corruption when write fails to copy data
    ext4: Support for 64-bit quota format
    ext3: Support for vfsv1 quota format
    quota: Implement quota format with 64-bit space and inode limits
    quota: Move definition of QFMT_OCFS2 to linux/quota.h
    ext2: fix comment in ext2_find_entry about return values
    ext3: Unify log messages in ext3
    ext2: clear uptodate flag on super block I/O error
    ext2: Unify log messages in ext2
    ext3: make "norecovery" an alias for "noload"
    ext3: Don't update the superblock in ext3_statfs()
    ext3: journal all modifications in ext3_xattr_set_handle
    ext2: Explicitly assign values to on-disk enum of filetypes
    quota: Fix WARN_ON in lookup_one_len
    const: struct quota_format_ops
    ubifs: remove manual O_SYNC handling
    afs: remove manual O_SYNC handling
    kill wait_on_page_writeback_range
    vfs: Implement proper O_SYNC semantics
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (235 commits)
    Staging: IIO: add selection of IIO_SW_RING to LIS3L02DQ as needed
    Staging: IIO: Add tsl2560-2 support to tsl2563 driver.
    Staging: IIO: Remove tsl2561 driver. Support merged with tsl2563.
    Staging: wlags49_h2: fix up signal levels
    + drivers-staging-wlags49_h2-remove-cvs-metadata.patch added to -mm tree
    Staging: samsung-laptop: add TODO file
    Staging: samsung-laptop: remove old kernel code
    Staging: add Samsung Laptop driver
    staging: batman-adv meshing protocol
    Staging: rtl8192u: depends on USB
    Staging: rtl8192u: remove dead code
    Staging: rtl8192u: remove bad whitespaces
    Staging: rtl8192u: make it compile
    Staging: Added Realtek rtl8192u driver to staging
    Staging: dream: add gpio and pmem support
    Staging: dream: add TODO file
    Staging: android: delete android drivers
    Staging: et131x: clean up the avail fields in the rx registers
    Staging: et131x: Clean up number fields
    Staging: et131x: kill RX_DMA_MAX_PKT_TIME
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (27 commits)
    Driver core: fix race in dev_driver_string
    Driver Core: Early platform driver buffer
    sysfs: sysfs_setattr remove unnecessary permission check.
    sysfs: Factor out sysfs_rename from sysfs_rename_dir and sysfs_move_dir
    sysfs: Propagate renames to the vfs on demand
    sysfs: Gut sysfs_addrm_start and sysfs_addrm_finish
    sysfs: In sysfs_chmod_file lazily propagate the mode change.
    sysfs: Implement sysfs_getattr & sysfs_permission
    sysfs: Nicely indent sysfs_symlink_inode_operations
    sysfs: Update s_iattr on link and unlink.
    sysfs: Fix locking and factor out sysfs_sd_setattr
    sysfs: Simplify iattr time assignments
    sysfs: Simplify sysfs_chmod_file semantics
    sysfs: Use dentry_ops instead of directly playing with the dcache
    sysfs: Rename sysfs_d_iput to sysfs_dentry_iput
    sysfs: Update sysfs_setxattr so it updates secdata under the sysfs_mutex
    debugfs: fix create mutex racy fops and private data
    Driver core: Don't remove kobjects in device_shutdown.
    firmware_class: make request_firmware_nowait more useful
    Driver-Core: devtmpfs - set root directory mode to 0755
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (122 commits)
    USB: mos7840: add device IDs for B&B electronics devices
    USB: ftdi_sio: add USB device ID's for B&B Electronics line
    USB: musb: musb_host: fix sparse warning
    USB: musb: musb_gadget: fix sparse warning
    USB: musb: omap2430: fix sparse warning
    USB: core: message: fix sparse warning
    USB: core: hub: fix sparse warning
    USB: core: fix sparse warning for static function
    USB: Added USB_ETH_RNDIS to use instead of CONFIG_USB_ETH_RNDIS
    USB: Check bandwidth when switching alt settings.
    USB: Refactor code to find alternate interface settings.
    USB: xhci: Fix command completion after a drop endpoint.
    USB: xhci: Make reverting an alt setting "unfailable".
    USB: usbtmc: Use usb_clear_halt() instead of custom code.
    USB: xhci: Add correct email and files to MAINTAINERS entry.
    USB: ehci-omap.c: introduce missing kfree
    USB: xhci-mem.c: introduce missing kfree
    USB: add remove_id sysfs attr for usb drivers
    USB: g_multi kconfig: fix depends and help text
    USB: option: add pid for ZTE
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: ohci: handle receive packets with a data length of zero

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:
    kgdb: Always process the whole breakpoint list on activate or deactivate
    kgdb: continue and warn on signal passing from gdb
    kgdb,x86: do not set kgdb_single_step on x86
    kgdb: allow for cpu switch when single stepping
    kgdb,i386: Fix corner case access to ss with NMI watch dog exception
    kgdb: Replace strstr() by strchr() for single-character needles
    kgdbts: Read buffer overflow
    kgdb: Read buffer overflow
    kgdb,x86: remove redundant test

    Linus Torvalds
     
  • The tty count sanity check may need the BKL, that isn't clear. However it
    is clear that the count use of the lock is internal and independant of the
    bigger use of the lock.

    Furthermore the file list locking is also separately locked already

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • There are two call points, both want to check that tty->signal->leader is
    set. Move the test into disassociate_ctty() as that will make locking
    changes easier in a bit

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • We know that the redirect field is handled via its own locking in all
    places

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Start trying to untangle the remaining BKL mess

    Updated to fix missing unlock_kernel noted by Dan Carpenter

    Signed-off-by: Alan "I must be out of my tree" Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • moxa_openlock is used for several situations where we want to handle the
    case of an ioctl that crosses many ports (not just the open tty), and also
    cases where an open races a deinit (eg a pci unplug) and we hangup a port
    before we can cope with that.

    The non open race cases can use the moxa_lock spinlock. This simplifies sorting
    out the remaining mess.

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • It isn't needed here any more

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • This is overkill and mostly not needed

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • The tty flag can be tested so the shadow flag isn't needed

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • - The open lock is needed to fix up the case of a board reset occuring during
    tty open but too early for a sane hangup response.
    - The lock can however got for other cases
    - Use the port mutex for get/setserial
    - Fix up the confused lack of locking on the THROTTLE and other bits in the
    private flags. Just use set/test/clear bit and it covers the cases we need

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Introduce a lock for moxafunc() to protect the cases where were get collisions
    between two function requests at the same time.

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Rework a few bits of this into tty_port format

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Alexander Strakh reported

    KERNEL_VERSION: 2.6.31
    DESCRIBE:
    Driver drivers/char/isicom.c might sleep in atomic context, because it
    calls
    tty_port_xmit_buf under spin_lock.

    ./drivers/char/isicom.c:
    1307 static void isicom_hangup(struct tty_struct *tty)
    1308 {
    ...
    1315 spin_lock_irqsave(&port->card->card_lock, flags);
    1316 isicom_shutdown_port(port);
    ...

    Path to might_sleep macro from isicom_hangup:
    1. isicom_hangup calls spin_lock_irqsave (drivers/char/isicom.c:1315) and
    then
    calls isicom_shutdown_port.
    2. isiscom_shutdown_port calls tty_port_free_xmit_buf at
    drivers/char/isicom.c:906
    3. tty_port_free_xmit_buf calls mutex_lock at drivers/char/tty_port:48

    Found by Linux Driver Verification Project.

    Reported-by: Alexander Strakh
    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Propogate the init/shutdown mutex through the setserial logic. Use the proper
    locks for the various bits still using the BKL. Kill the BKL in this driver.

    Updated to fix the bug noted by Dan Carpenter

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • At first this looks a fairly trivial conversion but we can't quite push
    everything into the right format yet. The open side is easy but care is needed
    over the setserial methods. Fix up the locking now that we've adopted the
    port->mutex locking rule for the initialization.

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox
     
  • Split this into two flags - INIT meaning the board is set up and ACTIVE
    meaning the board has ports open. Remove the broken HUPCL casing and push
    the counts somewhere sensible.

    Signed-off-by: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Alan Cox