30 Mar, 2011

3 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (26 commits)
    mmc: SDHI should depend on SUPERH || ARCH_SHMOBILE
    mmc: tmio_mmc: Move some defines into a shared header
    mmc: tmio: support aggressive clock gating
    mmc: tmio: fix power-mode interpretation
    mmc: tmio: remove work-around for unmasked SDIO interrupts
    sh: fix SDHI IO address-range
    ARM: mach-shmobile: fix SDHI IO address-range
    mmc: tmio: only access registers above 0xff, if available
    mfd: remove now redundant sh_mobile_sdhi.h header
    sh: convert boards to use linux/mmc/sh_mobile_sdhi.h
    ARM: mach-shmobile: convert boards to use linux/mmc/sh_mobile_sdhi.h
    mmc: tmio: convert the SDHI MMC driver from MFD to a platform driver
    sh: ecovec: use the CONFIG_MMC_TMIO symbols instead of MFD
    mmc: tmio: split core functionality, DMA and MFD glue
    mmc: tmio: use PIO for short transfers
    mmc: tmio-mmc: Improve DMA stability on sh-mobile
    mmc: fix mmc_app_send_scr() for dma transfer
    mmc: sdhci-esdhc: enable esdhc on imx53
    mmc: sdhci-esdhc: use writel/readl as general APIs
    mmc: sdhci: add the abort CMDTYPE bits definition
    ...

    Linus Torvalds
     
  • * 'frv' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-frv:
    FRV: Use generic show_interrupts()
    FRV: Convert genirq namespace
    frv: Select GENERIC_HARDIRQS_NO_DEPRECATED
    frv: Convert cpu irq_chip to new functions
    frv: Convert mb93493 irq_chip to new functions
    frv: Convert mb93093 irq_chip to new function
    frv: Convert mb93091 irq_chip to new functions
    frv: Fix typo from __do_IRQ overhaul
    frv: Remove stale irq_chip.end
    FRV: Do some cleanups
    FRV: Missing node arg in alloc_thread_info_node() macro
    NOMMU: implement access_remote_vm
    NOMMU: support SMP dynamic percpu_alloc
    NOMMU: percpu should use is_vmalloc_addr().

    Linus Torvalds
     
  • …el/git/tip/linux-2.6-tip

    * 'irq-final-for-linus-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (111 commits)
    gpio: ab8500: Mark broken
    genirq: Remove move_*irq leftovers
    genirq: Remove compat code
    drivers: Final irq namespace conversion
    mn10300: Use generic show_interrupts()
    mn10300: Cleanup irq_desc access
    mn10300: Convert genirq namespace
    frv: Use generic show_interrupts()
    frv: Convert genirq namespace
    frv: Select GENERIC_HARDIRQS_NO_DEPRECATED
    frv: Convert cpu irq_chip to new functions
    frv: Convert mb93493 irq_chip to new functions
    frv: Convert mb93093 irq_chip to new function
    frv: Convert mb93091 irq_chip to new functions
    frv: Fix typo from __do_IRQ overhaul
    frv: Remove stale irq_chip.end
    m68k: Convert irq function namespace
    xen: Use new irq_move functions
    xen: Cleanup genirq namespace
    unicore32: Use generic show_interrupts()
    ...

    Linus Torvalds
     

29 Mar, 2011

