26 Sep, 2011

2 commits


20 Sep, 2011

2 commits

  • 598841ca9919d008b520114d8a4378c4ce4e40a1 ([S390] use gmap address
    spaces for kvm guest images) changed kvm on s390 to use a separate
    address space for kvm guests. We can now put KVM guests anywhere
    in the user address mode with a size up to 8PB - as long as the
    memory is 1MB-aligned. This change was done without KVM extension
    capability bit.
    The change was added after 3.0, but we still have a chance to add
    a feature bit before 3.1 (keeping the releases in a sane state).
    We use number 71 to avoid collisions with other pending kvm patches
    as requested by Alexander Graf.

    Signed-off-by: Christian Borntraeger
    Acked-by: Avi Kivity
    Cc: Alexander Graf
    Signed-off-by: Heiko Carstens

    Christian Borntraeger
     
  • 598841ca9919d008b520114d8a4378c4ce4e40a1 ([S390] use gmap address
    spaces for kvm guest images) changed kvm to use a separate address
    space for kvm guests. This address space was switched in __vcpu_run
    In some cases (preemption, page fault) there is the possibility that
    this address space switch is lost.
    The typical symptom was a huge amount of validity intercepts or
    random guest addressing exceptions.
    Fix this by doing the switch in sie_loop and sie_exit and saving the
    address space in the gmap structure itself. Also use the preempt
    notifier.

    Signed-off-by: Christian Borntraeger
    Acked-by: Avi Kivity
    Signed-off-by: Heiko Carstens

    Christian Borntraeger
     

27 Aug, 2011

1 commit


24 Aug, 2011

3 commits


05 Aug, 2011

1 commit

  • * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
    [S390] signal: use set_restore_sigmask() helper
    [S390] smp: remove pointless comments in startup_secondary()
    [S390] qdio: Use kstrtoul_from_user
    [S390] sclp_async: Use kstrtoul_from_user
    [S390] exec: remove redundant set_fs(USER_DS)
    [S390] cpu hotplug: on cpu start wait until being marked active
    [S390] signal: convert to use set_current_blocked()
    [S390] asm offsets: fix coding style
    [S390] Add support for IBM zEnterprise 114
    [S390] dasd: check if raw track access is supported
    [S390] Use diagnose 308 for system reset
    [S390] Export store_status() function
    [S390] dasd: use vmalloc for statistics input buffer
    [S390] Add PSW restart shutdown trigger
    [S390] missing return in page_table_alloc_pgste
    [S390] qdio: 2nd stage retry on SIGA-W busy conditions

    Linus Torvalds
     

03 Aug, 2011

13 commits

  • Some trivial conflicts due to other various merges
    adding to the end of common lists sooner than this one.

    arch/ia64/Kconfig
    arch/powerpc/Kconfig
    arch/x86/Kconfig
    lib/Kconfig
    lib/Makefile

    Signed-off-by: Len Brown

    Len Brown
     
  • cmpxchg() is widely used by lockless code, including NMI-safe lockless
    code. But on some architectures, the cmpxchg() implementation is not
    NMI-safe, on these architectures the lockless code may need a
    spin_trylock_irqsave() based implementation.

    This patch adds a Kconfig option: ARCH_HAVE_NMI_SAFE_CMPXCHG, so that
    NMI-safe lockless code can depend on it or provide different
    implementation according to it.

    On many architectures, cmpxchg is only NMI-safe for several specific
    operand sizes. So, ARCH_HAVE_NMI_SAFE_CMPXCHG define in this patch
    only guarantees cmpxchg is NMI-safe for sizeof(unsigned long).

    Signed-off-by: Huang Ying
    Acked-by: Mike Frysinger
    Acked-by: Paul Mundt
    Acked-by: Hans-Christian Egtvedt
    Acked-by: Benjamin Herrenschmidt
    Acked-by: Chris Metcalf
    Acked-by: Richard Henderson
    CC: Mikael Starvik
    Acked-by: David Howells
    CC: Yoshinori Sato
    CC: Tony Luck
    CC: Hirokazu Takata
    CC: Geert Uytterhoeven
    CC: Michal Simek
    Acked-by: Ralf Baechle
    CC: Kyle McMartin
    CC: Martin Schwidefsky
    CC: Chen Liqin
    CC: "David S. Miller"
    CC: Ingo Molnar
    CC: Chris Zankel
    Signed-off-by: Len Brown

    Huang Ying
     
  • We should call set_restore_sigmask() instead of directly setting
    TIF_RESTORE_SIGMASK. This change should have been done three years
    earlier... see 4e4c22 "signals: add set_restore_sigmask".

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • Remove pointless comments in startup_secondary(). There is not too much
    value in having comments like e.g. "call cpu notifiers" just before a
    call to notify_cpu*().

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • The address limit is already set in flush_old_exec() so those calls to
    set_fs(USER_DS) are redundant.

    Signed-off-by: Mathias Krause
    Signed-off-by: Heiko Carstens

    Mathias Krause
     
  • This is the same as fd8a7de1 "x86: cpu-hotplug: Prevent softirq wakeup
    on wrong CPU".
    Unlike on x86 this doesn't fix a bug on s390 since we do not have
    threaded interrupt handlers. However we want to keep the same
    initialization order like on x86. This should prevent bugs caused by
    code which assumes (and relies on) the init order is the same on each
    architecture.

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • Convert to use set_current_blocked() like x86.

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • Because of readability reasons we ignore the 80 character line limit
    in asm offsets. Just one line per define, nothing else.

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • Just fix up the Kconfig description and the elf platform.

    Signed-off-by: Heiko Carstens

    Heiko Carstens
     
  • The diagnose 308 call is the prefered method for clearing all ongoing I/O.
    Therefore if it is available we use it instead of doing a manual reset.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Heiko Carstens

    Michael Holzheu
     
  • For kdump we need a store status function to save the registers for the
    current CPU. Therefore this patch exports a function "store_status()".
    In addition to that now also floating point registers are saved correctly.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Heiko Carstens

    Michael Holzheu
     
  • With this patch a new S390 shutdown trigger "restart" is added. If under
    z/VM "systerm restart" is entered or under the HMC the "PSW restart" button
    is pressed, the PSW located at 0 (31 bit) or 0x1a0 (64 bit) bit is loaded.
    Now we execute do_restart() that processes the restart action that is
    defined under /sys/firmware/shutdown_actions/on_restart. Currently the
    following actions are possible: reipl (default), stop, vmcmd, dump, and
    dump_reipl.

    Signed-off-by: Michael Holzheu
    Signed-off-by: Heiko Carstens

    Michael Holzheu
     
  • Fix the following compile warning for !CONFIG_PGSTE:

    CC arch/s390/mm/pgtable.o
    arch/s390/mm/pgtable.c: In function ‘page_table_alloc_pgste’:
    arch/s390/mm/pgtable.c:531:1: warning: no return statement in function returning non-void [-Wreturn-type]

    Signed-off-by: Jan Glauber
    Signed-off-by: Heiko Carstens

    Jan Glauber
     

