09 May, 2007

5 commits

  • Use SLAB_PANIC and delete duplicated panic().

    Signed-off-by: Akinobu Mita
    Cc: Ian Molton
    Cc: David Howells
    Cc: Andi Kleen
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mundt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • This patch is add white list into modpost.c for some functions and
    ia64's section to fix section mismatchs.

    sparse_index_alloc() and zone_wait_table_init() calls bootmem allocator
    at boot time, and kmalloc/vmalloc at hotplug time. If config
    memory hotplug is on, there are references of bootmem allocater(init text)
    from them (normal text). This is cause of section mismatch.

    Bootmem is called by many functions and it must be
    used only at boot time. I think __init of them should keep for
    section mismatch check. So, I would like to register sparse_index_alloc()
    and zone_wait_table_init() into white list.

    In addition, ia64's .machvec section is function table of some platform
    dependent code. It is mixture of .init.text and normal text. These
    reference of __init functions are valid too.

    Signed-off-by: Yasunori Goto
    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     
  • This is to fix many section mismatches of code related to memory hotplug.
    I checked compile with memory hotplug on/off on ia64 and x86-64 box.

    Signed-off-by: Yasunori Goto
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     
  • [akpm@linux-foundation.org: cleanup]
    Signed-off-by: Monakhov Dmitriy
    Cc: Christoph Hellwig
    Acked-by: Anton Altaparmakov
    Acked-by: David Chinner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dmitriy Monakhov
     
  • There are two problems with the existing redzone implementation.

    Firstly, it's causing misalignment of structures which contain a 64-bit
    integer, such as netfilter's 'struct ipt_entry' -- causing netfilter
    modules to fail to load because of the misalignment. (In particular, the
    first check in
    net/ipv4/netfilter/ip_tables.c::check_entry_size_and_hooks())

    On ppc32 and sparc32, amongst others, __alignof__(uint64_t) == 8.

    With slab debugging, we use 32-bit redzones. And allocated slab objects
    aren't sufficiently aligned to hold a structure containing a uint64_t.

    By _just_ setting ARCH_KMALLOC_MINALIGN to __alignof__(u64) we'd disable
    redzone checks on those architectures. By using 64-bit redzones we avoid that
    loss of debugging, and also fix the other problem while we're at it.

    When investigating this, I noticed that on 64-bit platforms we're using a
    32-bit value of RED_ACTIVE/RED_INACTIVE in the 64-bit memory location set
    aside for the redzone. Which means that the four bytes immediately before
    or after the allocated object at 0x00,0x00,0x00,0x00 for LE and BE
    machines, respectively. Which is probably not the most useful choice of
    poison value.

    One way to fix both of those at once is just to switch to 64-bit
    redzones in all cases.

    Signed-off-by: David Woodhouse
    Acked-by: Pekka Enberg
    Cc: Christoph Lameter
    Acked-by: David S. Miller
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Woodhouse
     

08 May, 2007