10 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (30 commits)
    xfrm: Restrict extended sequence numbers to esp
    xfrm: Check for esn buffer len in xfrm_new_ae
    xfrm: Assign esn pointers when cloning a state
    xfrm: Move the test on replay window size into the replay check functions
    netdev: bfin_mac: document TE setting in RMII modes
    drivers net: Fix declaration ordering in inline functions.
    cxgb3: Apply interrupt coalescing settings to all queues
    net: Always allocate at least 16 skb frags regardless of page size
    ipv4: Don't ip_rt_put() an error pointer in RAW sockets.
    net: fix ethtool->set_flags not intended -EINVAL return value
    mlx4_en: Fix loss of promiscuity
    tg3: Fix inline keyword usage
    tg3: use and instead and
    net: use CHECKSUM_NONE instead of magic number
    Net / jme: Do not use legacy PCI power management
    myri10ge: small rx_done refactoring
    bridge: notify applications if address of bridge device changes
    ipv4: Fix IP timestamp option (IPOPT_TS_PRESPEC) handling in ip_options_echo()
    can: c_can: Fix tx_bytes accounting
    can: c_can_platform: fix irq check in probe
    ...

    Linus Torvalds
     
  • All users converted to new interface.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • When we clone a xfrm state we have to assign the replay_esn
    and the preplay_esn pointers to the state if we use the
    new replay detection method. To this end, we add a
    xfrm_replay_clone() function that allocates memory for
    the replay detection and takes over the necessary values
    from the original state.

    Signed-off-by: Steffen Klassert
    Acked-by: Herbert Xu
    Signed-off-by: David S. Miller

    Steffen Klassert
     
  • When analysing performance of the cxgb3 on a ppc64 box I noticed that
    we weren't doing much GRO merging. It turns out we are limited by the
    number of SKB frags:

    #define MAX_SKB_FRAGS (65536/PAGE_SIZE + 2)

    With a 4kB page size we have 18 frags, but with a 64kB page size we
    only have 3 frags.

    I ran a single stream TCP bandwidth test to compare the performance of

    Signed-off-by: David S. Miller

    Anton Blanchard
     
  • …rnel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

    * 'irq-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    vlynq: Convert irq functions

    * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    genirq; Fix cleanup fallout
    genirq: Fix typo and remove unused variable
    genirq: Fix new kernel-doc warnings
    genirq: Add setter for AFFINITY_SET in irq_data state
    genirq: Provide setter inline for IRQD_IRQ_INPROGRESS
    genirq: Remove handle_IRQ_event
    arm: Ns9xxx: Remove private irq flow handler
    powerpc: cell: Use the core flow handler
    genirq: Provide edge_eoi flow handler
    genirq: Move INPROGRESS, MASKED and DISABLED state flags to irq_data
    genirq: Split irq_set_affinity() so it can be called with lock held.
    genirq: Add chip flag for restricting cpu_on/offline calls
    genirq: Add chip hooks for taking CPUs on/off line.
    genirq: Add irq disabled flag to irq_data state
    genirq: Reserve the irq when calling irq_set_chip()

    Linus Torvalds
     
  • …it/mason/btrfs-unstable

    * 'for-linus-unmerged' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (45 commits)
    Btrfs: fix __btrfs_map_block on 32 bit machines
    btrfs: fix possible deadlock by clearing __GFP_FS flag
    btrfs: check link counter overflow in link(2)
    btrfs: don't mess with i_nlink of unlocked inode in rename()
    Btrfs: check return value of btrfs_alloc_path()
    Btrfs: fix OOPS of empty filesystem after balance
    Btrfs: fix memory leak of empty filesystem after balance
    Btrfs: fix return value of setflags ioctl
    Btrfs: fix uncheck memory allocations
    btrfs: make inode ref log recovery faster
    Btrfs: add btrfs_trim_fs() to handle FITRIM
    Btrfs: adjust btrfs_discard_extent() return errors and trimmed bytes
    Btrfs: make btrfs_map_block() return entire free extent for each device of RAID0/1/10/DUP
    Btrfs: make update_reserved_bytes() public
    btrfs: return EXDEV when linking from different subvolumes
    Btrfs: Per file/directory controls for COW and compression
    Btrfs: add datacow flag in inode flag
    btrfs: use GFP_NOFS instead of GFP_KERNEL
    Btrfs: check return value of read_tree_block()
    btrfs: properly access unaligned checksum buffer
    ...

    Fix up trivial conflicts in fs/btrfs/volumes.c due to plug removal in
    the block layer.

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (81 commits)
    xo15-ebook: Remove device.wakeup_count
    ips: use interruptible waits in ips-monitor
    acer-wmi: does not poll device status when WMI event is available
    acer-wmi: does not set persistence state by rfkill_init_sw_state
    platform-drivers: x86: fix common misspellings
    acer-wmi: use pr_ for messages
    asus-wmi: potential NULL dereference in show_call()
    asus-wmi: signedness bug in read_brightness()
    platform-driver-x86: samsung-laptop: make dmi_check_cb to return 1 instead of 0
    platform-driver-x86: fix wrong merge for compal-laptop.c
    msi-laptop: use pr_ for messages
    Platform: add Samsung Laptop platform driver
    acer-wmi: Fix WMI ID
    acer-wmi: deactive mail led when power off
    msi-laptop: send out touchpad on/off key
    acer-wmi: set the touchpad toggle key code to KEY_TOUCHPAD_TOGGLE
    platform-driver-x86: intel_mid_thermal: fix unterminated platform_device_id table
    sony-laptop: potential null dereference
    sony-laptop: handle allocation failures
    sony-laptop: return negative on failure in sony_nc_add()
    ...

    Linus Torvalds
     
  • * 'for-torvalds' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
    mach-ux500: configure board for the TPS61052 regulator v2
    mach-ux500: provide ab8500 init vector
    mach-ux500: board support for AB8500 GPIO driver
    gpio: driver for 42 AB8500 GPIO pins

    Linus Torvalds
     
  • Fix new irq-related kernel-doc warnings in 2.6.38:

    Warning(kernel/irq/manage.c:149): No description found for parameter 'mask'
    Warning(kernel/irq/manage.c:149): Excess function parameter 'cpumask' description in 'irq_set_affinity'
    Warning(include/linux/irq.h:161): No description found for parameter 'state_use_accessors'
    Warning(include/linux/irq.h:161): Excess struct/union/enum/typedef member 'state_use_accessor' description in 'irq_data'

    Signed-off-by: Randy Dunlap
    LKML-Reference:
    Signed-off-by: Thomas Gleixner

    Randy Dunlap
     

