11 Apr, 2006

9 commits


10 Apr, 2006

1 commit

  • From: Keith Mannthey, Andi Kleen

    Implement memory hotadd without sparsemem. The memory in the SRAT
    hotadd area is just preserved instead and can be activated later.

    There are a few restrictions:
    - Only one continuous hotadd area allowed per node

    The main problem is dealing with the many buggy SRAT tables
    that are out there. The strategy here is to reject anything
    suspicious.

    Originally from Keith Mannthey, with several hacks and changes by AK
    and also contributions from Andrew Morton

    [ TBD: Problems pointed out by KAMEZAWA Hiroyuki :

    1) Goto's rebuild_zonelist patch will not work if CONFIG_MEMORY_HOTPLUG=n.

    Rebuilding zonelist is necessary when the system has just memory <
    4G at boot, and hot add memory > 4G. because x86_64 has DMA32,
    ZONE_NORAML is not included into zonelist at boot time if system
    doesn't have memory >4G at boot.

    [AK: should just force the higher zones at boot time when SRAT tells us]

    2) zone and node's spanned_pages and present_pages are not incremented.
    They should be.

    For example, our server (ia64/Fujitsu PrimeQuest) can equip memory
    from 4G to 1T(maybe 2T in future), and SRAT will *always* say we have
    possible 1T +memory. (Microsoft requires "write all possible memory
    in SRAT") When we reserve memmap for possible 1T memory, Linux will
    not work well in +minimum 4G configuraion ;)

    [AK: needs limiting to 5-10% of max memory]
    ]

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     

03 Apr, 2006

