20 Jul, 2007

1 commit


17 May, 2007

1 commit

  • Currently we have a maze of configuration variables that determine the
    maximum slab size. Worst of all it seems to vary between SLAB and SLUB.

    So define a common maximum size for kmalloc. For conveniences sake we use
    the maximum size ever supported which is 32 MB. We limit the maximum size
    to a lower limit if MAX_ORDER does not allow such large allocations.

    For many architectures this patch will have the effect of adding large
    kmalloc sizes. x86_64 adds 5 new kmalloc sizes. So a small amount of
    memory will be needed for these caches (contemporary SLAB has dynamically
    sizeable node and cpu structure so the waste is less than in the past)

    Most architectures will then be able to allocate object with sizes up to
    MAX_ORDER. We have had repeated breakage (in fact whenever we doubled the
    number of supported processors) on IA64 because one or the other struct
    grew beyond what the slab allocators supported. This will avoid future
    issues and f.e. avoid fixes for 2k and 4k cpu support.

    CONFIG_LARGE_ALLOCS is no longer necessary so drop it.

    It fixes sparc64 with SLAB.

    Signed-off-by: Christoph Lameter
    Signed-off-by: "David S. Miller"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     

12 Feb, 2007

2 commits

  • * Split the implementation-agnostic stuff in separate files.
    * Make sure that targets using non-default request_irq() pull
    kernel/irq/devres.o
    * Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
    allow architectures to turn them off (we needed these symbols anyway for
    dependencies of quite a few drivers).
    * protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • This patch simply defines CONFIG_ZONE_DMA for all arches. We later do special
    things with CONFIG_ZONE_DMA after the VM and an arch are prepared to work
    without ZONE_DMA.

    CONFIG_ZONE_DMA can be defined in two ways depending on how an architecture
    handles ISA DMA.

    First if CONFIG_GENERIC_ISA_DMA is set by the arch then we know that the arch
    needs ZONE_DMA because ISA DMA devices are supported. We can catch this in
    mm/Kconfig and do not need to modify arch code.

    Second, arches may use ZONE_DMA in an unknown way. We set CONFIG_ZONE_DMA for
    all arches that do not set CONFIG_GENERIC_ISA_DMA in order to insure backwards
    compatibility. The arches may later undefine ZONE_DMA if their arch code has
    been verified to not depend on ZONE_DMA.

    Signed-off-by: Christoph Lameter
    Cc: Andi Kleen
    Cc: "Luck, Tony"
    Cc: Kyle McMartin
    Cc: Matthew Wilcox
    Cc: James Bottomley
    Cc: Paul Mundt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     

09 Dec, 2006

1 commit

  • This facility provides three entry points:

    ilog2() Log base 2 of unsigned long
    ilog2_u32() Log base 2 of u32
    ilog2_u64() Log base 2 of u64

    These facilities can either be used inside functions on dynamic data:

    int do_something(long q)
    {
    ...;
    y = ilog2(x)
    ...;
    }

    Or can be used to statically initialise global variables with constant values:

    unsigned n = ilog2(27);

    When performing static initialisation, the compiler will report "error:
    initializer element is not constant" if asked to take a log of zero or of
    something not reducible to a constant. They treat negative numbers as
    unsigned.

    When not dealing with a constant, they fall back to using fls() which permits
    them to use arch-specific log calculation instructions - such as BSR on
    x86/x86_64 or SCAN on FRV - if available.

    [akpm@osdl.org: MMC fix]
    Signed-off-by: David Howells
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Herbert Xu
    Cc: David Howells
    Cc: Wojtek Kaniewski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     

05 Dec, 2006

1 commit


30 Nov, 2006

1 commit


04 Oct, 2006

2 commits


29 Jun, 2006

1 commit


27 Jun, 2006