27 Jul, 2011

5 commits

  • After changing all consumers of atomics to include , we
    ran into some compile time errors due to this dependency chain:

    linux/atomic.h
    -> asm/atomic.h
    -> asm-generic/atomic-long.h

    where atomic-long.h could use funcs defined later in linux/atomic.h
    without a prototype. This patches moves the code that includes
    asm-generic/atomic*.h to linux/atomic.h.

    Archs that need need to select
    CONFIG_GENERIC_ATOMIC64 from now on (some of them used to include it
    unconditionally).

    Compile tested on i386 and x86_64 with allnoconfig.

    Signed-off-by: Arun Sharma
    Cc: Eric Dumazet
    Cc: Ingo Molnar
    Cc: David Miller
    Acked-by: Mike Frysinger
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arun Sharma
     
  • This is in preparation for more generic atomic primitives based on
    __atomic_add_unless.

    Signed-off-by: Arun Sharma
    Signed-off-by: Hans-Christian Egtvedt
    Reviewed-by: Eric Dumazet
    Cc: Ingo Molnar
    Cc: David Miller
    Acked-by: Mike Frysinger
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arun Sharma
     
  • This allows us to move duplicated code in
    (atomic_inc_not_zero() for now) to

    Signed-off-by: Arun Sharma
    Reviewed-by: Eric Dumazet
    Cc: Ingo Molnar
    Cc: David Miller
    Cc: Eric Dumazet
    Acked-by: Mike Frysinger
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arun Sharma
     
  • The majority of architectures implement ext2 atomic bitops as
    test_and_{set,clear}_bit() without spinlock.

    This adds this type of generic implementation in ext2-atomic-setbit.h and
    use it wherever possible.

    Signed-off-by: Akinobu Mita
    Suggested-by: Andreas Dilger
    Suggested-by: Arnd Bergmann
    Acked-by: Arnd Bergmann
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • [ poleg@redhat.com: no need to declare show_regs() in ptrace.h, sched.h does this ]
    Signed-off-by: Mike Frysinger
    Cc: Tejun Heo
    Signed-off-by: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Frysinger
     

26 Jul, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits)
    fs: Merge split strings
    treewide: fix potentially dangerous trailing ';' in #defined values/expressions
    uwb: Fix misspelling of neighbourhood in comment
    net, netfilter: Remove redundant goto in ebt_ulog_packet
    trivial: don't touch files that are removed in the staging tree
    lib/vsprintf: replace link to Draft by final RFC number
    doc: Kconfig: `to be' -> `be'
    doc: Kconfig: Typo: square -> squared
    doc: Konfig: Documentation/power/{pm => apm-acpi}.txt
    drivers/net: static should be at beginning of declaration
    drivers/media: static should be at beginning of declaration
    drivers/i2c: static should be at beginning of declaration
    XTENSA: static should be at beginning of declaration
    SH: static should be at beginning of declaration
    MIPS: static should be at beginning of declaration
    ARM: static should be at beginning of declaration
    rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check
    Update my e-mail address
    PCIe ASPM: forcedly -> forcibly
    gma500: push through device driver tree
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-ep93xx/dma-m2p.c (deleted)
    - drivers/gpio/gpio-ep93xx.c (renamed and context nearby)
    - drivers/net/r8169.c (just context changes)

    Linus Torvalds
     

