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

Commit 9db8ee3d authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] Update default configuration.
  [S390] disassembler: fix idte instruction format.
  [S390] tape: fix race with stack local wait_queue_head_t.
  [S390] 3270: fix race with stack local wait_queue_head_t.
  [S390] dasd: use a generic wait_queue for sleep_on
  [S390] sclp_vt220: fix scheduling while atomic bug.
  [S390] showmem: Only walk spanned pages.
  [S390] appldata: prevent cpu hotplug when walking cpu_online_map.
  [S390] Fix section mismatch warnings.
  [S390] s390 types: make dma_addr_t 64 bit capable
  [S390] tape: Fix race condition in tape block device driver
  [S390] fix sparsemem related compile error with allnoconfig on s390
parents e3aa51fe 0066ed55
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -308,6 +308,9 @@ config ARCH_SPARSEMEM_ENABLE
config ARCH_SPARSEMEM_DEFAULT
config ARCH_SPARSEMEM_DEFAULT
	def_bool y
	def_bool y


config ARCH_SELECT_MEMORY_MODEL
       def_bool y

source "mm/Kconfig"
source "mm/Kconfig"


comment "I/O subsystem configuration"
comment "I/O subsystem configuration"
+8 −0
Original line number Original line Diff line number Diff line
@@ -130,6 +130,7 @@ static void appldata_work_fn(struct work_struct *work)


	P_DEBUG("  -= Work Queue =-\n");
	P_DEBUG("  -= Work Queue =-\n");
	i = 0;
	i = 0;
	get_online_cpus();
	spin_lock(&appldata_ops_lock);
	spin_lock(&appldata_ops_lock);
	list_for_each(lh, &appldata_ops_list) {
	list_for_each(lh, &appldata_ops_list) {
		ops = list_entry(lh, struct appldata_ops, list);
		ops = list_entry(lh, struct appldata_ops, list);
@@ -140,6 +141,7 @@ static void appldata_work_fn(struct work_struct *work)
		}
		}
	}
	}
	spin_unlock(&appldata_ops_lock);
	spin_unlock(&appldata_ops_lock);
	put_online_cpus();
}
}


/*
/*
@@ -266,12 +268,14 @@ appldata_timer_handler(ctl_table *ctl, int write, struct file *filp,
	len = *lenp;
	len = *lenp;
	if (copy_from_user(buf, buffer, len > sizeof(buf) ? sizeof(buf) : len))
	if (copy_from_user(buf, buffer, len > sizeof(buf) ? sizeof(buf) : len))
		return -EFAULT;
		return -EFAULT;
	get_online_cpus();
	spin_lock(&appldata_timer_lock);
	spin_lock(&appldata_timer_lock);
	if (buf[0] == '1')
	if (buf[0] == '1')
		__appldata_vtimer_setup(APPLDATA_ADD_TIMER);
		__appldata_vtimer_setup(APPLDATA_ADD_TIMER);
	else if (buf[0] == '0')
	else if (buf[0] == '0')
		__appldata_vtimer_setup(APPLDATA_DEL_TIMER);
		__appldata_vtimer_setup(APPLDATA_DEL_TIMER);
	spin_unlock(&appldata_timer_lock);
	spin_unlock(&appldata_timer_lock);
	put_online_cpus();
out:
out:
	*lenp = len;
	*lenp = len;
	*ppos += len;
	*ppos += len;
@@ -314,10 +318,12 @@ appldata_interval_handler(ctl_table *ctl, int write, struct file *filp,
		return -EINVAL;
		return -EINVAL;
	}
	}


	get_online_cpus();
	spin_lock(&appldata_timer_lock);
	spin_lock(&appldata_timer_lock);
	appldata_interval = interval;
	appldata_interval = interval;
	__appldata_vtimer_setup(APPLDATA_MOD_TIMER);
	__appldata_vtimer_setup(APPLDATA_MOD_TIMER);
	spin_unlock(&appldata_timer_lock);
	spin_unlock(&appldata_timer_lock);
	put_online_cpus();


	P_INFO("Monitoring CPU interval set to %u milliseconds.\n",
	P_INFO("Monitoring CPU interval set to %u milliseconds.\n",
		 interval);
		 interval);
@@ -556,8 +562,10 @@ static int __init appldata_init(void)
		return -ENOMEM;
		return -ENOMEM;
	}
	}


	get_online_cpus();
	for_each_online_cpu(i)
	for_each_online_cpu(i)
		appldata_online_cpu(i);
		appldata_online_cpu(i);
	put_online_cpus();


	/* Register cpu hotplug notifier */
	/* Register cpu hotplug notifier */
	register_hotcpu_notifier(&appldata_nb);
	register_hotcpu_notifier(&appldata_nb);