4 commits

  • * master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (28 commits)
    [ALSA] Kconfig SND_SEQUENCER_OSS help text fix
    [ALSA] Add Aux input switch control for Aureon Universe
    [ALSA] pcxhr - Fix the crash with REV01 board
    [ALSA] sound/pci/hda: use create_singlethread_workqueue()
    [ALSA] hda-intel - Add support of ATI SB600
    [ALSA] cs4281 - Fix the check of timeout in probe
    [ALSA] cs4281 - Fix the check of right channel
    [ALSA] Test volume resolution of usb audio at initialization
    [ALSA] maestro3.c: fix BUG, optimization
    [ALSA] HDA/Realtek: multiple input mux definitions and pin mode additions
    [ALSA] AdLib FM card driver
    [ALSA] Fix / clean up PCM-OSS setup hooks
    [ALSA] Clean up PCM codes (take 2)
    [ALSA] Tiny clean up of PCM codes
    [ALSA] ISA drivers bailing on first !enable[i]
    [ALSA] Remove obsolete kfree_nocheck call
    [ALSA] Remove obsolete kfree_nocheck call
    [ALSA] Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards
    [ALSA] Add snd-riptide driver for Conexant Riptide chip
    [ALSA] hda-codec - Fix noisy output wtih AD1986A 3stack model
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (48 commits)
    Documentation: fix minor kernel-doc warnings
    BUG_ON() Conversion in drivers/net/
    BUG_ON() Conversion in drivers/s390/net/lcs.c
    BUG_ON() Conversion in mm/slab.c
    BUG_ON() Conversion in mm/highmem.c
    BUG_ON() Conversion in kernel/signal.c
    BUG_ON() Conversion in kernel/signal.c
    BUG_ON() Conversion in kernel/ptrace.c
    BUG_ON() Conversion in ipc/shm.c
    BUG_ON() Conversion in fs/freevxfs/
    BUG_ON() Conversion in fs/udf/
    BUG_ON() Conversion in fs/sysv/
    BUG_ON() Conversion in fs/inode.c
    BUG_ON() Conversion in fs/fcntl.c
    BUG_ON() Conversion in fs/dquot.c
    BUG_ON() Conversion in md/raid10.c
    BUG_ON() Conversion in md/raid6main.c
    BUG_ON() Conversion in md/raid5.c
    Fix minor documentation typo
    BFP->BPF in Documentation/networking/tuntap.txt
    ...

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (49 commits)
    V4L/DVB (3667b): cpia2: fix function prototype
    V4L/DVB (3702): Make msp3400 routing defines more consistent
    V4L/DVB (3700): Remove obsolete commands from tvp5150.c
    V4L/DVB (3697): More msp3400 and bttv fixes
    V4L/DVB (3696): Previous change for cx2341X boards broke the remote support
    V4L/DVB (3693): Fix msp3400c and bttv stereo/mono/bilingual detection/handling
    V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0
    V4L/DVB (3689): Kconfig: fix VP-3054 Secondary I2C Bus build configuration menu dependencies
    V4L/DVB (3673): Fix budget-av CAM reset
    V4L/DVB (3672): Fix memory leak in dvr open
    V4L/DVB (3671): New module parameter 'tv_standard' (dvb-ttpci driver)
    V4L/DVB (3670): Fix typo in comment
    V4L/DVB (3669): Configurable dma buffer size for saa7146-based budget dvb cards
    V4L/DVB (3653h): Move usb v4l docs into Documentation/video4linux
    V4L/DVB (3667a): Fix SAP + stereo mode at msp3400
    V4L/DVB (3666): Remove trailing newlines
    V4L/DVB (3665): Add new NEC uPD64031A and uPD64083 i2c drivers
    V4L/DVB (3663): Fix msp3400c wait time and better audio mode fallbacks
    V4L/DVB (3662): Don't set msp3400c-non-existent register
    V4L/DVB (3661): Add wm8739 stereo audio ADC i2c driver
    ...

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (33 commits)
    [PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error)
    [PATCH] pcmcia: fix pcmcia_device_remove oops
    [PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45
    [PATCH] pcmcia: pseudo device handling update
    [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_present
    [PATCH] pcmcia: use bitfield instead of p_state and state
    [PATCH] pcmcia: remove unused p_dev->state flags
    [PATCH] pcmcia: make pcmcia_release_{io,irq} static
    [PATCH] pcmcia: add return value to _config() functions
    [PATCH] pcmcia: remove dev_link_t and client_handle_t indirection
    [PATCH] pcmcia: embed dev_link_t into struct pcmcia_device
    [PATCH] pcmcia: rename pcmcia_device.state
    [PATCH] pcmcia: remove unneeded Vcc pseudo setting
    [PATCH] pcmcia: remove export of pcmcia_release_configuration
    [PATCH] pcmcia: default suspend and resume handling
    [PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irq
    [PATCH] pcmcia: add pcmcia_disable_device
    [PATCH] serial_cs: add Merlin U630 IDs
    [PATCH] pcmcia: AT91RM9200 Compact Flash driver
    [PATCH] pcmcia: socket.functions starts with 1
    ...

    Linus Torvalds
     

02 Apr, 2006

5 commits


01 Apr, 2006

13 commits

  • This patch fixes a minor typo in Documentation/acpi-hotkey.txt.

    Signed-off-by: Adrian Bunk

    Michael Hayes
     
  • BFP should be BPF (BSD Packet Filter)

    Signed-off-by: Cal Peake
    Signed-off-by: Adrian Bunk

    Cal Peake
     
  • The previous patch somewhat diverted the train of thought.
    Here I am trying to bring the valued reader back on track.

    Signed-off-by: Stefan Richter
    Signed-off-by: Adrian Bunk

    Stefan Richter
     
  • Doc/kernel-parameters.txt: mention modinfo and sysfs

    Signed-off-by: Stefan Richter
    Signed-off-by: Adrian Bunk

    Stefan Richter
     
  • Doc/kernel-parameters.txt: delete false version information and history

    Signed-off-by: Stefan Richter
    Signed-off-by: Adrian Bunk

    Stefan Richter
     
  • Documentation: Make kernel-ABI.txt 80 columns wide

    Note that this only has line-wrapping and white-space changes.
    No text was changed at all.

    Signed-Off-By: Horms
    Signed-off-by: Adrian Bunk

    Horms
     
  • My patch to add brief documentation of the nomca boot parameter
    added it out of alphabetical order.

    Signed-Off-By: Horms
    Signed-off-by: Adrian Bunk

    Horms
     
  • Signed-off-by: Uwe Zeisberger
    Signed-off-by: Adrian Bunk

    Uwe Zeisberger
     
  • s/ducument/document/

    Signed-off-by: Adrian Bunk

    Adrian Bunk
     
  • The attached patch documents the Linux kernel's memory barriers.

    I've updated it from the comments I've been given.

    The per-arch notes sections are gone because it's clear that there are so many
    exceptions, that it's not worth having them.

    I've added a list of references to other documents.

    I've tried to get rid of the concept of memory accesses appearing on the bus;
    what matters is apparent behaviour with respect to other observers in the
    system.

    Interrupts barrier effects are now considered to be non-existent. They may be
    there, but you may not rely on them.

    I've added a couple of definition sections at the top of the document: one to
    specify the minimum execution model that may be assumed, the other to specify
    what this document refers to by the term "memory".

    I've made greater mention of the use of mmiowb().

    I've adjusted the way in which caches are described, and described the fun
    that can be had with cache coherence maintenance being unordered and data
    dependency not being necessarily implicit.

    I've described (smp_)read_barrier_depends().

    I've rearranged the order of the sections, so that memory barriers are
    discussed in abstract first, and then described the memory barrier facilities
    available on Linux, before going on to more real-world discussions and examples.

    I've added information about the lack of memory barriering effects with atomic
    ops and bitops.

    I've added information about control dependencies.

    I've added more diagrams to illustrate caching interactions between CPUs.

    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    David Howells
     
  • As announced, lookup_hash() can now become static.

    Signed-off-by: Adrian Bunk
    Cc: Christoph Hellwig
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • The LED class/subsystem takes John Lenz's work and extends and alters it to
    give what I think should be a fairly universal LED implementation.

    The series consists of several logical units:

    * LED Core + Class implementation
    * LED Trigger Core implementation
    * LED timer trigger (example of a complex trigger)
    * LED device drivers for corgi, spitz and tosa Zaurus models
    * LED device driver for locomo LEDs
    * LED device driver for ARM ixp4xx LEDs
    * Zaurus charging LED trigger
    * IDE disk activity LED trigger
    * NAND MTD activity LED trigger

    Why?
    ====

    LEDs are really simple devices usually amounting to a GPIO that can be turned
    on and off so why do we need all this code? On handheld or embedded devices
    they're an important part of an often limited user interface. Both users and
    developers want to be able to control and configure what the LED does and the
    number of different things they'd potentially want the LED to show is large.

    A subsystem is needed to try and provide all this different functionality in
    an architecture independent, simple but complete, generic and scalable manner.

    The alternative is for everyone to implement just what they need hidden away
    in different corners of the kernel source tree and to provide an inconsistent
    interface to userspace.

    Other Implementations
    =====================

    I'm aware of the existing arm led implementation. Currently the new subsystem
    and the arm code can coexist quite happily. Its up to the arm community to
    decide whether this new interface is acceptable to them. As far as I can see,
    the new interface can do everything the existing arm implementation can with
    the advantage that the new code is architecture independent and much more
    generic, configurable and scalable.

    I'm prepared to make the conversion to the LED subsystem (or assist with it)
    if appropriate.

    Implementation Details
    ======================

    I've stripped a lot of code out of John's original LED class. Colours were
    removed as LED colour is now part of the device name. Multiple colours are to
    be handled as multiple led devices. This means you get full control over each
    colour. I also removed the LED hardware timer code as the generic timer isn't
    going to add much overhead and is just as useful. I also decided to have the
    LED core track the current LED status (to ease suspend/resume handling)
    removing the need for brightness_get implementations in the LED drivers.

    An underlying design philosophy is simplicity. The aim is to keep a small
    amount of code giving as much functionality as possible.

    The major new idea is the led "trigger". A trigger is a source of led events.
    Triggers can either be simple or complex. A simple trigger isn't
    configurable and is designed to slot into existing subsystems with minimal
    additional code. Examples are the ide-disk, nand-disk and zaurus-charging
    triggers. With leds disabled, the code optimises away. Examples are
    nand-disk and ide-disk.

    Complex triggers whilst available to all LEDs have LED specific parameters and
    work on a per LED basis. The timer trigger is an example.

    You can change triggers in a similar manner to the way an IO scheduler is
    chosen (via /sys/class/leds/somedevice/trigger).

    So far there are only a handful of examples but it should easy to add further
    LED triggers without too much interference into other subsystems.

    Known Issues
    ============

    The LED Trigger core cannot be a module as the simple trigger functions would
    cause nightmare dependency issues. I see this as a minor issue compared to
    the benefits the simple trigger functionality brings. The rest of the LED
    subsystem can be modular.

    Some leds can be programmed to flash in hardware. As this isn't a generic LED
    device property, I think this should be exported as a device specific sysfs
    attribute rather than part of the class if this functionality is required (eg.
    to keep the led flashing whilst the device is suspended).

    Future Development
    ==================

    At the moment, a trigger can't be created specifically for a single LED.
    There are a number of cases where a trigger might only be mappable to a
    particular LED. The addition of triggers provided by the LED driver should
    cover this option and be possible to add without breaking the current
    interface.

    A CPU activity trigger similar to that found in the arm led implementation
    should be trivial to add.

    This patch:

    Add some brief documentation of the design decisions behind the LED class and
    how it appears to users.

    Signed-off-by: Richard Purdie
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Purdie
     
  • find_trylock_page() is an odd interface in that it doesn't take a reference
    like the others. Now that XFS no longer uses it, and its last remaining
    caller actually wants an elevated refcount, opencode that callsite and
    schedule find_trylock_page() for removal.

    Signed-off-by: Nick Piggin
    Acked-by: Hugh Dickins
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

31 Mar, 2006

8 commits