Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eee33abe authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6

* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
  [S390] define KTIME_SCALAR for 32-bit s390
  [S390] add generic atomic64 support for 31 bit
  [S390] improve suspend/resume error messages
  [S390] set SCHED_OMIT_FRAME_POINTER for s390
  [S390] add __ucmpdi2() helper function
  [S390] perf_counter build fix
  [S390] shutdown actions: save/return rc from init function
  [S390] dasd: correct debugfeature sense dump
  [S390] udelay: disable lockdep to avoid false positives
  [S390] monreader: fix dev_set_drvdata conversion
  [S390] sclp: fix compile error for !SCLP_CONSOLE
parents 04eef90c 07606309
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -95,6 +95,11 @@ config S390
	select HAVE_ARCH_TRACEHOOK
	select INIT_ALL_POSSIBLE
	select HAVE_PERF_COUNTERS
	select GENERIC_ATOMIC64 if !64BIT

config SCHED_OMIT_FRAME_POINTER
	bool
	default y

source "init/Kconfig"

@@ -116,6 +121,9 @@ config 32BIT
	bool
	default y if !64BIT

config KTIME_SCALAR
	def_bool 32BIT

config SMP
	bool "Symmetric multi-processing support"
	---help---
+6 −1
Original line number Diff line number Diff line
@@ -268,7 +268,12 @@ static __inline__ int atomic64_add_unless(atomic64_t *v,
#define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0)

#undef __CSG_LOOP
#endif

#else /* __s390x__ */

#include <asm-generic/atomic64.h>

#endif /* __s390x__ */

#define smp_mb__before_atomic_dec()	smp_mb()
#define smp_mb__after_atomic_dec()	smp_mb()
+2 −0
Original line number Diff line number Diff line
@@ -6,3 +6,5 @@

static inline void set_perf_counter_pending(void) {}
static inline void clear_perf_counter_pending(void) {}

#define PERF_COUNTER_INDEX_OFFSET 0
+9 −6
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@ struct shutdown_action {
	char *name;
	void (*fn) (struct shutdown_trigger *trigger);
	int (*init) (void);
	int init_rc;
};

static char *ipl_type_str(enum ipl_type type)
@@ -1486,13 +1487,15 @@ static int set_trigger(const char *buf, struct shutdown_trigger *trigger,
	int i;

	for (i = 0; i < SHUTDOWN_ACTIONS_COUNT; i++) {
		if (!shutdown_actions_list[i])
			continue;
		if (sysfs_streq(buf, shutdown_actions_list[i]->name)) {
			if (shutdown_actions_list[i]->init_rc) {
				return shutdown_actions_list[i]->init_rc;
			} else {
				trigger->action = shutdown_actions_list[i];
				return len;
			}
		}
	}
	return -EINVAL;
}

@@ -1640,8 +1643,8 @@ static void __init shutdown_actions_init(void)
	for (i = 0; i < SHUTDOWN_ACTIONS_COUNT; i++) {
		if (!shutdown_actions_list[i]->init)
			continue;
		if (shutdown_actions_list[i]->init())
			shutdown_actions_list[i] = NULL;
		shutdown_actions_list[i]->init_rc =
			shutdown_actions_list[i]->init();
	}
}

+1 −1
Original line number Diff line number Diff line
@@ -3,6 +3,6 @@
#

lib-y += delay.o string.o uaccess_std.o uaccess_pt.o
obj-$(CONFIG_32BIT) += div64.o qrnnd.o
obj-$(CONFIG_32BIT) += div64.o qrnnd.o ucmpdi2.o
lib-$(CONFIG_64BIT) += uaccess_mvcos.o
lib-$(CONFIG_SMP) += spinlock.o
Loading