19 Oct, 2009

1 commit

  • PCLMULQDQ is used to accelerate the most time-consuming part of GHASH,
    carry-less multiplication. More information about PCLMULQDQ can be
    found at:

    http://software.intel.com/en-us/articles/carry-less-multiplication-and-its-usage-for-computing-the-gcm-mode/

    Because PCLMULQDQ changes XMM state, its usage must be enclosed with
    kernel_fpu_begin/end, which can be used only in process context, the
    acceleration is implemented as crypto_ahash. That is, request in soft
    IRQ context will be defered to the cryptd kernel thread.

    Signed-off-by: Huang Ying
    Signed-off-by: Herbert Xu

    Huang Ying
     

19 Sep, 2009

12 commits

  • …el/git/tip/linux-2.6-tip

    * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (38 commits)
    x86: Move get/set_wallclock to x86_platform_ops
    x86: platform: Fix section annotations
    x86: apic namespace cleanup
    x86: Distangle ioapic and i8259
    x86: Add Moorestown early detection
    x86: Add hardware_subarch ID for Moorestown
    x86: Add early platform detection
    x86: Move tsc_init to late_time_init
    x86: Move tsc_calibration to x86_init_ops
    x86: Replace the now identical time_32/64.c by time.c
    x86: time_32/64.c unify profile_pc
    x86: Move calibrate_cpu to tsc.c
    x86: Make timer setup and global variables the same in time_32/64.c
    x86: Remove mca bus ifdef from timer interrupt
    x86: Simplify timer_ack magic in time_32.c
    x86: Prepare unification of time_32/64.c
    x86: Remove do_timer hook
    x86: Add timer_init to x86_init_ops
    x86: Move percpu clockevents setup to x86_init_ops
    x86: Move xen_post_allocator_init into xen_pagetable_setup_done
    ...

    Fix up conflicts in arch/x86/include/asm/io_apic.h

    Linus Torvalds
     
  • Signed-off-by: Geoffrey Thomas
    Signed-off-by: Tim Abbott
    Acked-by: Sam Ravnborg
    Acked-by: David S. Miller
    Signed-off-by: Linus Torvalds

    Geoffrey Thomas
     
  • This is largely a straightforward conversion. The patch results in
    fewer output sections, and some data being reordered, but should have
    no functional impact.

    Also, note that this patch moves some data (namely, init_task and
    cacheline-aligned) inside [_sdata,_edata].

    Because frv already builds using -ffunction-sections -fdata-sections,
    we can't use BSS_SECTION or RW_DATA_SECTION yet, since they do not
    currently include the required .bss.* and .data.* sections.

    Signed-off-by: Nelson Elhage
    Acked-by: David Howells
    Signed-off-by: Tim Abbott
    Acked-by: Sam Ravnborg
    Signed-off-by: Linus Torvalds

    Nelson Elhage
     
  • It appears that frv copied the .altinstructions definitions in its linker
    script from x86. Since frv doesn't put anything in those sections, this
    is just dead code.

    Signed-off-by: Nelson Elhage
    Acked-by: David Howells
    Signed-off-by: Tim Abbott
    Acked-by: Sam Ravnborg
    Signed-off-by: Linus Torvalds

    Nelson Elhage
     
  • * 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score: (22 commits)
    score: add TIF_NOTIFY_RESUME define in asm/thread_info.h
    score: make init_thread_union align to THREAD_SIZE
    score: update files according to review comments.
    score: add old syscall support
    score: add MEMORY_START and MEMORY_SIZE define, to make the code clear
    score: update inconsistent declare after .c was changed
    score: remove unused code, add include files in .c
    score: clean up mm/init.c
    score: make irq.h definitions local
    score: cleanups: dead code, 0 as pointer, shadowed variables
    score: fix function prototypes
    score: add address space annotations
    score: add missing #includes
    score: move save arg5 and arg6 instruction in front of enable_irq
    score: add prototypes for wrapped syscalls
    score: remove init_mm
    score: add generic sys_call_table
    score: remove __{put,get}_user_unknown
    score: unset __ARCH_WANT_IPC_PARSE_VERSION
    score: update files according to review comments
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (262 commits)
    sh: mach-ecovec24: Add user debug switch support
    sh: Kill off unused se_skipped in alignment trap notification code.
    sh: Wire up HAVE_SYSCALL_TRACEPOINTS.
    video: sh_mobile_lcdcfb: use both register sets for display panning
    video: sh_mobile_lcdcfb: implement display panning
    sh: Fix up sh7705 flush_dcache_page() build.
    sh: kfr2r09: document the PLL/FLL RF relationship.
    sh: mach-ecovec24: need asm/clock.h.
    sh: mach-ecovec24: deassert usb irq on boot.
    sh: Add KEYSC support for EcoVec24
    sh: add kycr2_delay for sh_keysc
    sh: cpufreq: Include CPU id in info messages.
    sh: multi-evt support for SH-X3 proto CPU.
    sh: clkfwk: remove bogus set_bus_parent() from SH7709.
    sh: Fix the indication point of the liquid crystal of AP-325RXA(AP3300)
    sh: Add EcoVec24 romImage defconfig
    sh: USB disable process is needed if romImage boot for EcoVec24
    sh: EcoVec24: add HIZA setting for LED
    sh: EcoVec24: write MAC address in boot
    sh: Add romImage support for EcoVec24
    ...

    Linus Torvalds
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
    [IA64] Clean up linker script using standard macros.
    [IA64] Use standard macros for page-aligned data.
    [IA64] Use .ref.text, not .text.init for start_ap.
    [IA64] sgi-xp: fix printk format warnings
    [IA64] ioc4_serial: fix printk format warnings
    [IA64] mbcs: fix printk format warnings
    [IA64] pci_br, fix infinite loop in find_free_ate()
    [IA64] kdump: Short path to freeze CPUs
    [IA64] kdump: Try INIT regardless of
    [IA64] kdump: Mask INIT first in panic-kdump path
    [IA64] kdump: Don't return APs to SAL from kdump
    [IA64] kexec: Unregister MCA handler before kexec
    [IA64] kexec: Make INIT safe while transition to
    [IA64] kdump: Mask MCA/INIT on frozen cpus

    Fix up conflict in arch/ia64/kernel/vmlinux.lds.S as per Tony's
    suggestion.

    Linus Torvalds
     
  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (55 commits)
    regulator: Voltage count for AB3100
    mfd: Convert WM8350 to use request_threaded_irq()
    mfd: Update MAINTAINERS patterns for WM831x
    mfd: Fix twl4030-power warnings
    regulator: AB3100 support
    rtc: AB3100 RTC support
    mfd: Fix ab3100-otp build failure
    mfd: OMAP: Board-specifc twl4030 DPS scripts for RX51 board
    mfd: Print warning for twl4030 out-of-order script loading
    mfd: Add support for TWL4030/5030 dynamic power switching
    mfd: AB3100 OTP readout
    regulator: Add Freescale MC13783 driver
    mfd: Add Freescale MC13783 driver
    mfd: AB3100 disable irq nosync
    mfd: AB3100 alter default setting
    mfd: AB3100 propagate error
    mfd: AB3100 accessor function cleanups
    rtc: Add support for RTCs on Wolfson WM831x devices
    regulator: get pcap data from the parent device
    input: PCAP2 misc input driver
    ...

    Linus Torvalds
     
  • …t/khilman/linux-davinci

    * 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: (62 commits)
    DaVinci: DM646x - platform changes for vpif capture and display drivers
    davinci: DM355 - platform changes for vpfe capture
    davinci: DM644x platform changes for vpfe capture
    davinci: audio: move tlv320aic33 i2c setup into board files
    DaVinci: EDMA: Adding 2 new APIs for allocating/freeing PARAMs
    DaVinci: DM365: Adding entries for DM365 IRQ's
    DaVinci: DM355: Adding PINMUX entries for DM355 Display
    davinci: Handle pinmux conflict between mmc/sd and nor flash
    davinci: Add NOR flash support for da850/omap-l138
    davinci: Add NAND flash support for DA850/OMAP-L138
    davinci: Add MMC/SD support for da850/omap-l138
    davinci: Add platform support for da850/omap-l138 GLCD
    davinci: Macro to convert GPIO signal to GPIO pin number
    davinci: Audio support for DA850/OMAP-L138 EVM
    davinci: Audio support for DA830 EVM
    davinci: Correct the number of GPIO pins for da850/omap-l138
    davinci: Configure MDIO pins for EMAC
    DaVinci: DM365: Add Support for new Revision of silicon
    DaVinci: DM365: Fix Compilation issue due to PINMUX entry
    DaVinci: EDMA: Updating default queue handling
    ...

    Linus Torvalds
     
  • * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (47 commits)
    OMAP clock: use debugfs_remove_recursive() for rewinding
    OMAP2/3/4 core: create omap_device layer
    OMAP: omap_hwmod: call omap_hwmod init at boot; create interconnects
    OMAP2/3/4: create omap_hwmod layer
    OMAP2/3 board-*.c files: read bootloader configuration earlier
    OMAP2/3/4 PRCM: add module IDLEST wait code
    OMAP2/3 PM: create the OMAP PM interface and add a default OMAP PM no-op layer
    OMAP3 clock: remove superfluous calls to omap2_init_clk_clkdm
    OMAP clock: associate MPU clocks with the mpu_clkdm
    OMAP3 clock: Fixed processing of bootarg 'mpurate'
    OMAP: SDRC: Add several new register definitions
    OMAP: powerdomain: Fix overflow when doing powerdomain deps lookups.
    OMAP: PM: Added suspend target state control to debugfs for OMAP3
    OMAP: PM debug: Add PRCM register dump support
    OMAP: PM debug: make powerdomains use PM-debug counters
    OMAP: PM: Add pm-debug counters
    OMAP: PM: Add closures to clkdm_for_each and pwrdm_for_each.
    OMAP: PM: Hook into PM counters
    OMAP: PM counter infrastructure.
    OMAP3: PM: fix lockdep warning caused by omap3_pm_init
    ...

    Linus Torvalds
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
    [CPUFREQ] Fix NULL ptr regression in powernow-k8
    [CPUFREQ] Create a blacklist for processors that should not load the acpi-cpufreq module.
    [CPUFREQ] Powernow-k8: Enable more than 2 low P-states
    [CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)
    [CPUFREQ] ondemand - Use global sysfs dir for tuning settings
    [CPUFREQ] Introduce global, not per core: /sys/devices/system/cpu/cpufreq
    [CPUFREQ] Bail out of cpufreq_add_dev if the link for a managed CPU got created
    [CPUFREQ] Factor out policy setting from cpufreq_add_dev
    [CPUFREQ] Factor out interface creation from cpufreq_add_dev
    [CPUFREQ] Factor out symlink creation from cpufreq_add_dev
    [CPUFREQ] cleanup up -ENOMEM handling in cpufreq_add_dev
    [CPUFREQ] Reduce scope of cpu_sys_dev in cpufreq_add_dev
    [CPUFREQ] update Doc for cpuinfo_cur_freq and scaling_cur_freq

    Linus Torvalds
     
  • * 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (34 commits)
    time: Prevent 32 bit overflow with set_normalized_timespec()
    clocksource: Delay clocksource down rating to late boot
    clocksource: clocksource_select must be called with mutex locked
    clocksource: Resolve cpu hotplug dead lock with TSC unstable, fix crash
    timers: Drop a function prototype
    clocksource: Resolve cpu hotplug dead lock with TSC unstable
    timer.c: Fix S/390 comments
    timekeeping: Fix invalid getboottime() value
    timekeeping: Fix up read_persistent_clock() breakage on sh
    timekeeping: Increase granularity of read_persistent_clock(), build fix
    time: Introduce CLOCK_REALTIME_COARSE
    x86: Do not unregister PIT clocksource on PIT oneshot setup/shutdown
    clocksource: Avoid clocksource watchdog circular locking dependency
    clocksource: Protect the watchdog rating changes with clocksource_mutex
    clocksource: Call clocksource_change_rating() outside of watchdog_lock
    timekeeping: Introduce read_boot_clock
    timekeeping: Increase granularity of read_persistent_clock()
    timekeeping: Update clocksource with stop_machine
    timekeeping: Add timekeeper read_clock helper functions
    timekeeping: Move NTP adjusted clock multiplier to struct timekeeper
    ...

    Fix trivial conflict due to MIPS lemote -> loongson renaming.

    Linus Torvalds
     