1 commit

  • Reworked the way RAM regions are defined. Instead of coding all the
    variations for each board type we now just configure RAM base and size
    in the usual Kconfig setup. This much simplifies the code, and makes it
    a lot more flexible when setting up new boards or board varients.

    Signed-off-by: Greg Ungerer
    Signed-off-by: Linus Torvalds

    Greg Ungerer
     

26 Jun, 2006

4 commits


27 Mar, 2006

1 commit

  • - remove ffs()
    - remove __ffs()
    - remove sched_find_first_bit()
    - remove ffz()
    - remove find_{next,first}{,_zero}_bit()
    - remove generic_hweight()
    - remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()
    - remove generic_fls()
    - remove generic_fls64()

    Signed-off-by: Akinobu Mita
    Cc: Greg Ungerer
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     

15 Feb, 2006

1 commit

  • CONFIG_TIME_LOW_RES is a temporary way for architectures to signal that
    they simply return xtime in do_gettimeoffset(). In this corner-case we
    want to round up by resolution when starting a relative timer, to avoid
    short timeouts. This will go away with the GTOD framework.

    Signed-off-by: Ingo Molnar
    Cc: Roman Zippel
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     

09 Jan, 2006

1 commit

  • Configurable 16-bit UID and friends support

    This allows turning off the legacy 16 bit UID interfaces on embedded platforms.

    text data bss dec hex filename
    3330172 529036 190556 4049764 3dcb64 vmlinux-baseline
    3328268 529040 190556 4047864 3dc3f8 vmlinux

    From: Adrian Bunk

    UID16 was accidentially disabled for !EMBEDDED.

    Signed-off-by: Matt Mackall
    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matt Mackall
     

08 Nov, 2005

1 commit


02 Sep, 2005

1 commit

  • New architecture and board configuration support for m68knommu.

    . add 523x ColdFire support
    . add support for SOM5282 and MOD5272 boards
    . break up the 527x to be separate 5271 and 5275. There is some
    subtle differences that (like RAM config) that need to be dealt with
    . add option to support selecting 4k kernel stack

    Signed-off-by: Greg Ungerer
    Signed-off-by: Linus Torvalds

    Greg Ungerer
     

12 Jul, 2005

1 commit

  • Create a new top-level menu named "Networking" thus moving
    net related options and protocol selection way from the drivers
    menu and up on the top-level where they belong.

    To implement this all architectures has to source "net/Kconfig" before
    drivers/*/Kconfig in their Kconfig file. This change has been
    implemented for all architectures.

    Device drivers for ordinary NIC's are still to be found
    in the Device Drivers section, but Bluetooth, IrDA and ax25
    are located with their corresponding menu entries under the new
    networking menu item.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

24 Jun, 2005

1 commit

  • For all architectures, this just means that you'll see a "Memory Model"
    choice in your architecture menu. For those that implement DISCONTIGMEM,
    you may eventually want to make your ARCH_DISCONTIGMEM_ENABLE a "def_bool
    y" and make your users select DISCONTIGMEM right out of the new choice
    menu. The only disadvantage might be if you have some specific things that
    you need in your help option to explain something about DISCONTIGMEM.

    Signed-off-by: Dave Hansen
    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Hansen
     

04 May, 2005

1 commit

  • A bunch of drivers use ISA DMA helpers or their equivalents for
    platforms that have ISA with different DMA controller (a lot of ARM
    boxen). Currently there is no way to put such dependency in Kconfig -
    CONFIG_ISA is not it (e.g. it is not set on platforms that have no ISA
    slots, but have on-board devices that pretend to be ISA ones).

    New symbol added - ISA_DMA_API. Set when we have functional
    enable_dma()/set_dma_mode()/etc. set of helpers. Next patches in the
    series will add missing dependencies for drivers that need them.

    I'm very carefully staying the hell out of the recurring flamefest on
    what exactly CONFIG_ISA would mean in ideal world - added symbol has a
    well-defined meaning and for now I really want to treat it as completely
    independent from the mess around CONFIG_ISA.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds