20 Jul, 2007

3 commits

  • Transform some calls to kmalloc/memset to a single kzalloc (or kcalloc).

    Here is a short excerpt of the semantic patch performing
    this transformation:

    @@
    type T2;
    expression x;
    identifier f,fld;
    expression E;
    expression E1,E2;
    expression e1,e2,e3,y;
    statement S;
    @@

    x =
    - kmalloc
    + kzalloc
    (E1,E2)
    ... when != \(x->fld=E;\|y=f(...,x,...);\|f(...,x,...);\|x=E;\|while(...) S\|for(e1;e2;e3) S\)
    - memset((T2)x,0,E1);

    @@
    expression E1,E2,E3;
    @@

    - kzalloc(E1 * E2,E3)
    + kcalloc(E1,E2,E3)

    [akpm@linux-foundation.org: get kcalloc args the right way around]
    Signed-off-by: Yoann Padioleau
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Acked-by: Russell King
    Cc: Bryan Wu
    Acked-by: Jiri Slaby
    Cc: Dave Airlie
    Acked-by: Roland Dreier
    Cc: Jiri Kosina
    Acked-by: Dmitry Torokhov
    Cc: Benjamin Herrenschmidt
    Acked-by: Mauro Carvalho Chehab
    Acked-by: Pierre Ossman
    Cc: Jeff Garzik
    Cc: "David S. Miller"
    Acked-by: Greg KH
    Cc: James Bottomley
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yoann Padioleau
     
  • per cpu data section contains two types of data. One set which is
    exclusively accessed by the local cpu and the other set which is per cpu,
    but also shared by remote cpus. In the current kernel, these two sets are
    not clearely separated out. This can potentially cause the same data
    cacheline shared between the two sets of data, which will result in
    unnecessary bouncing of the cacheline between cpus.

    One way to fix the problem is to cacheline align the remotely accessed per
    cpu data, both at the beginning and at the end. Because of the padding at
    both ends, this will likely cause some memory wastage and also the
    interface to achieve this is not clean.

    This patch:

    Moves the remotely accessed per cpu data (which is currently marked
    as ____cacheline_aligned_in_smp) into a different section, where all the data
    elements are cacheline aligned. And as such, this differentiates the local
    only data and remotely accessed data cleanly.

    Signed-off-by: Fenghua Yu
    Acked-by: Suresh Siddha
    Cc: Rusty Russell
    Cc: Christoph Lameter
    Cc:
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fenghua Yu
     
  • This patch completes Linus's wish that the fault return codes be made into
    bit flags, which I agree makes everything nicer. This requires requires
    all handle_mm_fault callers to be modified (possibly the modifications
    should go further and do things like fault accounting in handle_mm_fault --
    however that would be for another patch).

    [akpm@linux-foundation.org: fix alpha build]
    [akpm@linux-foundation.org: fix s390 build]
    [akpm@linux-foundation.org: fix sparc build]
    [akpm@linux-foundation.org: fix sparc64 build]
    [akpm@linux-foundation.org: fix ia64 build]
    Signed-off-by: Nick Piggin
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Russell King
    Cc: Ian Molton
    Cc: Bryan Wu
    Cc: Mikael Starvik
    Cc: David Howells
    Cc: Yoshinori Sato
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc: Greg Ungerer
    Cc: Matthew Wilcox
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Paul Mundt
    Cc: Kazumoto Kojima
    Cc: Richard Curnow
    Cc: William Lee Irwin III
    Cc: "David S. Miller"
    Cc: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Cc: Miles Bader
    Cc: Chris Zankel
    Acked-by: Kyle McMartin
    Acked-by: Haavard Skinnemoen
    Acked-by: Ralf Baechle
    Acked-by: Andi Kleen
    Signed-off-by: Andrew Morton
    [ Still apparently needs some ARM and PPC loving - Linus ]
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

18 Jul, 2007