+8 −3
Original line number Original line Diff line number Diff line
#
#
# Automatically generated make config: don't edit
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.25
# Linux kernel version: 2.6.26-rc4
# Wed Apr 30 11:07:45 2008
# Fri May 30 09:49:33 2008
#
#
CONFIG_SCHED_MC=y
CONFIG_SCHED_MC=y
CONFIG_MMU=y
CONFIG_MMU=y
@@ -103,6 +103,7 @@ CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULES=y
# CONFIG_MODULE_FORCE_LOAD is not set
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_MODVERSIONS=y
CONFIG_MODVERSIONS=y
@@ -173,6 +174,7 @@ CONFIG_PREEMPT=y
# CONFIG_PREEMPT_RCU is not set
# CONFIG_PREEMPT_RCU is not set
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_DISCONTIGMEM_MANUAL is not set
@@ -210,6 +212,7 @@ CONFIG_FORCE_MAX_ZONEORDER=9
CONFIG_PFAULT=y
CONFIG_PFAULT=y
# CONFIG_SHARED_KERNEL is not set
# CONFIG_SHARED_KERNEL is not set
# CONFIG_CMM is not set
# CONFIG_CMM is not set
# CONFIG_PAGE_STATES is not set
CONFIG_VIRT_TIMER=y
CONFIG_VIRT_TIMER=y
CONFIG_VIRT_CPU_ACCOUNTING=y
CONFIG_VIRT_CPU_ACCOUNTING=y
# CONFIG_APPLDATA_BASE is not set
# CONFIG_APPLDATA_BASE is not set
@@ -620,6 +623,7 @@ CONFIG_S390_VMUR=m
#
#
# CONFIG_MEMSTICK is not set
# CONFIG_MEMSTICK is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_NEW_LEDS is not set
CONFIG_ACCESSIBILITY=y


#
#
# File systems
# File systems
@@ -754,11 +758,12 @@ CONFIG_FRAME_WARN=2048
CONFIG_MAGIC_SYSRQ=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_UNUSED_SYMBOLS is not set
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS=y
CONFIG_HEADERS_CHECK=y
# CONFIG_HEADERS_CHECK is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_SCHED_DEBUG is not set
# CONFIG_SCHEDSTATS is not set
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_SLAB is not set
CONFIG_DEBUG_PREEMPT=y
CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
+1 −1
Original line number Original line Diff line number Diff line
@@ -208,7 +208,7 @@ static const unsigned char formats[][7] = {
	[INSTR_RRF_F0FF]  = { 0xff, F_16,F_24,F_28,0,0,0 },    /* e.g. madbr */
	[INSTR_RRF_F0FF]  = { 0xff, F_16,F_24,F_28,0,0,0 },    /* e.g. madbr */
	[INSTR_RRF_FUFF]  = { 0xff, F_24,F_16,F_28,U4_20,0,0 },/* e.g. didbr */
	[INSTR_RRF_FUFF]  = { 0xff, F_24,F_16,F_28,U4_20,0,0 },/* e.g. didbr */
	[INSTR_RRF_RURR]  = { 0xff, R_24,R_28,R_16,U4_20,0,0 },/* e.g. .insn */
	[INSTR_RRF_RURR]  = { 0xff, R_24,R_28,R_16,U4_20,0,0 },/* e.g. .insn */
	[INSTR_RRF_R0RR]  = { 0xff, R_24,R_28,R_16,0,0,0 },    /* e.g. idte  */
	[INSTR_RRF_R0RR]  = { 0xff, R_24,R_16,R_28,0,0,0 },    /* e.g. idte  */
	[INSTR_RRF_U0FF]  = { 0xff, F_24,U4_16,F_28,0,0,0 },   /* e.g. fixr  */
	[INSTR_RRF_U0FF]  = { 0xff, F_24,U4_16,F_28,0,0,0 },   /* e.g. fixr  */
	[INSTR_RRF_U0RF]  = { 0xff, R_24,U4_16,F_28,0,0,0 },   /* e.g. cfebr */
	[INSTR_RRF_U0RF]  = { 0xff, R_24,U4_16,F_28,0,0,0 },   /* e.g. cfebr */
	[INSTR_RRF_M0RR]  = { 0xff, R_24,R_28,M_16,0,0,0 },    /* e.g. sske  */
	[INSTR_RRF_M0RR]  = { 0xff, R_24,R_28,M_16,0,0,0 },    /* e.g. sske  */
+1 −1
Original line number Original line Diff line number Diff line
@@ -1089,7 +1089,7 @@ static int __devinit smp_add_present_cpu(int cpu)


#ifdef CONFIG_HOTPLUG_CPU
#ifdef CONFIG_HOTPLUG_CPU


int smp_rescan_cpus(void)
int __ref smp_rescan_cpus(void)
{
{
	cpumask_t newcpus;
	cpumask_t newcpus;
	int cpu;
	int cpu;
Loading