28 Mar, 2011

21 commits

  • Some archs want to prevent the default affinity being set on their
    chips in the reqeust_irq() path.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • Special function for demultiplexing handlers which can be disabled via
    disable_irq().

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • Last user gone.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • This is a replacment for the cell flow handler which is in the way of
    cleanups. Must be selected to avoid general bloat.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • We really need these flags for some of the interrupt chips. Move it
    from internal state to irq_data and provide proper accessors.

    Signed-off-by: Thomas Gleixner
    Cc: David Daney

    Thomas Gleixner
     
  • * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
    NFS: Ensure that rpc_release_resources_task() can be called twice.
    NFS: Don't leak RPC clients in NFSv4 secinfo negotiation
    NFS: Fix a hang in the writeback path

    Linus Torvalds
     
  • The percpu code requires more functions to be implemented in the mm core
    which nommu currently does not provide. So add inline implementations
    since these are largely meaningless on nommu systems.

    Signed-off-by: Graf Yang
    Signed-off-by: Mike Frysinger
    Signed-off-by: David Howells
    Acked-by: Greg Ungerer

    Graf Yang
     
  • There is not much use for these events in userspace and handling the
    events themselves seems to get in the way of the actual activation of
    the rf devices. The SNC device doesn't expose them already.
    https://bugzilla.kernel.org/show_bug.cgi?id=15303

    Signed-off-by: Mattia Dongili
    Signed-off-by: Matthew Garrett

    Mattia Dongili
     
  • These keys are supposed to be handled by any software
    using the camera (like webKam or cheese...). They can
    also be used to actually move the camera when possible.

    Signed-off-by: Corentin Chary
    Signed-off-by: Matthew Garrett

    Corentin Chary
     
  • For datacow control, the corresponding inode flags are needed.
    This is for btrfs use.

    v1->v2:
    Change FS_COW_FL to another bit due to conflict with the upstream e2fsprogs

    Signed-off-by: Liu Bo
    Signed-off-by: Chris Mason

    liubo
     
  • Tracepoints can provide insight into why btrfs hits bugs and be greatly
    helpful for debugging, e.g
    dd-7822 [000] 2121.641088: btrfs_inode_request: root = 5(FS_TREE), gen = 4, ino = 256, blocks = 8, disk_i_size = 0, last_trans = 8, logged_trans = 0
    dd-7822 [000] 2121.641100: btrfs_inode_new: root = 5(FS_TREE), gen = 8, ino = 257, blocks = 0, disk_i_size = 0, last_trans = 0, logged_trans = 0
    btrfs-transacti-7804 [001] 2146.935420: btrfs_cow_block: root = 2(EXTENT_TREE), refs = 2, orig_buf = 29368320 (orig_level = 0), cow_buf = 29388800 (cow_level = 0)
    btrfs-transacti-7804 [001] 2146.935473: btrfs_cow_block: root = 1(ROOT_TREE), refs = 2, orig_buf = 29364224 (orig_level = 0), cow_buf = 29392896 (cow_level = 0)
    btrfs-transacti-7804 [001] 2146.972221: btrfs_transaction_commit: root = 1(ROOT_TREE), gen = 8
    flush-btrfs-2-7821 [001] 2155.824210: btrfs_chunk_alloc: root = 3(CHUNK_TREE), offset = 1103101952, size = 1073741824, num_stripes = 1, sub_stripes = 0, type = DATA
    flush-btrfs-2-7821 [001] 2155.824241: btrfs_cow_block: root = 2(EXTENT_TREE), refs = 2, orig_buf = 29388800 (orig_level = 0), cow_buf = 29396992 (cow_level = 0)
    flush-btrfs-2-7821 [001] 2155.824255: btrfs_cow_block: root = 4(DEV_TREE), refs = 2, orig_buf = 29372416 (orig_level = 0), cow_buf = 29401088 (cow_level = 0)
    flush-btrfs-2-7821 [000] 2155.824329: btrfs_cow_block: root = 3(CHUNK_TREE), refs = 2, orig_buf = 20971520 (orig_level = 0), cow_buf = 20975616 (cow_level = 0)
    btrfs-endio-wri-7800 [001] 2155.898019: btrfs_cow_block: root = 5(FS_TREE), refs = 2, orig_buf = 29384704 (orig_level = 0), cow_buf = 29405184 (cow_level = 0)
    btrfs-endio-wri-7800 [001] 2155.898043: btrfs_cow_block: root = 7(CSUM_TREE), refs = 2, orig_buf = 29376512 (orig_level = 0), cow_buf = 29409280 (cow_level = 0)

    Here is what I have added:

    1) ordere_extent:
    btrfs_ordered_extent_add
    btrfs_ordered_extent_remove
    btrfs_ordered_extent_start
    btrfs_ordered_extent_put

    These provide critical information to understand how ordered_extents are
    updated.

    2) extent_map:
    btrfs_get_extent

    extent_map is used in both read and write cases, and it is useful for tracking
    how btrfs specific IO is running.

    3) writepage:
    __extent_writepage
    btrfs_writepage_end_io_hook

    Pages are cirtical resourses and produce a lot of corner cases during writeback,
    so it is valuable to know how page is written to disk.

    4) inode:
    btrfs_inode_new
    btrfs_inode_request
    btrfs_inode_evict

    These can show where and when a inode is created, when a inode is evicted.

    5) sync:
    btrfs_sync_file
    btrfs_sync_fs

    These show sync arguments.

    6) transaction:
    btrfs_transaction_commit

    In transaction based filesystem, it will be useful to know the generation and
    who does commit.

    7) back reference and cow:
    btrfs_delayed_tree_ref
    btrfs_delayed_data_ref
    btrfs_delayed_ref_head
    btrfs_cow_block

    Btrfs natively supports back references, these tracepoints are helpful on
    understanding btrfs's COW mechanism.

    8) chunk:
    btrfs_chunk_alloc
    btrfs_chunk_free

    Chunk is a link between physical offset and logical offset, and stands for space
    infomation in btrfs, and these are helpful on tracing space things.

    9) reserved_extent:
    btrfs_reserved_extent_alloc
    btrfs_reserved_extent_free

    These can show how btrfs uses its space.

    Signed-off-by: Liu Bo
    Signed-off-by: Chris Mason

    liubo
     
  • To get rid of port expanders, the free GPIOs of ab8500
    can be used. There are 42 GPIO pins. Out of which 16
    are interrupt capable.This patch implements 16 virtual
    IRQ mapped to 16 interrupt capable AB8500 GPIOs.

    Signed-off-by: Bibek Basu
    Acked-by: Grant Likely
    [Renamed header file as per MFD structure]
    Signed-off-by: Linus Walleij

    Bibek Basu
     
  • After commit d5dbda23804156ae6f35025ade5307a49d1db6d7 "ethtool: Add
    support for vlan accleration.", drivers that have NETIF_F_HW_VLAN_TX,
    and/or NETIF_F_HW_VLAN_RX feature, but do not allow enable/disable vlan
    acceleration via ethtool set_flags, always return -EINVAL from that
    function. Fix by returning -EINVAL only if requested features do not
    match current settings and can not be changed by driver.

    Change any driver that define ethtool->set_flags to use
    ethtool_invalid_flags() to avoid similar problems in the future
    (also on drivers that do not have the problem).

    Tested with modified (to reproduce this bug) myri10ge driver.

    Cc: stable@kernel.org # 2.6.37+
    Signed-off-by: Stanislaw Gruszka
    Signed-off-by: David S. Miller

    Stanislaw Gruszka
     
  • can_ioctl is the only reason for struct proto to be non-const.
    script/check-patch.pl suggests struct proto be const.

    Setting the reference to the common can_ioctl() in all CAN protocols directly
    removes the need to make the struct proto writable in af_can.c

    Signed-off-by: Kurt Van Dijck
    Signed-off-by: Oliver Hartkopp
    Signed-off-by: David S. Miller

    Oliver Hartkopp
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:
    regulator: Add MODULE_DEVICE_TABLE to max8997 and max8998
    regulator: fix tps6524x section mismatch
    regulator: Remove more wm831x-specific IRQ operations
    regulator: add ab8500 enable and raise time delays
    regulator: provide consumer interface for fall/rise time
    regulator: add set_voltage_time_sel infrastructure
    regulator: initialization for ab8500 regulators
    regulator: add support for USB voltage regulator
    regulator: switch the ab3100 to use enable_time()
    Regulator: add suspend-finish API for regulator core.
    regulator: fix typo in Kconfig
    regulator: Convert WM831x regulators to genirq
    regulator: If we fail when setting up a supply say which supply

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: Fix yet another race in disconnection
    ALSA: asihpi - Update verbose debug print macros
    ALSA: asihpi - Improve non-busmaster adapter operation
    ALSA: asihpi - Support single-rate no-SRC cards
    ALSA: HDA: New AD1984A model for Dell Precision R5500
    ALSA: vmalloc buffers should use normal mmap
    ALSA: hda - Fix SPDIF out regression on ALC889
    ALSA: usb-audio - Support for Boss JS-8 Jam Station
    ALSA: usb-audio: add Cakewalk UM-1G support
    sound/oss/opl3: validate voice and channel indexes
    sound/oss: remove offset from load_patch callbacks

    Linus Torvalds
     
  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6:
    mfd: Clean up max8997 IRQ namespace
    mfd: Fold irq_set_chip/irq_set_handler
    mfd: Cleanup irq namespace
    mfd: twl6030: Cleanup interrupt handling
    mfd: twl4030: Cleanup interrupt handling
    mfd: mx8925: Remove irq_desc leftovers
    mfd: htc-i2cpld: Cleanup interrupt handling
    mfd: htc-egpio: Cleanup interrupt handling
    mfd: ezx-pcap: Remvove open coded irq handling
    mfd: 88pm860x: Remove unused irq_desc leftovers
    mfd: asic3: Cleanup irq handling
    mfd: Select MFD_CORE if TPS6105X driver is configured
    mfd: Add MODULE_DEVICE_TABLE to rdc321x-southbridge
    mfd: Add MAX8997/8966 IRQ control
    mfd: Constify i2c_device_id tables
    mfd: OLPC: Clean up names to match what OLPC actually uses
    mfd: Add mfd_clone_cell(), convert cs5535-mfd/olpc-xo1 to it

    Linus Torvalds
     
  • * 'for-2.6.39/drivers' of git://git.kernel.dk/linux-2.6-block: (122 commits)
    cciss: fix lost command issue
    drbd: need include for bitops functions declarations
    Revert "cciss: Add missing allocation in scsi_cmd_stack_setup and corresponding deallocation"
    cciss: fix missed command status value CMD_UNABORTABLE
    cciss: remove unnecessary casts
    cciss: Mask off error bits of c->busaddr in cmd_special_free when calling pci_free_consistent
    cciss: Inform controller we are using 32-bit tags.
    cciss: hoist tag masking out of loop
    cciss: Add missing allocation in scsi_cmd_stack_setup and corresponding deallocation
    cciss: export resettable host attribute
    drbd: drop code present under #ifdef which is relevant to 2.6.28 and below
    drbd: Fixed handling of read errors on a 'VerifyS' node
    drbd: Fixed handling of read errors on a 'VerifyT' node
    drbd: Implemented real timeout checking for request processing time
    drbd: Remove unused function atodb_endio()
    drbd: improve log message if received sector offset exceeds local capacity
    drbd: kill dead code
    drbd: don't BUG_ON, if bio_add_page of a single page to an empty bio fails
    drbd: Removed left over, now wrong comments
    drbd: serialize admin requests for new verify run with pending bitmap io
    ...

    Linus Torvalds
     
  • * 'for-linus-1' of git://git.infradead.org/mtd-2.6: (49 commits)
    mtd: mtdswap: fix compilation warning
    mtdswap: kill strict error handling option
    mtd: nand: enable software BCH ECC in nand simulator
    mtd: nand: add software BCH ECC support
    mtd: fix printf format warnings, mostly lack of %zd for size_t, in mtdswap
    mtd: sm_rtl: check kmalloc return value
    mtd: cfi: add support for AMIC flashes (e.g. A29L160AT)
    lib: add shared BCH ECC library
    mtd: mxc_nand: fix OOB corruption when page size > 2KiB
    mtd: DaVinci: Removed header file that is not required
    mtd: pxa3xx_nand: clean the keep configure code
    mtd: pxa3xx_nand: mtd scan id process could be defined by driver itself
    mtd: pxa3xx_nand: unify prepare command
    mtd: pxa3xx_nand: discard wait_for_event,write_cmd,__readid function
    mtd: pxa3xx_nand: rework irq logic
    mtd: pxa3xx_nand: make scan procedure more clear
    mtd: speedtest: fix integer overflow
    mtd: mxc_nand: fix read past buffer end
    mtd: omap3: nand: report corrected ecc errors
    jffs2: remove a trailing white space in commentaries
    ...

    Linus Torvalds
     
  • Define some constant offsets for CALL_REQUEST based on the description
    at and the
    definition of ROSE as using 10-digit (5-byte) addresses. Use them
    consistently. Validate all implicit and explicit facilities lengths.
    Validate the address length byte rather than either trusting or
    assuming its value.

    Signed-off-by: Ben Hutchings
    Signed-off-by: David S. Miller

    Ben Hutchings
     
  • We clone the child entry in skb_dst_pop before we call
    skb_dst_drop(). Otherwise we might kill the child right
    before we return it to the caller.

    Signed-off-by: Steffen Klassert
    Signed-off-by: David S. Miller

    Steffen Klassert
     

