Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 75626
b: refs/heads/master
c: 8b85eaa
h: refs/heads/master
v: v3
  • Loading branch information
Linus Torvalds committed Jan 22, 2008
1 parent ca3e1d1 commit 3566d59
Show file tree
Hide file tree
Showing 36 changed files with 154 additions and 90 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: 45c950e0f839fded922ebc0bfd59b1081cc71b70
refs/heads/master: 8b85eaadd5b8d3786996bd74c73aff54a92ec456
2 changes: 2 additions & 0 deletions trunk/arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -1072,6 +1072,8 @@ source "drivers/rtc/Kconfig"

source "drivers/dma/Kconfig"

source "drivers/dca/Kconfig"

endmenu

source "fs/Kconfig"
Expand Down
14 changes: 6 additions & 8 deletions trunk/arch/arm/mach-omap1/board-fsample.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,31 +40,29 @@ static int fsample_keymap[] = {
KEY(0,1,KEY_RIGHT),
KEY(0,2,KEY_LEFT),
KEY(0,3,KEY_DOWN),
KEY(0,4,KEY_CENTER),
KEY(0,5,KEY_0_5),
KEY(1,0,KEY_SOFT2),
KEY(0,4,KEY_ENTER),
KEY(1,0,KEY_F10),
KEY(1,1,KEY_SEND),
KEY(1,2,KEY_END),
KEY(1,3,KEY_VOLUMEDOWN),
KEY(1,4,KEY_VOLUMEUP),
KEY(1,5,KEY_RECORD),
KEY(2,0,KEY_SOFT1),
KEY(2,0,KEY_F9),
KEY(2,1,KEY_3),
KEY(2,2,KEY_6),
KEY(2,3,KEY_9),
KEY(2,4,KEY_SHARP),
KEY(2,5,KEY_2_5),
KEY(2,4,KEY_KPDOT),
KEY(3,0,KEY_BACK),
KEY(3,1,KEY_2),
KEY(3,2,KEY_5),
KEY(3,3,KEY_8),
KEY(3,4,KEY_0),
KEY(3,5,KEY_HEADSETHOOK),
KEY(3,5,KEY_KPSLASH),
KEY(4,0,KEY_HOME),
KEY(4,1,KEY_1),
KEY(4,2,KEY_4),
KEY(4,3,KEY_7),
KEY(4,4,KEY_STAR),
KEY(4,4,KEY_KPASTERISK),
KEY(4,5,KEY_POWER),
0
};
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/arm/mach-omap1/board-nokia770.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,6 @@
#include <asm/arch/omapfb.h>
#include <asm/arch/lcd_mipid.h>

#include "../plat-omap/dsp/dsp_common.h"

#define ADS7846_PENDOWN_GPIO 15

static void __init omap_nokia770_init_irq(void)
Expand Down Expand Up @@ -318,6 +316,8 @@ static __init int omap_dsp_init(void)
out:
return ret;
}
#else
#define omap_dsp_init() do {} while (0)
#endif /* CONFIG_OMAP_DSP */

