Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 211305
b: refs/heads/master
c: 81c20b9
h: refs/heads/master
i:
  211303: 1af3fda
v: v3
  • Loading branch information
Linus Torvalds committed Oct 6, 2010
1 parent d85e708 commit 0f75c07
Show file tree
Hide file tree
Showing 53 changed files with 268 additions and 213 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: 158d6742bced08c87fd46b5905eebc0d41e3cdf6
refs/heads/master: 81c20b96e51660762f7d0df58b5faa370d47e3fd
7 changes: 5 additions & 2 deletions trunk/arch/arm/oprofile/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ static int op_create_counter(int cpu, int event)
if (IS_ERR(pevent)) {
ret = PTR_ERR(pevent);
} else if (pevent->state != PERF_EVENT_STATE_ACTIVE) {
perf_event_release_kernel(pevent);
pr_warning("oprofile: failed to enable event %d "
"on CPU %d\n", event, cpu);
ret = -EBUSY;
Expand Down Expand Up @@ -365,6 +366,7 @@ int __init oprofile_arch_init(struct oprofile_operations *ops)
ret = init_driverfs();
if (ret) {
kfree(counter_config);
counter_config = NULL;
return ret;
}

Expand Down Expand Up @@ -402,7 +404,6 @@ void oprofile_arch_exit(void)
struct perf_event *event;

if (*perf_events) {
exit_driverfs();
for_each_possible_cpu(cpu) {
for (id = 0; id < perf_num_counters; ++id) {
event = perf_events[cpu][id];
Expand All @@ -413,8 +414,10 @@ void oprofile_arch_exit(void)
}
}

if (counter_config)
if (counter_config) {
kfree(counter_config);
exit_driverfs();
}
}
#else
int __init oprofile_arch_init(struct oprofile_operations *ops)
Expand Down
3 changes: 1 addition & 2 deletions trunk/arch/avr32/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -314,10 +314,9 @@ int module_finalize(const Elf_Ehdr *hdr, const Elf_Shdr *sechdrs,
vfree(module->arch.syminfo);
module->arch.syminfo = NULL;

return module_bug_finalize(hdr, sechdrs, module);
return 0;
}

void module_arch_cleanup(struct module *module)
{
module_bug_cleanup(module);
}
3 changes: 1 addition & 2 deletions trunk/arch/h8300/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,9 @@ int module_finalize(const Elf_Ehdr *hdr,
const Elf_Shdr *sechdrs,
struct module *me)
{
return module_bug_finalize(hdr, sechdrs, me);
return 0;
}

void module_arch_cleanup(struct module *mod)
{
module_bug_cleanup(mod);
}
3 changes: 1 addition & 2 deletions trunk/arch/mn10300/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,13 +206,12 @@ int module_finalize(const Elf_Ehdr *hdr,
const Elf_Shdr *sechdrs,
struct module *me)
{
return module_bug_finalize(hdr, sechdrs, me);
return 0;
}

/*
* finish clearing the module
*/
void module_arch_cleanup(struct module *mod)
{
module_bug_cleanup(mod);
}
3 changes: 1 addition & 2 deletions trunk/arch/parisc/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -941,11 +941,10 @@ int module_finalize(const Elf_Ehdr *hdr,
nsyms = newptr - (Elf_Sym *)symhdr->sh_addr;
DEBUGP("NEW num_symtab %lu\n", nsyms);
symhdr->sh_size = nsyms * sizeof(Elf_Sym);
return module_bug_finalize(hdr, sechdrs, me);
return 0;
}

void module_arch_cleanup(struct module *mod)
{
deregister_unwind_table(mod);
module_bug_cleanup(mod);
}
6 changes: 0 additions & 6 deletions trunk/arch/powerpc/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,6 @@ int module_finalize(const Elf_Ehdr *hdr,
const Elf_Shdr *sechdrs, struct module *me)
{
const Elf_Shdr *sect;
int err;

err = module_bug_finalize(hdr, sechdrs, me);
if (err)
return err;

/* Apply feature fixups */
sect = find_section(hdr, sechdrs, "__ftr_fixup");
Expand Down Expand Up @@ -101,5 +96,4 @@ int module_finalize(const Elf_Ehdr *hdr,

void module_arch_cleanup(struct module *mod)
{
module_bug_cleanup(mod);
}
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/platforms/512x/clock.c
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ static struct clk *mpc5121_clk_get(struct device *dev, const char *id)
int id_match = 0;

if (dev == NULL || id == NULL)
return NULL;
return clk;

mutex_lock(&clocks_mutex);
list_for_each_entry(p, &clocks, node) {
Expand Down
9 changes: 6 additions & 3 deletions trunk/arch/powerpc/platforms/52xx/efika.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ static void __init efika_pcisetup(void)
if (bus_range == NULL || len < 2 * sizeof(int)) {
printk(KERN_WARNING EFIKA_PLATFORM_NAME
": Can't get bus-range for %s\n", pcictrl->full_name);
return;
goto out_put;
}

if (bus_range[1] == bus_range[0])
Expand All @@ -111,19 +111,22 @@ static void __init efika_pcisetup(void)
printk(" controlled by %s\n", pcictrl->full_name);
printk("\n");

hose = pcibios_alloc_controller(of_node_get(pcictrl));
hose = pcibios_alloc_controller(pcictrl);
if (!hose) {
printk(KERN_WARNING EFIKA_PLATFORM_NAME
": Can't allocate PCI controller structure for %s\n",
pcictrl->full_name);
return;
goto out_put;
}

hose->first_busno = bus_range[0];
hose->last_busno = bus_range[1];
hose->ops = &rtas_pci_ops;

pci_process_bridge_OF_ranges(hose, pcictrl, 0);
return;
out_put:
of_node_put(pcictrl);
}

#else
Expand Down
8 changes: 6 additions & 2 deletions trunk/arch/powerpc/platforms/52xx/mpc52xx_common.c
Original file line number Diff line number Diff line change
Expand Up @@ -325,12 +325,16 @@ int mpc5200_psc_ac97_gpio_reset(int psc_number)
clrbits32(&simple_gpio->simple_dvo, sync | out);
clrbits8(&wkup_gpio->wkup_dvo, reset);

/* wait at lease 1 us */
udelay(2);
/* wait for 1 us */
udelay(1);

/* Deassert reset */
setbits8(&wkup_gpio->wkup_dvo, reset);

/* wait at least 200ns */
/* 7 ~= (200ns * timebase) / ns2sec */
__delay(7);

/* Restore pin-muxing */
out_be32(&simple_gpio->port_config, mux);

Expand Down
3 changes: 1 addition & 2 deletions trunk/arch/s390/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -407,10 +407,9 @@ int module_finalize(const Elf_Ehdr *hdr,
{
vfree(me->arch.syminfo);
me->arch.syminfo = NULL;
return module_bug_finalize(hdr, sechdrs, me);
return 0;
}

void module_arch_cleanup(struct module *mod)
{
module_bug_cleanup(mod);
}
2 changes: 0 additions & 2 deletions trunk/arch/sh/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -149,13 +149,11 @@ int module_finalize(const Elf_Ehdr *hdr,
int ret = 0;

ret |= module_dwarf_finalize(hdr, sechdrs, me);
ret |= module_bug_finalize(hdr, sechdrs, me);

return ret;
}

void module_arch_cleanup(struct module *mod)
{
module_bug_cleanup(mod);
module_dwarf_cleanup(mod);
}
17 changes: 3 additions & 14 deletions trunk/arch/um/drivers/net_kern.c
Original file line number Diff line number Diff line change
Expand Up @@ -255,18 +255,6 @@ static void uml_net_tx_timeout(struct net_device *dev)
netif_wake_queue(dev);
}

static int uml_net_set_mac(struct net_device *dev, void *addr)
{
struct uml_net_private *lp = netdev_priv(dev);
struct sockaddr *hwaddr = addr;

spin_lock_irq(&lp->lock);
eth_mac_addr(dev, hwaddr->sa_data);
spin_unlock_irq(&lp->lock);

return 0;
}

static int uml_net_change_mtu(struct net_device *dev, int new_mtu)
{
dev->mtu = new_mtu;
Expand Down Expand Up @@ -373,7 +361,7 @@ static const struct net_device_ops uml_netdev_ops = {
.ndo_start_xmit = uml_net_start_xmit,
.ndo_set_multicast_list = uml_net_set_multicast_list,
.ndo_tx_timeout = uml_net_tx_timeout,
.ndo_set_mac_address = uml_net_set_mac,
.ndo_set_mac_address = eth_mac_addr,
.ndo_change_mtu = uml_net_change_mtu,
.ndo_validate_addr = eth_validate_addr,
};
Expand Down Expand Up @@ -472,7 +460,8 @@ static void eth_configure(int n, void *init, char *mac,
((*transport->user->init)(&lp->user, dev) != 0))
goto out_unregister;

eth_mac_addr(dev, device->mac);
/* don't use eth_mac_addr, it will not work here */
memcpy(dev->dev_addr, device->mac, ETH_ALEN);
dev->mtu = transport->user->mtu;
dev->netdev_ops = &uml_netdev_ops;
dev->ethtool_ops = &uml_net_ethtool_ops;
Expand Down
18 changes: 12 additions & 6 deletions trunk/arch/x86/kernel/cpu/cpufreq/pcc-cpufreq.c
Original file line number Diff line number Diff line change
Expand Up @@ -368,16 +368,22 @@ static int __init pcc_cpufreq_do_osc(acpi_handle *handle)
return -ENODEV;

out_obj = output.pointer;
if (out_obj->type != ACPI_TYPE_BUFFER)
return -ENODEV;
if (out_obj->type != ACPI_TYPE_BUFFER) {
ret = -ENODEV;
goto out_free;
}

errors = *((u32 *)out_obj->buffer.pointer) & ~(1 << 0);
if (errors)
return -ENODEV;
if (errors) {
ret = -ENODEV;
goto out_free;
}

supported = *((u32 *)(out_obj->buffer.pointer + 4));
if (!(supported & 0x1))
return -ENODEV;
if (!(supported & 0x1)) {
ret = -ENODEV;
goto out_free;
}

out_free:
kfree(output.pointer);
Expand Down
6 changes: 5 additions & 1 deletion trunk/arch/x86/kernel/cpu/perf_event_p4.c
Original file line number Diff line number Diff line change
Expand Up @@ -660,8 +660,12 @@ static int p4_pmu_handle_irq(struct pt_regs *regs)
for (idx = 0; idx < x86_pmu.num_counters; idx++) {
int overflow;

if (!test_bit(idx, cpuc->active_mask))
if (!test_bit(idx, cpuc->active_mask)) {
/* catch in-flight IRQs */
if (__test_and_clear_bit(idx, cpuc->running))
handled++;
continue;
}

event = cpuc->events[idx];
hwc = &event->hw;
Expand Down
3 changes: 1 addition & 2 deletions trunk/arch/x86/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -239,11 +239,10 @@ int module_finalize(const Elf_Ehdr *hdr,
apply_paravirt(pseg, pseg + para->sh_size);
}

return module_bug_finalize(hdr, sechdrs, me);
return 0;
}

void module_arch_cleanup(struct module *mod)
{
alternatives_smp_module_del(mod);
module_bug_cleanup(mod);
}
1 change: 1 addition & 0 deletions trunk/arch/x86/oprofile/nmi_int.c
Original file line number Diff line number Diff line change
Expand Up @@ -674,6 +674,7 @@ static int __init ppro_init(char **cpu_type)
case 0x0f:
case 0x16:
case 0x17:
case 0x1d:
*cpu_type = "i386/core_2";
break;
case 0x1a:
Expand Down
5 changes: 3 additions & 2 deletions trunk/arch/x86/xen/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -489,8 +489,9 @@ static void xen_hvm_setup_cpu_clockevents(void)
__init void xen_hvm_init_time_ops(void)
{
/* vector callback is needed otherwise we cannot receive interrupts
* on cpu > 0 */
if (!xen_have_vector_callback && num_present_cpus() > 1)
* on cpu > 0 and at this point we don't know how many cpus are
* available */
if (!xen_have_vector_callback)
return;
if (!xen_feature(XENFEAT_hvm_safe_pvclock)) {
printk(KERN_INFO "Xen doesn't support pvclock on HVM,"
Expand Down
6 changes: 3 additions & 3 deletions trunk/drivers/gpu/drm/i915/i915_dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -1787,9 +1787,9 @@ unsigned long i915_chipset_val(struct drm_i915_private *dev_priv)
}
}

div_u64(diff, diff1);
diff = div_u64(diff, diff1);
ret = ((m * diff) + c);
div_u64(ret, 10);
ret = div_u64(ret, 10);

dev_priv->last_count1 = total_count;
dev_priv->last_time1 = now;
Expand Down Expand Up @@ -1858,7 +1858,7 @@ void i915_update_gfx_val(struct drm_i915_private *dev_priv)

/* More magic constants... */
diff = diff * 1181;
div_u64(diff, diffms * 10);
diff = div_u64(diff, diffms * 10);
dev_priv->gfx_power = diff;
}

Expand Down
Loading

0 comments on commit 0f75c07

Please sign in to comment.