18 Sep, 2009

27 commits

  • * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (21 commits)
    x86, mce: Fix compilation with !CONFIG_DEBUG_FS in mce-severity.c
    x86, mce: CE in last bank prevents panic by unknown MCE
    x86, mce: Fake panic support for MCE testing
    x86, mce: Move debugfs mce dir creating to mce.c
    x86, mce: Support specifying raise mode for software MCE injection
    x86, mce: Support specifying context for software mce injection
    x86, mce: fix reporting of Thermal Monitoring mechanism enabled
    x86, mce: remove never executed code
    x86, mce: add missing __cpuinit tags
    x86, mce: fix "mce" boot option handling for CONFIG_X86_NEW_MCE
    x86, mce: don't log boot MCEs on Pentium M (model == 13) CPUs
    x86: mce: Lower maximum number of banks to architecture limit
    x86: mce: macros to compute banks MSRs
    x86: mce: Move per bank data in a single datastructure
    x86: mce: Move code in mce.c
    x86: mce: Rename CONFIG_X86_NEW_MCE to CONFIG_X86_MCE
    x86: mce: Remove old i386 machine check code
    x86: mce: Update X86_MCE description in x86/Kconfig
    x86: mce: Make CONFIG_X86_ANCIENT_MCE dependent on CONFIG_X86_MCE
    x86, mce: use atomic_inc_return() instead of add by 1
    ...

    Manually fixed up trivial conflicts:
    Documentation/feature-removal-schedule.txt
    arch/x86/kernel/cpu/mcheck/mce.c

    Linus Torvalds
     
  • …/git/tip/linux-2.6-tip

    * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)
    sched: Fix SD_POWERSAVING_BALANCE|SD_PREFER_LOCAL vs SD_WAKE_AFFINE
    sched: Stop buddies from hogging the system
    sched: Add new wakeup preemption mode: WAKEUP_RUNNING
    sched: Fix TASK_WAKING & loadaverage breakage
    sched: Disable wakeup balancing
    sched: Rename flags to wake_flags
    sched: Clean up the load_idx selection in select_task_rq_fair
    sched: Optimize cgroup vs wakeup a bit
    sched: x86: Name old_perf in a unique way
    sched: Implement a gentler fair-sleepers feature
    sched: Add SD_PREFER_LOCAL
    sched: Add a few SYNC hint knobs to play with
    sched: Fix sync wakeups again
    sched: Add WF_FORK
    sched: Rename sync arguments
    sched: Rename select_task_rq() argument
    sched: Feature to disable APERF/MPERF cpu_power
    x86: sched: Provide arch implementations using aperf/mperf
    x86: Add generic aperf/mperf code
    x86: Move APERF/MPERF into a X86_FEATURE
    ...

    Fix up trivial conflict in arch/x86/include/asm/processor.h due to
    nearby addition of amd_get_nb_id() declaration from the EDAC merge.

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, pat: don't use rb-tree based lookup in reserve_memtype()
    x86: Increase MIN_GAP to include randomized stack

    Linus Torvalds
     
  • …el/git/tip/linux-2.6-tip

    * 'tracing-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (44 commits)
    vsnprintf: remove duplicate comment of vsnprintf
    softirq: add BLOCK_IOPOLL to softirq_to_name
    oprofile: fix oprofile regression: select RING_BUFFER_ALLOW_SWAP
    tracing: switch function prints from %pf to %ps
    vsprintf: add %ps that is the same as %pS but is like %pf
    tracing: Fix minor bugs for __unregister_ftrace_function_probe
    tracing: remove notrace from __kprobes annotation
    tracing: optimize global_trace_clock cachelines
    MAINTAINERS: Update tracing tree details
    ftrace: document function and function graph implementation
    tracing: make testing syscall events a separate configuration
    tracing: remove some unused macros
    ftrace: add compile-time check on F_printk()
    tracing: fix F_printk() typos
    tracing: have TRACE_EVENT macro use __flags to not shadow parameter
    tracing: add static to generated TRACE_EVENT functions
    ring-buffer: typecast cmpxchg to fix PowerPC warning
    tracing: add filter event logic to special, mmiotrace and boot tracers
    tracing: remove trace_event_types.h
    tracing: use the new trace_entries.h to create format files
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc: Update defconfigs.
    sparc: Kill PROM console driver.

    Linus Torvalds
     
  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (51 commits)
    MIPS: BCM63xx: Add integrated ethernet mac support.
    MIPS: BCM63xx: Add support for the Broadcom BCM63xx family of SOCs.
    MIPS: BCM63xx: Add Broadcom 63xx CPU definitions.
    MIPS: Octeon: Move some platform device registration to its own file.
    MIPS: Don't corrupt page tables on vmalloc fault.
    MIPS: Shrink the size of tlb handler
    MIPS: Alchemy: override loops_per_jiffy detection
    MIPS: hw_random: Add hardware RNG for Octeon SOCs.
    MIPS: Octeon: Add hardware RNG platform device.
    MIPS: Remove useless zero initializations.
    MIPS: Alchemy: get rid of allow_au1k_wait
    MIPS: Octeon: Set kernel_uses_llsc to false on non-SMP builds.
    MIPS: Allow kernel use of LL/SC to be separate from the presence of LL/SC.
    MIPS: Get rid of CONFIG_CPU_HAS_LLSC
    MIPS: Malta: Remove pointless use use of CONFIG_CPU_HAS_LLSC
    MIPS: Rewrite clearing of ll_bit on context switch in C
    MIPS: Rewrite sysmips(MIPS_ATOMIC_SET, ...) in C with inline assembler
    MIPS: Consolidate all CONFIG_CPU_HAS_LLSC use in a single C file.
    MIPS: Clean up linker script using new linker script macros.
    MIPS: Use PAGE_SIZE in assembly instead of _PAGE_SIZE.
    ...

    Linus Torvalds
     
  • Merge reason:

    Suresh Siddha (1):
    x86, pat: don't use rb-tree based lookup in reserve_memtype()

    ... requires previous x86/pat commits already pushed to Linus.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Recent enhancement of rb-tree based lookup exposed a bug with the lookup
    mechanism in the reserve_memtype() which ensures that there are no conflicting
    memtype requests for the memory range.

    memtype_rb_search() returns an entry which has a start address = new requested end. This results in conflicting memtype
    mappings.

    Same bug exists with the old code which uses cached_entry from where
    we traverse the linear linked list. But the new rb-tree code exposes this
    bug fairly easily.

    For now, don't use the memtype_rb_search() and always start the search from
    the head of linear linked list in reserve_memtype(). Linear linked list
    for most of the systems grow's to few 10's of entries(as we track memory type
    of RAM pages using struct page). So we should be ok for now.

    We still retain the rbtree and use it to speed up free_memtype() which
    doesn't have the same bug(as we know what exactly we are searching for
    in free_memtype).

    Also use list_for_each_entry_from() in free_memtype() so that we start
    the search from rb-tree lookup result.

    Reported-by: Markus Trippelsdorf
    Signed-off-by: Suresh Siddha
    Cc: Venkatesh Pallipadi
    LKML-Reference:
    Signed-off-by: H. Peter Anvin

    Suresh Siddha
     
  • commit 85bac32c4a52c592b857f2c360cc5ec93a097d70
    ring-buffer: only enable ring_buffer_swap_cpu when needed
    broke oprofile (at least on s390, but likely on all platforms).

    this patch lets oprofile select RING_BUFER_ALLOW_SWAP to make
    ring_buffer_swap_cpu usable for oprofile.

    Signed-off-by: Christian Borntraeger
    LKML-Reference:
    Cc: Ingo Molnar
    Cc: Robert Richter
    Signed-off-by: Steven Rostedt

    Christian Borntraeger
     
  • Merge reason: Pick up kernel/softirq.c update for dependent fix.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Signed-off-by: Maxime Bizon
    Signed-off-by: Florian Fainelli
    Signed-off-by: David S. Miller
    Signed-off-by: Ralf Baechle

    Maxime Bizon
     
  • Signed-off-by: Maxime Bizon
    Signed-off-by: Florian Fainelli
    Signed-off-by: Ralf Baechle

    Maxime Bizon
     
  • Todo: Nothing ever detects CPU_BCM6338 but the code tests for it anyway.

    Signed-off-by: Maxime Bizon
    Signed-off-by: Ralf Baechle

    Maxime Bizon
     
  • There is a bunch of platform device registration in
    arch/mips/cavium-octeon/setup.c. We move it to its own file in
    preparation for adding more platform devices.

    Signed-off-by: David Daney
    Signed-off-by: Ralf Baechle

    David Daney
     
  • The code after the vmalloc_fault: label in do_page_fault() modifies
    user page tables, this is not correct for 64-bit kernels.

    For 64-bit kernels we should go straight to the no_context handler
    skipping vmalloc_fault.

    Signed-off-by: David Daney
    Signed-off-by: Ralf Baechle

    David Daney
     
  • By combining swapper_pg_dir and module_pg_dir, several if conditions
    can be eliminated from the tlb exception handler. The reason they
    can be combined is that, the effective virtual address of vmalloc
    returned is at the bottom, and of module_alloc returned is at the
    top. It also fixes the bug in vmalloc(), which happens when its
    return address is not covered by the first pgd.

    Signed-off-by: Wu Fei
    Signed-off-by: Ralf Baechle

    Wu Fei
     
  • loops_per_jiffy depends on coreclk speed; preset it instead of
    letting the kernel waste precious microseconds trying to approximate it.

    Signed-off-by: Manuel Lauss
    Signed-off-by: Ralf Baechle

    Manuel Lauss
     
  • Add a platform device for the Octeon Random Number Generator (RNG).

    Signed-off-by: David Daney
    Acked-by: Herbert Xu
    Signed-off-by: Ralf Baechle

    David Daney
     
  • Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • Eliminate the 'allow_au1k_wait' variable. MIPS kernel installs the
    Alchemy-specific wait code before timer initialization; if the C0
    timer must be used for timekeeping the wait function is set to NULL
    which means no wait implementation is available.

    As a sideeffect, the 'wait instruction available' output in
    /proc/cpuinfo now correctly indicates whether 'wait' is usable.

    Run-tested on DB1200.

    Signed-off-by: Manuel Lauss
    Signed-off-by: Ralf Baechle

    Manuel Lauss
     
  • Signed-off-by: David Daney
    Signed-off-by: Ralf Baechle

    David Daney
     
  • On some CPUs, it is more efficient to disable and enable interrupts in the
    kernel rather than use ll/sc for atomic operations. But if we were to set
    cpu_has_llsc to false, we would break the userspace futex interface (in
    asm/futex.h).

    We separate the two concepts, with a new predicate kernel_uses_llsc, that
    lets us disable the kernel's use of ll/sc while still allowing the futex
    code to use it.

    Also there were a couple of cases in bitops.h where we were using ll/sc
    unconditionally even if cpu_has_llsc were false.

    Signed-off-by: David Daney
    Signed-off-by: Ralf Baechle

    David Daney
     
  • CONFIG_CPU_HAS_LLSC duplicated the function of cpu_has_llsc for no good
    reason and and the results if the one was enabled and the other disabled
    was very unobvious. Remove it now that there are no more remaining users.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • All CPUs for Malta support LL/SC.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • This also means there is now only one implementation not 3 left.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • This way it doesn't have to use CONFIG_CPU_HAS_LLSC anymore.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • Signed-off-by: Ralf Baechle

    Ralf Baechle