static void __init omap_nokia770_init(void)
Expand Down
14 changes: 6 additions & 8 deletions trunk/arch/arm/mach-omap1/board-perseus2.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,31 +39,29 @@ static int p2_keymap[] = {
KEY(0,1,KEY_RIGHT),
KEY(0,2,KEY_LEFT),
KEY(0,3,KEY_DOWN),
KEY(0,4,KEY_CENTER),
KEY(0,5,KEY_0_5),
KEY(1,0,KEY_SOFT2),
KEY(0,4,KEY_ENTER),
KEY(1,0,KEY_F10),
KEY(1,1,KEY_SEND),
KEY(1,2,KEY_END),
KEY(1,3,KEY_VOLUMEDOWN),
KEY(1,4,KEY_VOLUMEUP),
KEY(1,5,KEY_RECORD),
KEY(2,0,KEY_SOFT1),
KEY(2,0,KEY_F9),
KEY(2,1,KEY_3),
KEY(2,2,KEY_6),
KEY(2,3,KEY_9),
KEY(2,4,KEY_SHARP),
KEY(2,5,KEY_2_5),
KEY(2,4,KEY_KPDOT),
KEY(3,0,KEY_BACK),
KEY(3,1,KEY_2),
KEY(3,2,KEY_5),
KEY(3,3,KEY_8),
KEY(3,4,KEY_0),
KEY(3,5,KEY_HEADSETHOOK),
KEY(3,5,KEY_KPSLASH),
KEY(4,0,KEY_HOME),
KEY(4,1,KEY_1),
KEY(4,2,KEY_4),
KEY(4,3,KEY_7),
KEY(4,4,KEY_STAR),
KEY(4,4,KEY_KPASTERISK),
KEY(4,5,KEY_POWER),
0
};
Expand Down
6 changes: 2 additions & 4 deletions trunk/arch/arm/mach-pxa/sleep.S
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,11 @@ pxa_cpu_save_cp:
pxa_cpu_save_sp:
@ preserve phys address of stack
mov r0, sp
mov r2, lr
str lr, [sp, #-4]!
bl sleep_phys_sp
ldr r1, =sleep_save_sp
str r0, [r1]
mov pc, r2
ldr pc, [sp], #4

/*
* pxa27x_cpu_suspend()
Expand Down Expand Up @@ -270,5 +270,3 @@ resume_after_mmu:
mar acc0, r2, r3
#endif
ldmfd sp!, {r4 - r12, pc} @ return to caller


1 change: 1 addition & 0 deletions trunk/arch/cris/arch-v10/kernel/io_interface_mux.c
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,7 @@ int cris_request_io_interface(enum cris_io_interface ioif, const char *device_id
if (((interfaces[ioif].gpio_g_in & gpio_in_pins) != interfaces[ioif].gpio_g_in) ||
((interfaces[ioif].gpio_g_out & gpio_out_pins) != interfaces[ioif].gpio_g_out) ||
((interfaces[ioif].gpio_b & gpio_pb_pins) != interfaces[ioif].gpio_b)) {
local_irq_restore(flags);
printk(KERN_CRIT "cris_request_io_interface: Could not get required pins for interface %u\n",
ioif);
return -EBUSY;
Expand Down
2 changes: 1 addition & 1 deletion trunk/arch/mips/mips-boards/malta/malta_setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ void __init plat_mem_setup(void)
/* Check PCI clock */
{
unsigned int __iomem *jmpr_p = (unsigned int *) ioremap(MALTA_JMPRS_REG, sizeof(unsigned int));
int jmpr = (readw(jmpr_p) >> 2) & 0x07;
int jmpr = (__raw_readl(jmpr_p) >> 2) & 0x07;
static const int pciclocks[] __initdata = {
33, 20, 25, 30, 12, 16, 37, 10
};
Expand Down
4 changes: 2 additions & 2 deletions trunk/arch/mips/tx4938/toshiba_rbtx4938/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -598,8 +598,8 @@ static int __init rbtx4938_ethaddr_init(void)
printk(KERN_WARNING "seeprom: bad checksum.\n");
}
for (i = 0; i < 2; i++) {
unsigned int slot = TX4938_PCIC_IDSEL_AD_TO_SLOT(31 - i);
unsigned int id = (1 << 8) | PCI_DEVFN(slot, 0); /* bus 1 */
unsigned int id =
TXX9_IRQ_BASE + (i ? TX4938_IR_ETH1 : TX4938_IR_ETH0);
struct platform_device *pdev;
if (!(tx4938_ccfgptr->pcfg &
(i ? TX4938_PCFG_ETH1_SEL : TX4938_PCFG_ETH0_SEL)))
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/atm/idt77105.c
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@ static const struct atmphy_ops idt77105_ops = {
};


int __devinit idt77105_init(struct atm_dev *dev)
int idt77105_init(struct atm_dev *dev)
{
dev->phy = &idt77105_ops;
return 0;
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/atm/suni.c
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ static const struct atmphy_ops suni_ops = {
};


int __devinit suni_init(struct atm_dev *dev)
int suni_init(struct atm_dev *dev)
{
unsigned char mri;

Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/net/e1000/e1000_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -632,6 +632,7 @@ e1000_down(struct e1000_adapter *adapter)

#ifdef CONFIG_E1000_NAPI
napi_disable(&adapter->napi);
atomic_set(&adapter->irq_sem, 0);
#endif
e1000_irq_disable(adapter);

Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/net/e1000e/netdev.c
Original file line number Diff line number Diff line change
Expand Up @@ -2183,6 +2183,7 @@ void e1000e_down(struct e1000_adapter *adapter)
msleep(10);

napi_disable(&adapter->napi);
atomic_set(&adapter->irq_sem, 0);
e1000_irq_disable(adapter);

del_timer_sync(&adapter->watchdog_timer);
Expand Down
9 changes: 6 additions & 3 deletions trunk/drivers/net/ixgb/ixgb_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -296,6 +296,11 @@ ixgb_down(struct ixgb_adapter *adapter, boolean_t kill_watchdog)
{
struct net_device *netdev = adapter->netdev;

#ifdef CONFIG_IXGB_NAPI
napi_disable(&adapter->napi);
atomic_set(&adapter->irq_sem, 0);
#endif

ixgb_irq_disable(adapter);
free_irq(adapter->pdev->irq, netdev);

Expand All @@ -304,9 +309,7 @@ ixgb_down(struct ixgb_adapter *adapter, boolean_t kill_watchdog)

if(kill_watchdog)
del_timer_sync(&adapter->watchdog_timer);
#ifdef CONFIG_IXGB_NAPI
napi_disable(&adapter->napi);
#endif

adapter->link_speed = 0;
adapter->link_duplex = 0;
netif_carrier_off(netdev);
Expand Down
4 changes: 3 additions & 1 deletion trunk/drivers/net/ixgbe/ixgbe_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -1409,9 +1409,11 @@ void ixgbe_down(struct ixgbe_adapter *adapter)
IXGBE_WRITE_FLUSH(&adapter->hw);
msleep(10);

napi_disable(&adapter->napi);
atomic_set(&adapter->irq_sem, 0);

ixgbe_irq_disable(adapter);

napi_disable(&adapter->napi);
del_timer_sync(&adapter->watchdog_timer);

netif_carrier_off(netdev);
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/net/tc35815.c
Original file line number Diff line number Diff line change
Expand Up @@ -611,7 +611,7 @@ static int __devinit tc35815_mac_match(struct device *dev, void *data)
{
struct platform_device *plat_dev = to_platform_device(dev);
struct pci_dev *pci_dev = data;
unsigned int id = (pci_dev->bus->number << 8) | pci_dev->devfn;
unsigned int id = pci_dev->irq;
return !strcmp(plat_dev->name, "tc35815-mac") && plat_dev->id == id;
}

Expand Down
14 changes: 1 addition & 13 deletions trunk/drivers/net/veth.c
Original file line number Diff line number Diff line change
Expand Up @@ -459,19 +459,7 @@ static __init int veth_init(void)

static __exit void veth_exit(void)
{
struct veth_priv *priv, *next;

rtnl_lock();
/*
* cannot trust __rtnl_link_unregister() to unregister all
* devices, as each ->dellink call will remove two devices
* from the list at once.
*/
list_for_each_entry_safe(priv, next, &veth_list, list)
veth_dellink(priv->dev);

__rtnl_link_unregister(&veth_link_ops);
rtnl_unlock();
rtnl_link_unregister(&veth_link_ops);
}

module_init(veth_init);
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/usb/serial/keyspan.c
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ static void usa26_indat_callback(struct urb *urb)

port = (struct usb_serial_port *) urb->context;
tty = port->tty;
if (urb->actual_length) {
if (tty && urb->actual_length) {
/* 0x80 bit is error flag */
if ((data[0] & 0x80) == 0) {
/* no errors on individual bytes, only possible overrun err*/
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/video/s3c2410fb.c
Original file line number Diff line number Diff line change
Expand Up @@ -488,7 +488,7 @@ static int s3c2410fb_set_par(struct fb_info *info)
break;
}

info->fix.line_length = (var->width * var->bits_per_pixel) / 8;
info->fix.line_length = (var->xres_virtual * var->bits_per_pixel) / 8;

/* activate this new configuration */

Expand Down
6 changes: 3 additions & 3 deletions trunk/include/asm-mips/smtc_ipi.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ struct smtc_ipi_q {

static inline void smtc_ipi_nq(struct smtc_ipi_q *q, struct smtc_ipi *p)
{
long flags;
unsigned long flags;

spin_lock_irqsave(&q->lock, flags);
if (q->head == NULL)
Expand Down Expand Up @@ -98,7 +98,7 @@ static inline struct smtc_ipi *smtc_ipi_dq(struct smtc_ipi_q *q)

static inline void smtc_ipi_req(struct smtc_ipi_q *q, struct smtc_ipi *p)
{
long flags;
unsigned long flags;

spin_lock_irqsave(&q->lock, flags);
if (q->head == NULL) {
Expand All @@ -114,7 +114,7 @@ static inline void smtc_ipi_req(struct smtc_ipi_q *q, struct smtc_ipi *p)

static inline int smtc_ipi_qdepth(struct smtc_ipi_q *q)
{
long flags;
unsigned long flags;
int retval;

spin_lock_irqsave(&q->lock, flags);
Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/hrtimer.c
Original file line number Diff line number Diff line change
Expand Up @@ -1378,7 +1378,7 @@ sys_nanosleep(struct timespec __user *rqtp, struct timespec __user *rmtp)
/*
* Functions related to boot-time initialization:
*/
static void __devinit init_hrtimers_cpu(int cpu)
static void __cpuinit init_hrtimers_cpu(int cpu)
{
struct hrtimer_cpu_base *cpu_base = &per_cpu(hrtimer_bases, cpu);
int i;
Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/timer.c
Original file line number Diff line number Diff line change
Expand Up @@ -1289,7 +1289,7 @@ static void migrate_timer_list(tvec_base_t *new_base, struct list_head *head)
}
}

static void __devinit migrate_timers(int cpu)
static void __cpuinit migrate_timers(int cpu)
{
tvec_base_t *old_base;
tvec_base_t *new_base;
Expand Down
27 changes: 27 additions & 0 deletions trunk/net/bridge/br_netfilter.c
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,23 @@ static inline struct nf_bridge_info *nf_bridge_alloc(struct sk_buff *skb)
return skb->nf_bridge;
}

static inline struct nf_bridge_info *nf_bridge_unshare(struct sk_buff *skb)
{
struct nf_bridge_info *nf_bridge = skb->nf_bridge;

if (atomic_read(&nf_bridge->use) > 1) {
struct nf_bridge_info *tmp = nf_bridge_alloc(skb);

if (tmp) {
memcpy(tmp, nf_bridge, sizeof(struct nf_bridge_info));
atomic_set(&tmp->use, 1);
nf_bridge_put(nf_bridge);
}
nf_bridge = tmp;
}
return nf_bridge;
}

static inline void nf_bridge_push_encap_header(struct sk_buff *skb)
{
unsigned int len = nf_bridge_encap_header_len(skb);
Expand Down Expand Up @@ -637,6 +654,11 @@ static unsigned int br_nf_forward_ip(unsigned int hook, struct sk_buff *skb,
if (!skb->nf_bridge)
return NF_ACCEPT;

/* Need exclusive nf_bridge_info since we might have multiple
* different physoutdevs. */
if (!nf_bridge_unshare(skb))
return NF_DROP;

parent = bridge_parent(out);
if (!parent)
return NF_DROP;
Expand Down Expand Up @@ -718,6 +740,11 @@ static unsigned int br_nf_local_out(unsigned int hook, struct sk_buff *skb,
if (!skb->nf_bridge)
return NF_ACCEPT;

/* Need exclusive nf_bridge_info since we might have multiple
* different physoutdevs. */
if (!nf_bridge_unshare(skb))
return NF_DROP;

nf_bridge = skb->nf_bridge;
if (!(nf_bridge->mask & BRNF_BRIDGED_DNAT))
return NF_ACCEPT;
Expand Down
4 changes: 2 additions & 2 deletions trunk/net/core/neighbour.c
Original file line number Diff line number Diff line change
Expand Up @@ -1316,6 +1316,8 @@ void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms)
*p = parms->next;
parms->dead = 1;
write_unlock_bh(&tbl->lock);
if (parms->dev)
dev_put(parms->dev);
call_rcu(&parms->rcu_head, neigh_rcu_free_parms);
return;
}
Expand All @@ -1326,8 +1328,6 @@ void neigh_parms_release(struct neigh_table *tbl, struct neigh_parms *parms)

void neigh_parms_destroy(struct neigh_parms *parms)
{
if (parms->dev)
dev_put(parms->dev);
kfree(parms);
}

Expand Down
5 changes: 4 additions & 1 deletion trunk/net/core/rtnetlink.c
Original file line number Diff line number Diff line change
Expand Up @@ -308,9 +308,12 @@ void __rtnl_link_unregister(struct rtnl_link_ops *ops)
struct net *net;

for_each_net(net) {
restart:
for_each_netdev_safe(net, dev, n) {
if (dev->rtnl_link_ops == ops)
if (dev->rtnl_link_ops == ops) {
ops->dellink(dev);
goto restart;
}
}
}
list_del(&ops->list);
Expand Down
Loading

0 comments on commit 3566d59

Please sign in to comment.