5 commits

  • Update csb337 board specific init to support "new style" rtc-ds1307 code.

    Signed-off-by: David Brownell
    Cc: Andrew Victor
    Cc: Bill Gatliff
    Cc: Alessandro Zummo
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • Use the new i2c framework to load rtc-rs5c372 for the Thecus N2100.

    Signed-off-by: Martin Michlmayr
    Tested-by: Voipio Riku
    Cc: Russell King
    Cc: Lennert Buytenhek
    Cc: Jean Delvare
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Martin Michlmayr
     
  • Identical implementations of PTRACE_POKEDATA go into generic_ptrace_pokedata()
    function.

    AFAICS, fix bug on xtensa where successful PTRACE_POKEDATA will nevertheless
    return EPERM.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Identical implementations of PTRACE_PEEKDATA go into generic_ptrace_peekdata()
    function.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • If the kernel OOPSed or BUGed then it probably should be considered as
    tainted. Thus, all subsequent OOPSes and SysRq dumps will report the
    tainted kernel. This saves a lot of time explaining oddities in the
    calltraces.

    Signed-off-by: Pavel Emelianov
    Acked-by: Randy Dunlap
    Cc:
    Signed-off-by: Andrew Morton
    [ Added parisc patch from Matthew Wilson -Linus ]
    Signed-off-by: Linus Torvalds

    Pavel Emelianov
     

14 Jul, 2007

1 commit

  • * 'ioat-md-accel-for-linus' of git://lost.foo-projects.org/~dwillia2/git/iop: (28 commits)
    ioatdma: add the unisys "i/oat" pci vendor/device id
    ARM: Add drivers/dma to arch/arm/Kconfig
    iop3xx: surface the iop3xx DMA and AAU units to the iop-adma driver
    iop13xx: surface the iop13xx adma units to the iop-adma driver
    dmaengine: driver for the iop32x, iop33x, and iop13xx raid engines
    md: remove raid5 compute_block and compute_parity5
    md: handle_stripe5 - request io processing in raid5_run_ops
    md: handle_stripe5 - add request/completion logic for async expand ops
    md: handle_stripe5 - add request/completion logic for async read ops
    md: handle_stripe5 - add request/completion logic for async check ops
    md: handle_stripe5 - add request/completion logic for async compute ops
    md: handle_stripe5 - add request/completion logic for async write ops
    md: common infrastructure for running operations with raid5_run_ops
    md: raid5_run_ops - run stripe operations outside sh->lock
    raid5: replace custom debug PRINTKs with standard pr_debug
    raid5: refactor handle_stripe5 and handle_stripe6 (v3)
    async_tx: add the async_tx api
    xor: make 'xor_blocks' a library routine for use with async_tx
    dmaengine: make clients responsible for managing channels
    dmaengine: refactor dmaengine around dma_async_tx_descriptor
    ...

    Linus Torvalds
     

13 Jul, 2007