35 commits

  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SCSI] esp_scsi: Fix section mismatch warnings.
    [VIDEO] sunxvr2500: Fix PCI device ID table.

    Linus Torvalds
     
  • More fallout from the removal of "struct subsystem" from the core device
    model.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Signed-off-by: Martin Habets
    Signed-off-by: David S. Miller

    Martin Habets
     
  • Noticed by Meelis Roos.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
    [IA64] update memory attribute aliasing documentation & test cases
    [IA64] fail mmaps that span areas with incompatible attributes
    [IA64] allow WB /sys/.../legacy_mem mmaps
    [IA64] make ioremap avoid unsupported attributes
    [IA64] rename ioremap variables to match i386
    [IA64] relax per-cpu TLB requirement to DTC
    [IA64] remove per-cpu ia64_phys_stacked_size_p8
    [IA64] Fix example error injection program
    [IA64] Itanium MC Error Injection Tool: pal_mc_error_inject() interface
    [IA64] Itanium MC Error Injection Tool: Makefile changes
    [IA64] Itanium MC Error Injection Tool: Driver sysfs interface
    [IA64] Itanium MC Error Injection Tool: Doc and sample application
    [IA64] Itanium MC Error Injection Tool: Kernel configuration

    Linus Torvalds
     
  • * 'server-cluster-locking-api' of git://linux-nfs.org/~bfields/linux:
    gfs2: nfs lock support for gfs2
    lockd: add code to handle deferred lock requests
    lockd: always preallocate block in nlmsvc_lock()
    lockd: handle test_lock deferrals
    lockd: pass cookie in nlmsvc_testlock
    lockd: handle fl_grant callbacks
    lockd: save lock state on deferral
    locks: add fl_grant callback for asynchronous lock return
    nfsd4: Convert NFSv4 to new lock interface
    locks: add lock cancel command
    locks: allow {vfs,posix}_lock_file to return conflicting lock
    locks: factor out generic/filesystem switch from setlock code
    locks: factor out generic/filesystem switch from test_lock
    locks: give posix_test_lock same interface as ->lock
    locks: make ->lock release private data before returning in GETLK case
    locks: create posix-to-flock helper functions
    locks: trivial removal of unnecessary parentheses

    Linus Torvalds
     
  • The newly merged SLUB allocator patches had been generated before the
    removal of "struct subsystem", and ended up applying fine, but wouldn't
    build based on the current tree as a result.

    Fix up that merge error - not that SLUB is likely really ready for
    showtime yet, but at least I can fix the trivial stuff.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (34 commits)
    [GFS2] Uncomment sprintf_symbol calling code
    [DLM] lowcomms style
    [GFS2] printk warning fixes
    [GFS2] Patch to fix mmap of stuffed files
    [GFS2] use lib/parser for parsing mount options
    [DLM] Lowcomms nodeid range & initialisation fixes
    [DLM] Fix dlm_lowcoms_stop hang
    [DLM] fix mode munging
    [GFS2] lockdump improvements
    [GFS2] Patch to detect corrupt number of dir entries in leaf and/or inode blocks
    [GFS2] bz 236008: Kernel gpf doing cat /debugfs/gfs2/xxx (lock dump)
    [DLM] fs/dlm/ast.c should #include "ast.h"
    [DLM] Consolidate transport protocols
    [DLM] Remove redundant assignment
    [GFS2] Fix bz 234168 (ignoring rgrp flags)
    [DLM] change lkid format
    [DLM] interface for purge (2/2)
    [DLM] add orphan purging code (1/2)
    [DLM] split create_message function
    [GFS2] Set drop_count to 0 (off) by default
    ...

    Linus Torvalds
     
  • * 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6:
    drm/i915: Add 965GM pci id update
    drm: just use io_remap_pfn_range on all archs..
    drm: fix DRM_CONSISTENT mapping
    drm: fix up mmap locking in preparation for ttm changes
    drm: fix driver deadlock with AIGLX and reclaim_buffers_locked
    drm: fix warning in drm_fops.c
    drm: allow for more generic drm ioctls
    drm: fix alpha domain handling
    via: fix CX700 pci id
    drm: make drm_io_prot static.
    drm: remove via_mm.h
    drm: add missing NULL assignment
    drm/radeon: Fix u32 overflows when determining AGP base address in card space.
    drm: port over use_vmalloc code from git hashtab
    drm: fix crash with fops lock and fixup sarea/page size locking
    drm: bring bufs code from git tree.
    drm: move protection stuff into separate function
    drm: Use ARRAY_SIZE macro when appropriate
    drm: update README.drm (bugzilla #7933)
    drm: remove unused exports

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
    [NET]: rfkill: add support for input key to control wireless radio
    [NET] net/core: Fix error handling
    [TG3]: Update version and reldate.
    [TG3]: Eliminate spurious interrupts.
    [TG3]: Add ASPM workaround.
    [Bluetooth] Correct SCO buffer for another Broadcom based dongle
    [Bluetooth] Add support for Targus ACB10US USB dongle
    [Bluetooth] Disconnect L2CAP connection after last RFCOMM DLC
    [Bluetooth] Check that device is in rfcomm_dev_list before deleting
    [Bluetooth] Use in-kernel sockets API
    [Bluetooth] Attach host adapters to the Bluetooth bus
    [Bluetooth] Fix L2CAP and HCI setsockopt() information leaks

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SERIAL] sunsu: Fix section mismatch warnings.
    [SPARC64]: pgtable_cache_init() should be __init.
    [SPARC64]: Fix section mismatch warnings in arch/sparc64/kernel/prom.c
    [SPARC64]: Fix section mismatch warnings in arch/sparc64/kernel/pci.c
    [SPARC64]: Fix section mismatch warnings in arch/sparc64/kernel/console.c
    [MM]: sparse_init() should be __init.
    [SPARC64]: Update defconfig.
    [VIDEO]: Add Sun XVR-2500 framebuffer driver.
    [VIDEO]: Add Sun XVR-500 framebuffer driver.
    [SPARC64]: SUN4U PCI-E controller support.
    [SPARC]: Fix comment typo in smp4m_blackbox_current().
    [SCSI] SUNESP: sun_esp.c needs linux/delay.h

    Fix up conflict in arch/sparc64/mm/init.c manually due to removal of
    pgtable_cache_init() through the -mm patches (even though that patch was
    also by David ;)

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
    IPoIB: Convert to NAPI
    IB: Return "maybe missed event" hint from ib_req_notify_cq()
    IB: Add CQ comp_vector support
    IB/ipath: Fix a race condition when generating ACKs
    IB/ipath: Fix two more spin lock problems
    IB/fmr_pool: Add prefix to all printks
    IB/srp: Set proc_name
    IB/srp: Add orig_dgid sysfs attribute to scsi_host
    IPoIB/cm: Don't crash if remote side uses one QP for both directions
    RDMA/cxgb3: Support for new abort logic
    RDMA/cxgb3: Initialize cpu_idx field in cpl_close_listserv_req message
    RDMA/cxgb3: Fail qp creation if the requested max_inline is too large
    RDMA/cxgb3: Fix TERM codes
    IPoIB/cm: Fix error handling in ipoib_cm_dev_open()
    IB/ipath: Don't corrupt pending mmap list when unmapped objects are freed
    IB/mthca: Work around kernel QP starvation
    IB/ipath: Don't put QP in timeout queue if waiting to send
    IB/ipath: Don't call spin_lock_irq() from interrupt context

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (38 commits)
    sh: R7785RP board updates.
    sh: Update r7780rp defconfig.
    sh: Add die chain notifiers.
    sh: Fix APM emulation on hp6xx.
    sh: Wire up more IRQs for SH7709.
    sh: Solution Engine 7722 board support.
    sh: Fix r7780rp build.
    sh: kdump support.
    sh: Move clock reporting to its own proc entry.
    sh: Solution Engine SH7705 board and CPU updates.
    serial: sh-sci: Fix module clock refcount for serial console.
    serial: sh-sci: Fix module clock refcounting.
    sh: SH7722 clock framework support.
    sh: hp6xx pata_platform support.
    sh: Obey CONFIG_HZ for HZ definition.
    sh: Fix fstatat64() syscall.
    sh: se7780 PCI support.
    sh: SH7780 Solution Engine board support.
    sh: Add a dummy SH-4 PCIC fixup.
    sh: Tidy up L-BOX area5 addresses.
    ...

    Linus Torvalds
     
  • Commit a836f5856ae46ccb2464ea76031ea05ae967b832 removes the shutdown
    member of the bitbang structure, breaking the build of spi_s3c24xx.c.

    Signed-off-by: Arnaud Patard
    Signed-off-by: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnaud Patard
     
  • Rename config for TANBAC TB0219 GPIO support to something more appropriate.

    Fixes this:

    drivers/char/Kconfig:906:warning: type of 'TANBAC_TB0219' redefined from 'boolean' to 'tristate'
    drivers/char/Kconfig:907:warning: choice values currently only support a single
    prompt

    Signed-off-by: Yoichi Yuasa
    Acked-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yoichi Yuasa
     
  • As seen on powerpc-cell et al:

    CC [M] drivers/usb/host/ehci-hcd.o
    In file included from drivers/usb/host/ehci-hcd.c:941:
    drivers/usb/host/ehci-ps3.c:79: error: conflicting types for 'dev_dbg'
    include/linux/device.h:576: error: previous definition of 'dev_dbg' was here
    make[4]: *** [drivers/usb/host/ehci-hcd.o] Error 1
    CC [M] drivers/usb/host/ohci-hcd.o
    In file included from drivers/usb/host/ohci-hcd.c:921:
    drivers/usb/host/ohci-ps3.c:83: error: conflicting types for 'dev_dbg'
    include/linux/device.h:576: error: previous definition of 'dev_dbg' was here

    dev_dbg() will check format string for you in dummy case also, so remove
    buggers.

    Signed-off-by: Alexey Dobriyan
    Cc: Geert Uytterhoeven
    Cc: Greg KH
    Cc: Paul Mackerras
    Cc: Geoff Levand
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geoff Levand
     
  • The last zlib_inflate update broke certain corner cases for ppp_deflate
    decompression handling. This patch fixes some logic to make things work
    properly again. Users other than ppp_deflate (the only Z_PACKET_FLUSH
    user) should be unaffected.

    Fixes bug 8405 (confirmed by Stefan)

    Signed-off-by: Richard Purdie
    Cc: Stefan Wenk
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Purdie
     
  • alpha:

    drivers/media/video/cx88/cx88-video.c: In function 'cx8800_initdev':
    drivers/media/video/cx88/cx88-video.c:1782: error: 'DMA_32BIT_MASK' undeclared (first use in this function)
    drivers/media/video/cx88/cx88-video.c:1782: error: (Each undeclared identifier is reported only once
    drivers/media/video/cx88/cx88-video.c:1782: error: for each function it appears in.)

    Cc: Mauro Carvalho Chehab
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • strlcpy already accounts for the trailing zero in its length
    computation, so there is no need to substract one to the buffer size.

    Signed-off-by: Jean Delvare
    Cc: Chris Zankel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jean Delvare
     
  • Convert an arch that does not currently implement sub-jiffy timekeeping to
    use the generic timekeeping code.

    v850 looks like it has some intent to implement sub-jiffy timekeeping, so
    it may not yet be appropriate to try to convert, but I figured I'd get the
    maintainer's input and submit the patch for comment.

    Signed-off-by: John Stultz
    Cc: Miles Bader
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    john stultz
     
  • Declare strlcpy and strlcat more correctly.

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     
  • With the current timekeeping, !CONFIG_UML_REAL_TIME_CLOCK has
    inconsistent behavior. Previously, gettimeofday could be (and was)
    isolated from the clock ticking. Now, it's not, so when
    CONFIG_UML_REAL_TIME_CLOCK is disabled, gettimeofday must progress in
    lockstep with the clock, making it fully virtual.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • It turns out that the message complaining about a lack of tmpfs space
    on the host can be misunderstood as referring to the UML.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • When doing a full address space flush, only look at areas covered by a VMA.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • More trimming of the page fault path.

    Permissions are passed around in a single int rather than one bit per
    int. The permission values are copied from libc so that they can be
    passed to mmap and mprotect without any further conversion.

    The register sets used by do_syscall_stub and copy_context_skas0 are
    initialized once, at boot time, rather than once per call.

    wait_stub_done checks whether it is getting the signals it expects by
    comparing the wait status to a mask containing bits for the signals of
    interest rather than comparing individually to the signal numbers. It
    also has one check for a wait failure instead of two. The caller is
    expected to do the initial continue of the stub. This gets rid of an
    argument and some logic. The fname argument is gone, as that can be
    had from a stack trace.

    user_signal() is collapsed into userspace() as it is basically one or
    two lines of code afterwards.

    The physical memory remapping stuff is gone, as it is unused.

    flush_tlb_page is inlined.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • I missed removing another piece of debugging in an earlier patch.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Give the page fault code a specialized path. There is only one page to look
    at, so there's no point in going into the general page table walking code.
    There's only going to be one host operation, so there are no opportunities for
    merging. So, we go straight to the pte we want, figure out what needs doing,
    and do it.

    While I was in here, I fixed the wart where the address passed to unmap was a
    void *, but an unsigned long to map and protect.

    This gives me just under 10% on a kernel build.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Allow deadlocks to be avoided in the AIO code by setting the pipe to the I/O
    thread non-blocking.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Rename os_{read_write}_file_k back to os_{read_write}_file, delete
    the originals and their bogus infrastructure, and fix all the callers.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • I accidentally left the remnants of some debugging in an earlier patch.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Formatting fixes ahead of renaming os_{read_write}_file_k to
    os_{read_write}_file and fixing all the callers.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Convert all remaining os_{read_write}_file users to use the simple
    {read,write} wrappers, os_{read_write}_file_k.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Code running on the initial UML stack can't receive or process signals since
    current must be valid when IRQs are handled, and there is no current for this
    stack.

    So, instead of using UML_LONGJMP and UML_SETJMP, which are careful to save and
    restore signal state, and, as a side-effect, handle any deferred signals,
    start_idle_thread must use the bare equivalents, which don't do anything with
    signals.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Dump core after a panic. This will provide better debugging information than
    is currently available.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Sanitise gfp flags; it actually is an atomic context, so drop the
    GFP_KERNEL part.

    Signed-off-by: Peter Zijlstra
    Acked-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Zijlstra