Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 120024
b: refs/heads/master
c: 2523659
h: refs/heads/master
v: v3
  • Loading branch information
Linus Torvalds committed Dec 24, 2008
1 parent 9fd5dfb commit 28a047d
Show file tree
Hide file tree
Showing 19 changed files with 64 additions and 51 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: 574f3c4f5c55e99ea60f71fd98cc54931d4b2eae
refs/heads/master: 2523659ded0cb261a3e1fda82fe7e4ddb6e86b6f
11 changes: 7 additions & 4 deletions trunk/Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -220,14 +220,17 @@ and is between 256 and 4096 characters. It is defined in the file
Bits in debug_level correspond to a level in
ACPI_DEBUG_PRINT statements, e.g.,
ACPI_DEBUG_PRINT((ACPI_DB_INFO, ...
See Documentation/acpi/debug.txt for more information
about debug layers and levels.
The debug_level mask defaults to "info". See
Documentation/acpi/debug.txt for more information about
debug layers and levels.

Enable processor driver info messages:
acpi.debug_layer=0x20000000
Enable PCI/PCI interrupt routing info messages:
acpi.debug_layer=0x400000
Enable AML "Debug" output, i.e., stores to the Debug
object while interpreting AML:
acpi.debug_layer=0xffffffff acpi.debug_level=0x2
Enable PCI/PCI interrupt routing info messages:
acpi.debug_layer=0x400000 acpi.debug_level=0x4
Enable all messages related to ACPI hardware:
acpi.debug_layer=0x2 acpi.debug_level=0xffffffff

Expand Down
5 changes: 2 additions & 3 deletions trunk/arch/mips/include/asm/byteorder.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,8 @@ static inline __attribute_const__ __u32 __arch_swab32(__u32 x)
static inline __attribute_const__ __u64 __arch_swab64(__u64 x)
{
__asm__(
" dsbh %0, %1 \n"
" dshd %0, %0 \n"
" drotr %0, %0, 32 \n"
" dsbh %0, %1\n"
" dshd %0, %0"
: "=r" (x)
: "r" (x));

Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/mips/include/asm/elf.h
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
*/
#ifdef __MIPSEB__
#define ELF_DATA ELFDATA2MSB
#elif __MIPSEL__
#elif defined(__MIPSEL__)
#define ELF_DATA ELFDATA2LSB
#endif
#define ELF_ARCH EM_MIPS
Expand Down
5 changes: 4 additions & 1 deletion trunk/arch/parisc/include/asm/tlbflush.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,12 @@ static inline void flush_tlb_mm(struct mm_struct *mm)
{
BUG_ON(mm == &init_mm); /* Should never happen */

#ifdef CONFIG_SMP
#if 1 || defined(CONFIG_SMP)
flush_tlb_all();
#else
/* FIXME: currently broken, causing space id and protection ids
* to go out of sync, resulting in faults on userspace accesses.
*/
if (mm) {
if (mm->context != 0)
free_sid(mm->context);
Expand Down
8 changes: 0 additions & 8 deletions trunk/drivers/acpi/bus.c
Original file line number Diff line number Diff line change
Expand Up @@ -688,14 +688,6 @@ void __init acpi_early_init(void)
if (acpi_disabled)
return;

/*
* ACPI CA initializes acpi_dbg_level to non-zero, which means
* we get debug output merely by turning on CONFIG_ACPI_DEBUG.
* Turn it off so we don't get output unless the user specifies
* acpi.debug_level.
*/
acpi_dbg_level = 0;

printk(KERN_INFO PREFIX "Core revision %08x\n", ACPI_CA_VERSION);

/* enable workarounds, unless strict ACPI spec. compliance */
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/acpi/utilities/utglobal.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ u32 acpi_dbg_level = ACPI_DEBUG_DEFAULT;

/* Debug switch - layer (component) mask */

u32 acpi_dbg_layer = ACPI_COMPONENT_DEFAULT | ACPI_ALL_DRIVERS;
u32 acpi_dbg_layer = 0;
u32 acpi_gbl_nesting_level = 0;

/* Debugger globals */
Expand Down
12 changes: 9 additions & 3 deletions trunk/drivers/edac/edac_device.c
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,12 @@ static void edac_device_workq_function(struct work_struct *work_req)

mutex_lock(&device_ctls_mutex);

/* If we are being removed, bail out immediately */
if (edac_dev->op_state == OP_OFFLINE) {
mutex_unlock(&device_ctls_mutex);
return;
}

/* Only poll controllers that are running polled and have a check */
if ((edac_dev->op_state == OP_RUNNING_POLL) &&
(edac_dev->edac_check != NULL)) {
Expand Down Expand Up @@ -585,14 +591,14 @@ struct edac_device_ctl_info *edac_device_del_device(struct device *dev)
/* mark this instance as OFFLINE */
edac_dev->op_state = OP_OFFLINE;

/* clear workq processing on this instance */
edac_device_workq_teardown(edac_dev);

/* deregister from global list */
del_edac_device_from_global_list(edac_dev);

mutex_unlock(&device_ctls_mutex);

/* clear workq processing on this instance */
edac_device_workq_teardown(edac_dev);

/* Tear down the sysfs entries for this instance */
edac_device_remove_sysfs(edac_dev);

Expand Down
4 changes: 2 additions & 2 deletions trunk/drivers/gpu/drm/radeon/radeon_irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ void radeon_irq_set_state(struct drm_device *dev, u32 mask, int state)
else
dev_priv->irq_enable_reg &= ~mask;

if (!dev->irq_enabled)
if (dev->irq_enabled)
RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg);
}

Expand All @@ -57,7 +57,7 @@ static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state)
else
dev_priv->r500_disp_irq_reg &= ~mask;

if (!dev->irq_enabled)
if (dev->irq_enabled)
RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg);
}

Expand Down
3 changes: 2 additions & 1 deletion trunk/drivers/ide/cs5530.c
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,12 @@ static u8 cs5530_udma_filter(ide_drive_t *drive)
{
ide_hwif_t *hwif = drive->hwif;
ide_drive_t *mate = ide_get_pair_dev(drive);
u16 *mateid = mate->id;
u16 *mateid;
u8 mask = hwif->ultra_mask;

if (mate == NULL)
goto out;
mateid = mate->id;

if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {
if ((mateid[ATA_ID_FIELD_VALID] & 4) &&
Expand Down
3 changes: 2 additions & 1 deletion trunk/drivers/ide/sc1200.c
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,12 @@ static u8 sc1200_udma_filter(ide_drive_t *drive)
{
ide_hwif_t *hwif = drive->hwif;
ide_drive_t *mate = ide_get_pair_dev(drive);
u16 *mateid = mate->id;
u16 *mateid;
u8 mask = hwif->ultra_mask;

if (mate == NULL)
goto out;
mateid = mate->id;

if (ata_id_has_dma(mateid) && __ide_dma_bad_drive(mate) == 0) {
if ((mateid[ATA_ID_FIELD_VALID] & 4) &&
Expand Down
28 changes: 13 additions & 15 deletions trunk/drivers/net/ppp_generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ struct ppp {
unsigned long last_xmit; /* jiffies when last pkt sent 9c */
unsigned long last_recv; /* jiffies when last pkt rcvd a0 */
struct net_device *dev; /* network interface device a4 */
int closing; /* is device closing down? a8 */
#ifdef CONFIG_PPP_MULTILINK
int nxchan; /* next channel to send something on */
u32 nxseq; /* next sequence number to send */
Expand Down Expand Up @@ -995,7 +996,7 @@ ppp_xmit_process(struct ppp *ppp)
struct sk_buff *skb;

ppp_xmit_lock(ppp);
if (ppp->dev) {
if (!ppp->closing) {
ppp_push(ppp);
while (!ppp->xmit_pending
&& (skb = skb_dequeue(&ppp->file.xq)))
Expand Down Expand Up @@ -1463,8 +1464,7 @@ static inline void
ppp_do_recv(struct ppp *ppp, struct sk_buff *skb, struct channel *pch)
{
ppp_recv_lock(ppp);
/* ppp->dev == 0 means interface is closing down */
if (ppp->dev)
if (!ppp->closing)
ppp_receive_frame(ppp, skb, pch);
else
kfree_skb(skb);
Expand Down Expand Up @@ -2498,18 +2498,16 @@ init_ppp_file(struct ppp_file *pf, int kind)
*/
static void ppp_shutdown_interface(struct ppp *ppp)
{
struct net_device *dev;

mutex_lock(&all_ppp_mutex);
ppp_lock(ppp);
dev = ppp->dev;
ppp->dev = NULL;
ppp_unlock(ppp);
/* This will call dev_close() for us. */
if (dev) {
unregister_netdev(dev);
free_netdev(dev);
}
ppp_lock(ppp);
if (!ppp->closing) {
ppp->closing = 1;
ppp_unlock(ppp);
unregister_netdev(ppp->dev);
} else
ppp_unlock(ppp);

cardmap_set(&all_ppp_units, ppp->file.index, NULL);
ppp->file.dead = 1;
ppp->owner = NULL;
Expand Down Expand Up @@ -2554,7 +2552,7 @@ static void ppp_destroy_interface(struct ppp *ppp)
if (ppp->xmit_pending)
kfree_skb(ppp->xmit_pending);

kfree(ppp);
free_netdev(ppp->dev);
}

/*
Expand Down Expand Up @@ -2616,7 +2614,7 @@ ppp_connect_channel(struct channel *pch, int unit)
if (pch->file.hdrlen > ppp->file.hdrlen)
ppp->file.hdrlen = pch->file.hdrlen;
hdrlen = pch->file.hdrlen + 2; /* for protocol bytes */
if (ppp->dev && hdrlen > ppp->dev->hard_header_len)
if (hdrlen > ppp->dev->hard_header_len)
ppp->dev->hard_header_len = hdrlen;
list_add_tail(&pch->clist, &ppp->channels);
++ppp->n_channels;
Expand Down
7 changes: 7 additions & 0 deletions trunk/drivers/rtc/rtc-isl1208.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,13 @@ isl1208_i2c_set_time(struct i2c_client *client, struct rtc_time const *tm)
int sr;
u8 regs[ISL1208_RTC_SECTION_LEN] = { 0, };

/* The clock has an 8 bit wide bcd-coded register (they never learn)
* for the year. tm_year is an offset from 1900 and we are interested
* in the 2000-2099 range, so any value less than 100 is invalid.
*/
if (tm->tm_year < 100)
return -EINVAL;

regs[ISL1208_REG_SC] = bin2bcd(tm->tm_sec);
regs[ISL1208_REG_MN] = bin2bcd(tm->tm_min);
regs[ISL1208_REG_HR] = bin2bcd(tm->tm_hour) | ISL1208_REG_HR_MIL;
Expand Down
4 changes: 3 additions & 1 deletion trunk/drivers/w1/w1_io.c
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,9 @@ int w1_reset_select_slave(struct w1_slave *sl)
w1_write_8(sl->master, W1_SKIP_ROM);
else {
u8 match[9] = {W1_MATCH_ROM, };
memcpy(&match[1], (u8 *)&sl->reg_num, 8);
u64 rn = le64_to_cpu(*((u64*)&sl->reg_num));

memcpy(&match[1], &rn, 8);
w1_write_block(sl->master, match, 9);
}
return 0;
Expand Down
2 changes: 1 addition & 1 deletion trunk/include/acpi/acoutput.h
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@

/* Defaults for debug_level, debug and normal */

#define ACPI_DEBUG_DEFAULT (ACPI_LV_INIT | ACPI_LV_DEBUG_OBJECT)
#define ACPI_DEBUG_DEFAULT (ACPI_LV_INFO)
#define ACPI_NORMAL_DEFAULT (ACPI_LV_INIT | ACPI_LV_DEBUG_OBJECT)
#define ACPI_DEBUG_ALL (ACPI_LV_AML_DISASSEMBLE | ACPI_LV_ALL_EXCEPTIONS | ACPI_LV_ALL)

Expand Down
6 changes: 5 additions & 1 deletion trunk/include/acpi/platform/aclinux.h
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,10 @@ static inline void *acpi_os_acquire_object(acpi_cache_t * cache)
/*
* We need to show where it is safe to preempt execution of ACPICA
*/
#define ACPI_PREEMPTION_POINT() cond_resched()
#define ACPI_PREEMPTION_POINT() \
do { \
if (!irqs_disabled()) \
cond_resched(); \
} while (0)

#endif /* __ACLINUX_H__ */
8 changes: 3 additions & 5 deletions trunk/kernel/cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -1024,7 +1024,7 @@ static int cgroup_get_sb(struct file_system_type *fs_type,
if (ret == -EBUSY) {
mutex_unlock(&cgroup_mutex);
mutex_unlock(&inode->i_mutex);
goto drop_new_super;
goto free_cg_links;
}

/* EBUSY should be the only error here */
Expand Down Expand Up @@ -1073,10 +1073,11 @@ static int cgroup_get_sb(struct file_system_type *fs_type,

return simple_set_mnt(mnt, sb);

free_cg_links:
free_cg_links(&tmp_cg_links);
drop_new_super:
up_write(&sb->s_umount);
deactivate_super(sb);
free_cg_links(&tmp_cg_links);
return ret;
}

Expand Down Expand Up @@ -2934,9 +2935,6 @@ int cgroup_clone(struct task_struct *tsk, struct cgroup_subsys *subsys,
again:
root = subsys->root;
if (root == &rootnode) {
printk(KERN_INFO
"Not cloning cgroup for unused subsystem %s\n",
subsys->name);
mutex_unlock(&cgroup_mutex);
return 0;
}
Expand Down
2 changes: 0 additions & 2 deletions trunk/net/bluetooth/rfcomm/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1786,8 +1786,6 @@ static inline void rfcomm_accept_connection(struct rfcomm_session *s)
if (err < 0)
return;

__module_get(nsock->ops->owner);

/* Set our callbacks */
nsock->sk->sk_data_ready = rfcomm_l2data_ready;
nsock->sk->sk_state_change = rfcomm_l2state_change;
Expand Down
1 change: 1 addition & 0 deletions trunk/net/socket.c
Original file line number Diff line number Diff line change
Expand Up @@ -2307,6 +2307,7 @@ int kernel_accept(struct socket *sock, struct socket **newsock, int flags)
}

(*newsock)->ops = sock->ops;
__module_get((*newsock)->ops->owner);

done:
return err;
Expand Down

0 comments on commit 28a047d

Please sign in to comment.