27 Mar, 2011

6 commits

  • Now that the inode scalability patches have been merged, it is no longer
    safe to call igrab() under the inode->i_lock.
    Now that we no longer call nfs_clear_request() until the nfs_page is
    being freed, we know that we are always holding a reference to the
    nfs_open_context, which again holds a reference to the path, and so
    the inode cannot be freed until the last nfs_page has been removed
    from the radix tree and freed.

    We can therefore skip the igrab()/iput() altogether.

    Signed-off-by: Trond Myklebust

    Trond Myklebust
     
  • The .irq_cpu_online() and .irq_cpu_offline() functions may need to
    adjust affinity, but they are called with the descriptor lock held.
    Create __irq_set_affinity_locked() which is called with the lock held.
    Make irq_set_affinity() just a wrapper that acquires the lock.

    [ tglx: Changed the argument to irq_data, added a !desc check and
    moved the !irq_set_affinity check where it belongs ]

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: ralf@linux-mips.org
    LKML-Reference:
    Signed-off-by: Thomas Gleixner

    David Daney
     
  • Add a flag which indicates that the on/offline callback should only be
    called on enabled interrupts.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • [ tglx: Removed the enabled argument as this is now available in
    irq_data ]

    Signed-off-by: David Daney
    Cc: linux-mips@linux-mips.org
    Cc: ralf@linux-mips.org
    LKML-Reference:
    Signed-off-by: Thomas Gleixner

    David Daney
     
  • Some irq_chip implementation require to know the disabled state of the
    interrupt in certain callbacks. Add a state flag and accessor to
    irq_data.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • This patch enables IRQ handling for MAX8997/8966 chips.

    Please note that Fuel-Gauge-related IRQs are not implemented in this
    initial release. The fuel gauge module in MAX8997 is identical to
    MAX17042, which is already in Linux kernel. In order to use the
    already-existing MAX17042 driver for fuel gauge module in MAX8997, the
    main interrupt handler of MAX8997 should relay related interrupts to
    MAX17042 driver. However, in order to do this, we need to modify
    MAX17042 driver as well because MAX17042 driver does not have any
    interrupt handlers for now. We are not going to implement this in this
    initial release as it is not crucial in basic operations of MAX8997.

    Signed-off-by: MyungJoo Ham
    Signed-off-by: Kyungmin Park
    Signed-off-by: Samuel Ortiz

    MyungJoo Ham