Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 119161
b: refs/heads/master
c: eb60fa1
h: refs/heads/master
i:
  119159: bc7e6a4
v: v3
  • Loading branch information
Tejun Heo authored and Jens Axboe committed Nov 18, 2008
1 parent 61d5498 commit a67d6d3
Show file tree
Hide file tree
Showing 30 changed files with 99 additions and 323 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: a6a0c4ca7edb378a8a7332501f097089cb1051c4
refs/heads/master: eb60fa1066622ddb2278732cf61e0c4544e82c6f
2 changes: 2 additions & 0 deletions trunk/MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -3928,6 +3928,8 @@ M: bootc@bootc.net
S: Maintained

SOFTWARE RAID (Multiple Disks) SUPPORT
P: Ingo Molnar
M: mingo@redhat.com
P: Neil Brown
M: neilb@suse.de
L: linux-raid@vger.kernel.org
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/blackfin/include/asm/bfin-global.h
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ extern u16 _bfin_swrst; /* shadow for Software Reset Register (SWRST) */
extern unsigned long _ramstart, _ramend, _rambase;
extern unsigned long memory_start, memory_end, physical_mem_end;
extern char _stext_l1[], _etext_l1[], _sdata_l1[], _edata_l1[], _sbss_l1[],
_ebss_l1[], _l1_lma_start[], _sdata_b_l1[], _sbss_b_l1[], _ebss_b_l1[],
_ebss_l1[], _l1_lma_start[], _sdata_b_l1[], _ebss_b_l1[],
_stext_l2[], _etext_l2[], _sdata_l2[], _edata_l2[], _sbss_l2[],
_ebss_l2[], _l2_lma_start[];

Expand Down
6 changes: 1 addition & 5 deletions trunk/arch/blackfin/include/asm/dma-mapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,7 @@ void dma_free_coherent(struct device *dev, size_t size, void *vaddr,
#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)

static inline
int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
{
return 0;
}
#define dma_mapping_error

/*
* Map a single buffer of the indicated size for DMA in streaming mode.
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/blackfin/kernel/bfin_gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ inline int check_gpio(unsigned gpio)
if (gpio == GPIO_PB15 || gpio == GPIO_PC14 || gpio == GPIO_PC15
|| gpio == GPIO_PH14 || gpio == GPIO_PH15
|| gpio == GPIO_PJ14 || gpio == GPIO_PJ15
|| gpio >= MAX_BLACKFIN_GPIOS)
|| gpio > MAX_BLACKFIN_GPIOS)
return -EINVAL;
return 0;
}
Expand Down
9 changes: 4 additions & 5 deletions trunk/arch/blackfin/kernel/cplb-nompu/cplbinit.c
Original file line number Diff line number Diff line change
Expand Up @@ -188,11 +188,10 @@ static struct cplb_desc cplb_data[] = {

static u16 __init lock_kernel_check(u32 start, u32 end)
{
if (start >= (u32)_end || end <= (u32)_stext)
return 0;

/* This cplb block overlapped with kernel area. */
return IN_KERNEL;
if ((end <= (u32) _end && end >= (u32)_stext) ||
(start <= (u32) _end && start >= (u32)_stext))
return IN_KERNEL;
return 0;
}

static unsigned short __init
Expand Down
7 changes: 1 addition & 6 deletions trunk/arch/blackfin/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -351,14 +351,9 @@ int _access_ok(unsigned long addr, unsigned long size)
return 1;
#endif
#if L1_DATA_B_LENGTH != 0
if (addr >= L1_DATA_B_START + (_ebss_b_l1 - _sdata_b_l1)
if (addr >= L1_DATA_B_START
&& addr + size <= L1_DATA_B_START + L1_DATA_B_LENGTH)
return 1;
#endif
#if L2_LENGTH != 0
if (addr >= L2_START + (_ebss_l2 - _stext_l2)
&& addr + size <= L2_START + L2_LENGTH)
return 1;
#endif
return 0;
}
Expand Down
12 changes: 6 additions & 6 deletions trunk/arch/blackfin/kernel/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -119,23 +119,23 @@ void __init bfin_relocate_l1_mem(void)
/* Copy _stext_l1 to _etext_l1 to L1 instruction SRAM */
dma_memcpy(_stext_l1, _l1_lma_start, l1_code_length);

l1_data_a_length = _sbss_l1 - _sdata_l1;
l1_data_a_length = _ebss_l1 - _sdata_l1;
if (l1_data_a_length > L1_DATA_A_LENGTH)
panic("L1 Data SRAM Bank A Overflow\n");

