09 Feb, 2008

40 commits

  • To allow flexible configuration of IDE introduce HAVE_IDE.
    All archs except arm, um and s390 unconditionally select it.
    For arm the actual configuration determine if IDE is supported.

    This is a step towards introducing drivers/Kconfig for arm.

    Signed-off-by: Sam Ravnborg
    Acked-by: Russell King - ARM Linux
    Acked-by: Bartlomiej Zolnierkiewicz

    Sam Ravnborg
     
  • Signed-off-by: Mike Frysinger
    Signed-off-by: Sam Ravnborg

    Mike Frysinger
     
  • Fix bug introduced by my latest fix to the aic7xxx Makefile.
    Test build on x86 32 and 64 bit.
    Without and with -j (parallel build)
    Building firmaware is br0ken with O=... but this
    is unrelated to this bug-fix.

    Tested-by: Adrian Bunk
    Cc: James Bottomley
    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     
  • modpost: Use warn() for announcing section mismatches, for easy grepping for
    warnings in build logs.

    Also change an existing call from fprintf() to warn() while we're at it.

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Sam Ravnborg

    Geert Uytterhoeven
     
  • Signed-off-by: Uwe Kleine-König
    Signed-off-by: Sam Ravnborg

    Uwe Kleine-König
     
  • If we cannot determine the symbol then print
    (unknown) to hint the reader that we failed to
    find the symbol.
    This happens with REL relocation records
    in arm object files.

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     
  • Convert special mapping install from nopage to fault.

    Because the "vm_file" is NULL for the special mapping, the generic VM
    code has messed up "vm_pgoff" thinking that it's an anonymous mapping
    and the offset does't matter. For that reason, we need to undo the
    vm_pgoff offset that got added into vmf->pgoff.

    [ We _really_ should clean that up - either by making this whole special
    mapping code just use a real file entry rather than that ugly array of
    "struct page" pointers, or by just making the VM code realize that
    even if vm_file is NULL it may not be a regular anonymous mmap.
    - Linus ]

    Signed-off-by: Nick Piggin
    Cc: linux-mm@kvack.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Linus Torvalds

    Nick Piggin
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
    [IA64] Fix large MCA bootmem allocation
    [IA64] Simplify cpu_idle_wait
    [IA64] Synchronize RBS on PTRACE_ATTACH
    [IA64] Synchronize kernel RSE to user-space and back
    [IA64] Rename TIF_PERFMON_WORK back to TIF_NOTIFY_RESUME
    [IA64] Wire up timerfd_{create,settime,gettime} syscalls

    Linus Torvalds
     
  • Commit 2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4 ("CONFIG_HIGHPTE vs.
    sub-page page tables") caused some build breakage due to pgtable_t only
    getting declared in the CONFIG_X86_PAE case.

    Move the declaration outside the PAE section.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    IB/core: Remove unused struct ib_device.flags member
    IB/core: Add IP checksum offload support
    IPoIB: Add send gather support
    IPoIB: Add high DMA feature flag
    IB/mlx4: Use multiple WQ blocks to post smaller send WQEs
    mlx4_core: Clean up struct mlx4_buf
    mlx4_core: For 64-bit systems, vmap() kernel queue buffers
    IB/mlx4: Consolidate code to get an entry from a struct mlx4_buf

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (24 commits)
    [Blackfin] arch: import defines for BF547 -- it is just like the BF548, but no CAN
    [Blackfin] arch: fix build fails only include header files when enabled
    [Blackfin] arch: declare default INSTALL_PATH for Blackfin ports
    [Blackfin] arch: Encourage users to use the spidev character driver: Provide platform support
    [Blackfin] arch: Enable UART2 and UART3 for bf548
    [Blackfin] arch: Enable NET2272 on BF561-EZkit - remove request_mem_region
    [Blackfin] arch:Fix BUG [#3876] pfbutton test for BTN3 on bf533 don't show complete info
    [Blackfin] arch: remove duplicated definitions of the line discipline numbers N_* in asm-blackfin/termios.h
    [Blackfin] arch: fix building with mtd uclinux by putting the mtd_phys option into the function it actually gets used in
    [Blackfin] arch: simpler header and update dates
    [Blackfin] arch: move the init sections to the end of memory
    [Blackfin] arch: change the trace buffer control start/stop logic in the exception handlers
    [Blackfin] arch: fix typo in printk message
    [Blackfin] arch: this is an ezkit, not a stamp, so fixup the init function name
    [Blackfin] arch: add slightly better help text for CPLB_INFO
    [Blackfin] arch: Fix BUG - Enable ISP1362 driver to work ok with BF561
    [Blackfin] arch: Fix header file information
    [Blackfin] arch: Add Support for ISP1362
    [Blackfin] arch: add support for cmdline partitioning to the BF533-STAMP flash map driver and enable it as a module by default
    [Blackfin] arch: hook up set_irq_wake in Blackfin's irq code
    ...

    Linus Torvalds
     
  • Thanks to Kay for keeping us honest.

    Signed-off-by: Kay Sievers
    Signed-off-by: Shannon Nelson
    Cc: "Williams, Dan J"
    Acked-by: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kay Sievers
     
  • x25_asy does not take an ldisc reference before calling the flush method.
    Fix it to use the helper function we provide.

    Signed-off-by: Alan Cox
    Cc: Krzysztof Halasa
    Cc: "David S. Miller"
    Cc: Jeff Garzik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • lib/scatterlist.c is needed by drivers/media/video/videobuf-dma-sg.c, and
    we would like to be able to use the latter without PCI too, for example, on
    PXA270 ARM CPU. It is then possible to create a configuration with
    CONFIG_BLOCK=n, where only module code will need scatterlist.c. Therefore
    it must be in obj-y.

    Signed-off-by: Guennadi Liakhovetski
    Acked-by: Jens Axboe
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Guennadi Liakhovetski
     
  • In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/xtensa/kernel/syscall.c:39:
    include2/asm/unistd.h:681: error: 'sys_timerfd' undeclared here (not in a function)

    Signed-off-by: Adrian Bunk
    Cc: Christian Zankel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • Fix the FRV cmpxchg_local by breaking the following header dependency loop :

    linux/kernel.h -> linux/bitops.h -> asm-frv/bitops.h -> asm-frv/atomic.h
    -> asm-frv/system.h ->
    asm-generic/cmpxchg_local.h -> typecheck() defined in linux/kernel.h

    and

    linux/kernel.h -> linux/bitops.h -> asm-frv/bitops.h -> asm-frv/atomic.h ->
    asm-generic/cmpxchg_local.h -> typecheck() defined in linux/kernel.h

    In order to fix this :
    - Move the atomic_test_and_ *_mask inlines from asm-frv/atomic.h (why are they
    there at all anyway ? They are not touching atomic_t variables!) to
    asm-frv/bitops.h.

    Also fix a build issue with cmpxchg : it does not cast to (unsigned long *)
    like other architectures, to deal with it in the cmpxchg_local macro.

    FRV builds fine with this patch.

    Thanks to Adrian Bunk for spotting this bug.

    Signed-off-by: Mathieu Desnoyers
    Cc: Adrian Bunk
    Cc: David Howells
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mathieu Desnoyers
     
  • Revert commit c6caeb7c4544608e8ae62731334661fc396c7f85 ("proc: fix the
    threaded /proc/self"), since Eric says "The patch really is wrong.
    There is at least one corner case in procps that cares."

    Cc: Eric W. Biederman
    Cc: Ingo Molnar
    Cc: "Guillaume Chazarain"
    Cc: "Pavel Emelyanov"
    Cc: "Rafael J. Wysocki"
    Cc: Oleg Nesterov
    Cc: Roland McGrath
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Avoid confusion about what it might mean, since it's never initialized.

    Signed-off-by: Roland Dreier

    Roland Dreier
     
  • Add a device capability to show when it can handle checksum offload.
    Also add a send flag for inserting checksums and a csum_ok field to
    the completion record.

    Signed-off-by: Eli Cohen
    Signed-off-by: Roland Dreier

    Eli Cohen
     
  • This patch acts as a preparation for using checksum offload for IB
    devices capable of inserting/verifying checksum in IP packets. The
    patch does not actaully turn on NETIF_F_SG - we defer that to the
    patches adding checksum offload capabilities.

    We only add support for send gathers for datagram mode, since existing
    HW does not support checksum offload on connected QPs.

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Eli Cohen
    Signed-off-by: Roland Dreier

    Eli Cohen
     
  • All current InfiniBand devices can handle all DMA addresses, and it's
    hard to imagine anyone would be silly enough to build a new device
    that couldn't. Therefore, enable the NETIF_F_HIGHDMA feature for IPoIB.

    This has no effect for no, but is needed when we enable gather/scatter
    support and checksum stateless offloads.

    Signed-off-by: Eli Cohen
    Signed-off-by: Roland Dreier

    Eli Cohen
     
  • ConnectX HCA supports shrinking WQEs, so that a single work request
    can be made of multiple units of wqe_shift. This way, WRs can differ
    in size, and do not have to be a power of 2 in size, saving memory and
    speeding up send WR posting. Unfortunately, if we do this then the
    wqe_index field in CQEs can't be used to look up the WR ID anymore, so
    our implementation does this only if selective signaling is off.

    Further, on 32-bit platforms, we can't use vmap() to make the QP
    buffer virtually contigious. Thus we have to use constant-sized WRs to
    make sure a WR is always fully within a single page-sized chunk.

    Finally, we use WRs with the NOP opcode to avoid wrapping around the
    queue buffer in the middle of posting a WR, and we set the
    NoErrorCompletion bit to avoid getting completions with error for NOP
    WRs. However, NEC is only supported starting with firmware 2.2.232,
    so we use constant-sized WRs for older firmware. And, since MLX QPs
    only support SEND, we use constant-sized WRs in this case.

    When stamping during NOP posting, do stamping following setting of the
    NOP WQE valid bit.

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Jack Morgenstein
    Signed-off-by: Roland Dreier

    Jack Morgenstein
     
  • The MCA code allocates bootmem memory for NR_CPUS, regardless
    of how many cpus the system actually has. This change allocates
    memory only for cpus that actually exist.

    On my test system with NR_CPUS = 1024, reserved memory was reduced by 130944k.

    Before: Memory: 27886976k/28111168k available (8282k code, 242304k reserved, 5928k data, 1792k init)
    After: Memory: 28017920k/28111168k available (8282k code, 111360k reserved, 5928k data, 1792k init)

    Signed-off-by: Russ Anderson
    Signed-off-by: Tony Luck

    Russ Anderson
     
  • This is just Venki's patch[*] for x86 ported to ia64.

    * http://marc.info/?l=linux-kernel&m=120249201318159&w=2

    Acked-by: Venkatesh Pallipadi
    Signed-off-by: Tony Luck

    Tony Luck
     
  • When attaching to a stopped process, the RSE must be explicitly
    synced to user-space, so the debugger can read the correct values.

    Signed-off-by: Petr Tesarik
    CC: Roland McGrath
    Signed-off-by: Tony Luck

    Petr Tesarik
     
  • This is base kernel patch for ptrace RSE bug. It's basically a backport
    from the utrace RSE patch I sent out several weeks ago. please review.

    when a thread is stopped (ptraced), debugger might change thread's user
    stack (change memory directly), and we must avoid the RSE stored in
    kernel to override user stack (user space's RSE is newer than kernel's
    in the case). To workaround the issue, we copy kernel RSE to user RSE
    before the task is stopped, so user RSE has updated data. we then copy
    user RSE to kernel after the task is resummed from traced stop and
    kernel will use the newer RSE to return to user.

    Signed-off-by: Shaohua Li
    Signed-off-by: Petr Tesarik
    CC: Roland McGrath
    Signed-off-by: Tony Luck

    Petr Tesarik
     
  • Since the RSE synchronization will need a TIF_ flag, but all

    work-to-be-done bits are already used, so we have to multiplex
    TIF_NOTIFY_RESUME again.

    Signed-off-by: Shaohua Li
    Signed-off-by: Petr Tesarik
    Signed-off-by: Tony Luck

    Petr Tesarik
     
  • Add ia64 hooks for the new syscalls that were added in
    commit 4d672e7ac79b5ec5cdc90e450823441e20464691

    Signed-off-by: Tony Luck

    Tony Luck
     
  • Signed-off-by: Mike Frysinger
    Signed-off-by: Bryan Wu

    Mike Frysinger
     
  • * 'cris' of git://www.jni.nu/cris: (158 commits)
    CRIS v32: Remove hwregs/timer_defs.h, it is now architecture specific.
    CRIS v32: Change drivers/i2c.c locking.
    CRIS v32: Rewrite ARTPEC-3 gpio driver to avoid volatiles and general cleanup.
    CRIS: Add new timerfd syscall entries.
    MAINTAINERS: Add my information for the CRIS port.
    CRIS v32: Correct spelling of bandwidth in function name.
    CRIS v32: Clean up nandflash.c for ARTPEC-3 and ETRAX FS.
    CRIS v10: Cleanup of drivers/gpio.c
    CRIS v10: drivers/net/cris/eth_v10.c rename LED defines to CRIS_LED to avoid name clash.
    CRIS: Make io_pwm_set_period members unsigned in etraxgpio.h
    CRIS: Move ETRAX_AXISFLASHMAP to common Kconfig file.
    CRIS: Drop regs parameter from call to profile_tick in kernel/time.c
    CRIS v32: Fix minor formatting issue in mach-a3/io.c
    CRIS v32: Initialize GIO even if we're rambooting in kernel/head.S
    CRIS v32: Remove kernel/arbiter.c, it now exists in machine dependent directory.
    CRIS v32: Minor changes to avoid errors in asm-cris/arch-v32/hwregs/reg_rdwr.h
    CRIS v32: arch-v32/hwregs/intr_vect_defs.h moved to machine dependent directory.
    CRIS v32: Correct offset for TASK_pid in asm-cris/arch-v32/offset.h
    CRIS v32: Move register map header to machine dependent directory.
    CRIS v32: Let compiler know that memory is clobbered after a break op.
    ...

    Linus Torvalds
     
  • Signed-off-by: Mike Frysinger
    Signed-off-by: Bryan Wu

    Mike Frysinger
     
  • * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
    Enhanced partition statistics: documentation update
    Enhanced partition statistics: remove old partition statistics
    Enhanced partition statistics: procfs
    Enhanced partition statistics: sysfs
    Enhanced partition statistics: aoe fix
    Enhanced partition statistics: update partition statitics
    Enhanced partition statistics: core statistics
    block: fixup rq_init() a bit

    Manually fixed conflict in drivers/block/aoe/aoecmd.c due to statistics
    support.

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:
    dlm: add __init and __exit marks to init and exit functions
    dlm: eliminate astparam type casting
    dlm: proper types for asts and basts
    dlm: dlm/user.c input validation fixes
    dlm: fix dlm_dir_lookup() handling of too long names
    dlm: fix overflows when copying from ->m_extra to lvb
    dlm: make find_rsb() fail gracefully when namelen is too large
    dlm: receive_rcom_lock_args() overflow check
    dlm: verify that places expecting rcom_lock have packet long enough
    dlm: validate data in dlm_recover_directory()
    dlm: missing length check in check_config()
    dlm: use proper type for ->ls_recover_buf
    dlm: do not byteswap rcom_config
    dlm: do not byteswap rcom_lock
    dlm: dlm_process_incoming_buffer() fixes
    dlm: use proper C for dlm/requestqueue stuff (and fix alignment bug)

    Linus Torvalds
     
  • * 'for-2.6.25' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
    [POWERPC] Add arch-specific walk_memory_remove() for 64-bit powerpc
    [POWERPC] Enable hotplug memory remove for 64-bit powerpc
    [POWERPC] Add remove_memory() for 64-bit powerpc
    [POWERPC] Make cell IOMMU fixed mapping printk more useful
    [POWERPC] Fix potential cell IOMMU bug when switching back to default DMA ops
    [POWERPC] Don't enable cell IOMMU fixed mapping if there are no dma-ranges
    [POWERPC] Fix cell IOMMU null pointer explosion on old firmwares
    [POWERPC] spufs: Fix timing dependent false return from spufs_run_spu
    [POWERPC] spufs: No need to have a runnable SPU for libassist update
    [POWERPC] spufs: Update SPU_Status[CISHP] in backing runcntl write
    [POWERPC] spufs: Fix state_mutex leaks
    [POWERPC] Disable G5 NAP mode during SMU commands on U3

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC64]: Make use of the new fs/compat_binfmt_elf.c
    [SPARC64]: Make use of compat_sys_ptrace()

    Manually fixed trivial delete/modift conflict in arch/sparc64/kernel/binfmt_elf32.c

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
    [IPSEC] flow: reorder "struct flow_cache_entry" and remove SLAB_HWCACHE_ALIGN
    [DECNET] ROUTE: remove unecessary alignment
    [IPSEC]: Add support for aes-ctr.
    [ISDN]: fix section mismatch warning in enpci_card_msg
    [TIPC]: declare proto_ops structures as 'const'.
    [TIPC]: Kill unused static inline (x5)
    [TC]: oops in em_meta
    [IPV6] Minor cleanup: remove unused definitions in net/ip6_fib.h
    [IPV6] Minor clenup: remove two unused definitions in net/ip6_route.h
    [AF_IUCV]: defensive programming of iucv_callback_txdone
    [AF_IUCV]: broken send_skb_q results in endless loop
    [IUCV]: wrong irq-disabling locking at module load time
    [CAN]: Minor clean-ups
    [CAN]: Move proto_{,un}register() out of spin-locked region
    [CAN]: Clean up module auto loading
    [IPSEC] flow: Remove an unnecessary ____cacheline_aligned
    [IPV4]: route: fix crash ip_route_input
    [NETFILTER]: xt_iprange: add missing #include
    [NETFILTER]: xt_iprange: fix typo in address family
    [NETFILTER]: nf_conntrack: fix ct_extend ->move operation
    ...

    Linus Torvalds
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
    acer-wmi, tc1100-wmi: select ACPI_WMI
    ACPI: WMI: Improve Kconfig description
    ACPI: DMI: add Panasonic CF-52 and Thinpad X61
    ACPI: thermal: syntax, spelling, kernel-doc
    intel_menlo: build on X86 only
    ACPI: build WMI on X86 only
    ACPI: cpufreq: Print _PPC changes via cpufreq debug layer
    ACPI: add newline to printk

    Linus Torvalds
     
  • vmsplice_to_user() must always check the user pointer and length
    with access_ok() before copying. Likewise, for the slow path of
    copy_from_user_mmap_sem() we need to check that we may read from
    the user region.

    Signed-off-by: Jens Axboe
    Cc: Wojciech Purczynski
    Signed-off-by: Greg Kroah-Hartman
    Signed-off-by: Linus Torvalds

    Jens Axboe
     
  • Turn off quotas before filesystem is remounted read only. Otherwise quota
    will try to write to read-only filesystem which does no good... We could
    also just refuse to remount ro when quota is enabled but turning quota off
    is consistent with what we do on umount.

    Signed-off-by: Jan Kara
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Kara
     
  • Some devices - notably dm and md - can change their behaviour in response
    to BIO_RW_BARRIER requests. They might start out accepting such requests
    but on reconfiguration, they find out that they cannot any more.

    ext3 (and other filesystems) deal with this by always testing if
    BIO_RW_BARRIER requests fail with EOPNOTSUPP, and retrying the write
    requests without the barrier (probably after waiting for any pending writes
    to complete).

    However there is a bug in the handling for this for ext3.

    When ext3 (jbd actually) decides to submit a BIO_RW_BARRIER request, it
    sets the buffer_ordered flag on the buffer head. If the request completes
    successfully, the flag STAYS SET.

    Other code might then write the same buffer_head after the device has been
    reconfigured to not accept barriers. This write will then fail, but the
    "other code" is not ready to handle EOPNOTSUPP errors and the error will be
    treated as fatal.

    This can be seen without having to reconfigure a device at exactly the
    wrong time by putting:

    if (buffer_ordered(bh))
    printk("OH DEAR, and ordered buffer\n");

    in the while loop in "commit phase 5" of journal_commit_transaction.

    If it ever prints the "OH DEAR ..." message (as it does sometimes for
    me), then that request could (in different circumstances) have failed
    with EOPNOTSUPP, but that isn't tested for.

    My proposed fix is to clear the buffer_ordered flag after it has been
    used, as in the following patch.

    Signed-off-by: Neil Brown
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Neil Brown