25 Jul, 2011

3 commits

  • * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (21 commits)
    [S390] use siginfo for sigtrap signals
    [S390] dasd: add enhanced DASD statistics interface
    [S390] kvm: make sigp emerg smp capable
    [S390] disable cpu measurement alerts on a dying cpu
    [S390] initial cr0 bits
    [S390] iucv cr0 enablement bit
    [S390] race safe external interrupt registration
    [S390] remove tape block docu
    [S390] ap: toleration support for ap device type 10
    [S390] cleanup program check handler prototypes
    [S390] remove kvm mmu reload on s390
    [S390] Use gmap translation for accessing guest memory
    [S390] use gmap address spaces for kvm guest images
    [S390] kvm guest address space mapping
    [S390] fix s390 assembler code alignments
    [S390] move sie code to entry.S
    [S390] kvm: handle tprot intercepts
    [S390] qdio: clear shared DSCI before scheduling the queue handler
    [S390] reference bit testing for unmapped pages
    [S390] irqs: Do not trace arch_local_{*,irq_*} functions
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
    modpost: Fix modpost's license checking V3
    module: add /sys/module//uevent files
    module: change attr callbacks to take struct module_kobject
    modules: make arch's use default loader hooks
    modules: add default loader hook implementations
    param: fix return value handling in param_set_*

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (34 commits)
    crypto: caam - ablkcipher support
    crypto: caam - faster aead implementation
    crypto: caam - structure renaming
    crypto: caam - shorter names
    crypto: talitos - don't bad_key in ablkcipher setkey
    crypto: talitos - remove unused giv from ablkcipher methods
    crypto: talitos - don't set done notification in hot path
    crypto: talitos - ensure request ordering within a single tfm
    crypto: gf128mul - fix call to memset()
    crypto: s390 - support hardware accelerated SHA-224
    crypto: algif_hash - Handle initial af_alg_make_sg error correctly
    crypto: sha1_generic - use SHA1_BLOCK_SIZE
    hwrng: ppc4xx - add support for ppc4xx TRNG
    crypto: crypto4xx - Perform read/modify/write on device control register
    crypto: caam - fix build warning when DEBUG_FS not configured
    crypto: arc4 - Fixed coding style issues
    crypto: crc32c - Fixed coding style issue
    crypto: omap-sham - do not schedule tasklet if there is no active requests
    crypto: omap-sham - clear device flags when finishing request
    crypto: omap-sham - irq handler must not clear error code
    ...

    Linus Torvalds
     

24 Jul, 2011

9 commits

  • This patch removes all the module loader hook implementations in the
    architecture specific code where the functionality is the same as that
    now provided by the recently added default hooks.

    Signed-off-by: Jonas Bonn
    Acked-by: Mike Frysinger
    Acked-by: Geert Uytterhoeven
    Tested-by: Michal Simek
    Signed-off-by: Rusty Russell

    Jonas Bonn
     
  • Provide additional information on SIGTRAP by using a sig_info signal.
    Use TRAP_BRKPT for breakpoints via illegal operation and TRAP_HWBKPT
    for breakpoints via program event recording. Provide the address of
    the instruction that caused the breakpoint via si_addr.
    While we are at it get rid of tracehook_consider_fatal_signal.

    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     
  • SIGP emerg needs to pass the source vpu adress into __LC_CPU_ADDRESS of the
    target guest.

    Signed-off-by: Christian Ehrhardt
    Signed-off-by: Martin Schwidefsky

    Christian Ehrhardt
     
  • The cpu measurement alerts that are used for instance by oprofile
    for hardware sampling are not turned off on a cpu that is going
    offline. Add the appropriate control register bit that should be
    disabled to the list.

    Signed-off-by: Jan Glauber
    Signed-off-by: Martin Schwidefsky

    Jan Glauber
     
  • Remove outdated bits from the initial cr0 register.

    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     
  • Do not set the cr0 enablement bit for iucv by default in head[31|64].S,
    move the enablement to iucv_init in the iucv base layer.

    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     
  • The (un-)register_external_interrupt functions are not race safe if
    more than one interrupt handler is added or deleted for an external
    interrupt concurrently.

    Make the registration / unregistration of external interrupts race safe
    by using RCU and a spinlock. RCU is used to avoid a performance penalty
    in the external interrupt handler, the register and unregister functions
    are protected by the spinlock and are not performance critical.
    call_rcu must be used since the SCLP driver uses the interface with
    IRQs disabled. Also use the generic list implementation rather than
    homebrewn list code.

    Signed-off-by: Jan Glauber
    Signed-off-by: Martin Schwidefsky

    Jan Glauber
     
  • Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     
  • This patch removes the mmu reload logic for kvm on s390. Via Martin's
    new gmap interface, we can safely add or remove memory slots while
    guest CPUs are in-flight. Thus, the mmu reload logic is not needed
    anymore.

    Signed-off-by: Carsten Otte
    Signed-off-by: Martin Schwidefsky

    Carsten Otte