/* Copy _sdata_l1 to _sbss_l1 to L1 data bank A SRAM */
/* Copy _sdata_l1 to _ebss_l1 to L1 data bank A SRAM */
dma_memcpy(_sdata_l1, _l1_lma_start + l1_code_length, l1_data_a_length);

l1_data_b_length = _sbss_b_l1 - _sdata_b_l1;
l1_data_b_length = _ebss_b_l1 - _sdata_b_l1;
if (l1_data_b_length > L1_DATA_B_LENGTH)
panic("L1 Data SRAM Bank B Overflow\n");

/* Copy _sdata_b_l1 to _sbss_b_l1 to L1 data bank B SRAM */
/* Copy _sdata_b_l1 to _ebss_b_l1 to L1 data bank B SRAM */
dma_memcpy(_sdata_b_l1, _l1_lma_start + l1_code_length +
l1_data_a_length, l1_data_b_length);

if (L2_LENGTH != 0) {
l2_length = _sbss_l2 - _stext_l2;
l2_length = _ebss_l2 - _stext_l2;
if (l2_length > L2_LENGTH)
panic("L2 SRAM Overflow\n");

Expand Down Expand Up @@ -827,7 +827,7 @@ void __init setup_arch(char **cmdline_p)
printk(KERN_ERR "Warning: Compiled for Rev %d, but running on Rev %d\n",
bfin_compiled_revid(), bfin_revid());
}
if (bfin_revid() < CONFIG_BF_REV_MIN || bfin_revid() > CONFIG_BF_REV_MAX)
if (bfin_revid() <= CONFIG_BF_REV_MIN || bfin_revid() > CONFIG_BF_REV_MAX)
printk(KERN_ERR "Warning: Unsupported Chip Revision ADSP-%s Rev 0.%d detected\n",
CPU, bfin_revid());
}
Expand Down
11 changes: 4 additions & 7 deletions trunk/arch/blackfin/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
#endif