8 commits

  • Cc: Russell King
    Signed-off-by: Dan Williams

    Dan Williams
     
  • Adds the platform device definitions and the architecture specific support
    routines (i.e. register initialization and descriptor formats) for the
    iop-adma driver.

    Changelog:
    * add support for > 1k zero sum buffer sizes
    * added dma/aau platform devices to iq80321 and iq80332 setup
    * fixed the calculation in iop_desc_is_aligned
    * support xor buffer sizes larger than 16MB
    * fix places where software descriptors are assumed to be contiguous, only
    hardware descriptors are contiguous for up to a PAGE_SIZE buffer size
    * convert to async_tx
    * add interrupt support
    * add platform devices for 80219 boards
    * do not call platform register macros in driver code
    * remove switch() statements for compatible register offsets/layouts
    * change over to bitmap based capabilities
    * remove unnecessary ARM assembly statement
    * checkpatch.pl fixes
    * gpl v2 only correction
    * phys move to dma_async_tx_descriptor

    Cc: Russell King
    Signed-off-by: Dan Williams

    Dan Williams
     
  • Adds the platform device definitions and the architecture specific
    support routines (i.e. register initialization and descriptor formats) for the
    iop-adma driver.

    Changelog:
    * added 'descriptor pool size' to the platform data
    * add base support for buffer sizes larger than 16MB (hw max)
    * build error fix from Kirill A. Shutemov
    * rebase for async_tx changes
    * add interrupt support
    * do not call platform register macros in driver code
    * remove unnecessary ARM assembly statement
    * checkpatch.pl fixes
    * gpl v2 only correction

    Cc: Russell King
    Signed-off-by: Dan Williams

    Dan Williams
     
  • * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (50 commits)
    [ARM] sa1100: remove boot time RTC initialisation
    [ARM] sa1100: stop doing our own rtc management over suspend
    [ARM] 4474/1: Do not check the PSR_F_BIT in valid_user_regs
    [ARM] 4473/2: Take the HWCAP definitions out of the elf.h file
    [ARM] pxa: move platform devices to separate header file
    [ARM] pxa: move device registration into CPU-specific file
    [ARM] pxa: remove boot time RTC initialisation
    [ARM] pxa: stop doing our own rtc management over suspend
    [ARM] 4451/1: pxa: make dma.c generic and remove cpu specific dma code
    [ARM] 4450/1: pxa: add pxa25x_init_irq() and pxa27x_init_irq()
    [ARM] 4440/1: PXA: enable the checking of ICIP2 for IRQs
    [ARM] 4438/1: PXA: remove #ifdef .. #endif from pxa_gpio_demux_handler()
    [ARM] 4437/1: PXA: move the GPIO IRQ initialization code to pxa_init_irq_gpio()
    [ARM] 4436/1: PXA: move low IRQ initialization code to pxa_init_irq_low()
    [ARM] 4435/1: PXA: remove PXA_INTERNAL_IRQS
    [ARM] 4434/1: PXA: remove PXA_IRQ_SKIP
    [ARM] pxa: Fix PXA27x suspend type validation, remove pxa_pm_prepare()
    [ARM] pxa: move pm_ops structure into CPU specific files
    [ARM] pxa: introduce cpu_is_pxaXXX macros
    [ARM] pxa: remove MMC register defines from pxa-regs.h
    ...

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (34 commits)
    PCI: Only build PCI syscalls on architectures that want them
    PCI: limit pci_get_bus_and_slot to domain 0
    PCI: hotplug: acpiphp: avoid acpiphp "cannot get bridge info" PCI hotplug failure
    PCI: hotplug: acpiphp: remove hot plug parameter write to PCI host bridge
    PCI: hotplug: acpiphp: fix slot poweroff problem on systems without _PS3
    PCI: hotplug: pciehp: wait for 1 second after power off slot
    PCI: pci_set_power_state(): check for PM capabilities earlier
    PCI: cpci_hotplug: Convert to use the kthread API
    PCI: add pci_try_set_mwi
    PCI: pcie: remove SPIN_LOCK_UNLOCKED
    PCI: ROUND_UP macro cleanup in drivers/pci
    PCI: remove pci_dac_dma_... APIs
    PCI: pci-x-pci-express-read-control-interfaces cleanups
    PCI: Fix typo in include/linux/pci.h
    PCI: pci_ids, remove double or more empty lines
    PCI: pci_ids, add atheros and 3com_2 vendors
    PCI: pci_ids, reorder some entries
    PCI: i386: traps, change VENDOR to DEVICE
    PCI: ATM: lanai, change VENDOR to DEVICE
    PCI: Change all drivers to use pci_device->revision
    ...

    Linus Torvalds
     
  • Russell King
     
  • The RTC library code contains everything necessary to set the
    system time from the RTC; for similar reasons as the previous
    commit, it's far better to let the RTC library code sort this
    out rather than implement something which might not be
    appropriate for everyone.

    Signed-off-by: Russell King

    Russell King
     
  • Remove the RTC management over a suspend/resume cycle. As per the
    corresponding PXA patch, the RTC library code handles updating
    system time on resume.

    Signed-off-by: Russell King

    Russell King
     

12 Jul, 2007

23 commits