#ifdef CONFIG_DEBUG_VERBOSE
#ifdef CONFIG_VERBOSE_DEBUG
#define verbose_printk(fmt, arg...) \
printk(fmt, ##arg)
#else
Expand Down Expand Up @@ -147,12 +147,9 @@ static void decode_address(char *buf, unsigned long address)
char *name = p->comm;
struct file *file = vma->vm_file;

if (file) {
char *d_name = d_path(&file->f_path, _tmpbuf,
if (file)
name = d_path(&file->f_path, _tmpbuf,
sizeof(_tmpbuf));
if (!IS_ERR(d_name))
name = d_name;
}

/* FLAT does not have its text aligned to the start of
* the map while FDPIC ELF does ...
Expand Down Expand Up @@ -574,7 +571,7 @@ asmlinkage void trap_c(struct pt_regs *fp)
#endif
panic("Kernel exception");
} else {
#ifdef CONFIG_DEBUG_VERBOSE
#ifdef CONFIG_VERBOSE_DEBUG
unsigned long *stack;
/* Dump the user space stack */
stack = (unsigned long *)rdusp();
Expand Down
8 changes: 2 additions & 6 deletions trunk/arch/blackfin/mach-common/cache.S
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,9 @@
*/
.macro do_flush flushins:req optflushins optnopins label

R2 = -L1_CACHE_BYTES;

/* start = (start & -L1_CACHE_BYTES) */
R0 = R0 & R2;

/* end = ((end - 1) & -L1_CACHE_BYTES) + L1_CACHE_BYTES; */
R1 += -1;
R2 = -L1_CACHE_BYTES;
R1 = R1 & R2;
R1 += L1_CACHE_BYTES;

Expand Down Expand Up @@ -67,7 +63,7 @@ ENDPROC(_blackfin_icache_flush_range)

/* Flush all cache lines assocoiated with this area of memory. */
ENTRY(_blackfin_icache_dcache_flush_range)
do_flush FLUSH, IFLUSH
do_flush IFLUSH, FLUSH
ENDPROC(_blackfin_icache_dcache_flush_range)

/* Throw away all D-cached data in specified region without any obligation to
Expand Down
14 changes: 7 additions & 7 deletions trunk/arch/blackfin/mach-common/cpufreq.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,13 +72,13 @@ unsigned int __bfin_cycles_mod;

/**************************************************************************/

static unsigned int bfin_getfreq_khz(unsigned int cpu)
static unsigned int bfin_getfreq(unsigned int cpu)
{
/* The driver only support single cpu */
if (cpu != 0)
return -1;

return get_cclk() / 1000;
return get_cclk();
}


Expand All @@ -96,7 +96,7 @@ static int bfin_target(struct cpufreq_policy *policy,

cclk_hz = bfin_freq_table[index].frequency;

freqs.old = bfin_getfreq_khz(0);
freqs.old = bfin_getfreq(0);
freqs.new = cclk_hz;
freqs.cpu = 0;

Expand Down Expand Up @@ -137,8 +137,8 @@ static int __init __bfin_cpu_init(struct cpufreq_policy *policy)
if (policy->cpu != 0)
return -EINVAL;

cclk = get_cclk() / 1000;
sclk = get_sclk() / 1000;
cclk = get_cclk();
sclk = get_sclk();

#if ANOMALY_05000273 || (!defined(CONFIG_BF54x) && defined(CONFIG_BFIN_DCACHE))
min_cclk = sclk * 2;
Expand All @@ -152,7 +152,7 @@ static int __init __bfin_cpu_init(struct cpufreq_policy *policy)
dpm_state_table[index].csel = csel << 4; /* Shift now into PLL_DIV bitpos */
dpm_state_table[index].tscale = (TIME_SCALE / (1 << csel)) - 1;

pr_debug("cpufreq: freq:%d csel:0x%x tscale:%d\n",
pr_debug("cpufreq: freq:%d csel:%d tscale:%d\n",
bfin_freq_table[index].frequency,
dpm_state_table[index].csel,
dpm_state_table[index].tscale);
Expand All @@ -173,7 +173,7 @@ static struct freq_attr *bfin_freq_attr[] = {
static struct cpufreq_driver bfin_driver = {
.verify = bfin_verify_speed,
.target = bfin_target,
.get = bfin_getfreq_khz,
.get = bfin_getfreq,
.init = __bfin_cpu_init,
.name = "bfin cpufreq",
.owner = THIS_MODULE,
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/blackfin/mach-common/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ ENTRY(_bfin_return_from_exception)
p5.h = hi(ILAT);
r6 = [p5];
r7 = 0x20; /* Did I just cause anther HW error? */
r6 = r7 & r6;
r7 = r7 & r1;
CC = R7 == R6;
if CC JUMP _double_fault;
#endif
Expand Down
8 changes: 4 additions & 4 deletions trunk/arch/blackfin/mm/sram-alloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,10 +183,10 @@ static void __init l2_sram_init(void)
return;
}

free_l2_sram_head.next->paddr =
(void *)L2_START + (_ebss_l2 - _stext_l2);
free_l2_sram_head.next->size =
L2_LENGTH - (_ebss_l2 - _stext_l2);
free_l2_sram_head.next->paddr = (void *)L2_START +
(_etext_l2 - _stext_l2) + (_edata_l2 - _sdata_l2);
free_l2_sram_head.next->size = L2_LENGTH -
(_etext_l2 - _stext_l2) + (_edata_l2 - _sdata_l2);
free_l2_sram_head.next->pid = 0;
free_l2_sram_head.next->next = NULL;

Expand Down
4 changes: 3 additions & 1 deletion trunk/fs/partitions/check.c
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,7 @@ int add_partition(struct gendisk *disk, int partno,

err = blk_alloc_devt(p, &devt);
if (err)
goto out_free;
goto out_free_stats;
pdev->devt = devt;

/* delay uevent until 'holders' subdir is created */
Expand Down Expand Up @@ -426,6 +426,8 @@ int add_partition(struct gendisk *disk, int partno,

return 0;

out_free_stats:
free_part_stats(p);
out_free:
kfree(p);
return err;
Expand Down
3 changes: 0 additions & 3 deletions trunk/include/linux/ring_buffer.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,9 +120,6 @@ unsigned long ring_buffer_overruns(struct ring_buffer *buffer);
u64 ring_buffer_time_stamp(int cpu);
void ring_buffer_normalize_time_stamp(int cpu, u64 *ts);

void tracing_on(void);
void tracing_off(void);

enum ring_buffer_flags {
RB_FL_OVERWRITE = 1 << 0,
};
Expand Down
2 changes: 1 addition & 1 deletion trunk/init/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ config RT_GROUP_SCHED
setting below. If enabled, it will also make it impossible to
schedule realtime tasks for non-root users until you allocate
realtime bandwidth for them.
See Documentation/scheduler/sched-rt-group.txt for more information.
See Documentation/sched-rt-group.txt for more information.

choice
depends on GROUP_SCHED
Expand Down
12 changes: 4 additions & 8 deletions trunk/kernel/cpuset.c
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,7 @@ static int generate_sched_domains(cpumask_t **domains,
int ndoms; /* number of sched domains in result */
int nslot; /* next empty doms[] cpumask_t slot */

ndoms = 0;
doms = NULL;
dattr = NULL;
csa = NULL;
Expand Down Expand Up @@ -673,8 +674,10 @@ static int generate_sched_domains(cpumask_t **domains,
* Convert <csn, csa> to <ndoms, doms> and populate cpu masks.
*/
doms = kmalloc(ndoms * sizeof(cpumask_t), GFP_KERNEL);
if (!doms)
if (!doms) {
ndoms = 0;
goto done;
}

/*
* The rest of the code, including the scheduler, can deal with
Expand Down Expand Up @@ -729,13 +732,6 @@ static int generate_sched_domains(cpumask_t **domains,
done:
kfree(csa);

/*
* Fallback to the default domain if kmalloc() failed.
* See comments in partition_sched_domains().
*/
if (doms == NULL)
ndoms = 1;

*domains = doms;
*attributes = dattr;
return ndoms;
Expand Down
7 changes: 2 additions & 5 deletions trunk/kernel/posix-cpu-timers.c
Original file line number Diff line number Diff line change
Expand Up @@ -1308,10 +1308,9 @@ static inline int task_cputime_expired(const struct task_cputime *sample,
*/
static inline int fastpath_timer_check(struct task_struct *tsk)
{
struct signal_struct *sig;
struct signal_struct *sig = tsk->signal;

/* tsk == current, ensure it is safe to use ->signal/sighand */
if (unlikely(tsk->exit_state))
if (unlikely(!sig))
return 0;

if (!task_cputime_zero(&tsk->cputime_expires)) {
Expand All @@ -1324,8 +1323,6 @@ static inline int fastpath_timer_check(struct task_struct *tsk)
if (task_cputime_expired(&task_sample, &tsk->cputime_expires))
return 1;
}

sig = tsk->signal;
if (!task_cputime_zero(&sig->cputime_expires)) {
struct task_cputime group_sample;

Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/power/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ static void suspend_test_finish(const char *label)
* has some performance issues. The stack dump of a WARN_ON
* is more likely to get the right attention than a printk...
*/
WARN(msec > (TEST_SUSPEND_SECONDS * 1000), "Component: %s\n", label);
WARN_ON(msec > (TEST_SUSPEND_SECONDS * 1000));
}

#else
Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/profile.c
Original file line number Diff line number Diff line change
Expand Up @@ -544,7 +544,7 @@ static const struct file_operations proc_profile_operations = {
};

#ifdef CONFIG_SMP
static inline void profile_nop(void *unused)
static void __init profile_nop(void *unused)
{
}

Expand Down
13 changes: 6 additions & 7 deletions trunk/kernel/sched.c
Original file line number Diff line number Diff line change
Expand Up @@ -7789,14 +7789,13 @@ static int dattrs_equal(struct sched_domain_attr *cur, int idx_cur,
*
* The passed in 'doms_new' should be kmalloc'd. This routine takes
* ownership of it and will kfree it when done with it. If the caller
* failed the kmalloc call, then it can pass in doms_new == NULL &&
* ndoms_new == 1, and partition_sched_domains() will fallback to
* the single partition 'fallback_doms', it also forces the domains
* to be rebuilt.
* failed the kmalloc call, then it can pass in doms_new == NULL,
* and partition_sched_domains() will fallback to the single partition
* 'fallback_doms', it also forces the domains to be rebuilt.
*
* If doms_new == NULL it will be replaced with cpu_online_map.
* ndoms_new == 0 is a special case for destroying existing domains,
* and it will not create the default domain.
* If doms_new==NULL it will be replaced with cpu_online_map.
* ndoms_new==0 is a special case for destroying existing domains.
* It will not create the default domain.
*
* Call with hotplug lock held
*/
Expand Down
5 changes: 2 additions & 3 deletions trunk/kernel/sched_debug.c
Original file line number Diff line number Diff line change
Expand Up @@ -423,11 +423,10 @@ void proc_sched_show_task(struct task_struct *p, struct seq_file *m)
#undef __P

{
unsigned int this_cpu = raw_smp_processor_id();
u64 t0, t1;

t0 = cpu_clock(this_cpu);
t1 = cpu_clock(this_cpu);
t0 = sched_clock();
t1 = sched_clock();
SEQ_printf(m, "%-35s:%21Ld\n",
"clock-delta", (long long)(t1-t0));
}
Expand Down
Loading

0 comments on commit a67d6d3

Please sign in to comment.