Commit d99ef36e authored by Jeff Garzik's avatar Jeff Garzik

Merge branch 'master' into upstream

parents bdad69b2 387e2b04
...@@ -22,26 +22,26 @@ config DVB ...@@ -22,26 +22,26 @@ config DVB
source "drivers/media/dvb/dvb-core/Kconfig" source "drivers/media/dvb/dvb-core/Kconfig"
comment "Supported SAA7146 based PCI Adapters" comment "Supported SAA7146 based PCI Adapters"
depends on DVB_CORE && PCI depends on DVB_CORE && PCI && I2C
source "drivers/media/dvb/ttpci/Kconfig" source "drivers/media/dvb/ttpci/Kconfig"
comment "Supported USB Adapters" comment "Supported USB Adapters"
depends on DVB_CORE && USB depends on DVB_CORE && USB && I2C
source "drivers/media/dvb/dvb-usb/Kconfig" source "drivers/media/dvb/dvb-usb/Kconfig"
source "drivers/media/dvb/ttusb-budget/Kconfig" source "drivers/media/dvb/ttusb-budget/Kconfig"
source "drivers/media/dvb/ttusb-dec/Kconfig" source "drivers/media/dvb/ttusb-dec/Kconfig"
source "drivers/media/dvb/cinergyT2/Kconfig" source "drivers/media/dvb/cinergyT2/Kconfig"
comment "Supported FlexCopII (B2C2) Adapters" comment "Supported FlexCopII (B2C2) Adapters"
depends on DVB_CORE && (PCI || USB) depends on DVB_CORE && (PCI || USB) && I2C
source "drivers/media/dvb/b2c2/Kconfig" source "drivers/media/dvb/b2c2/Kconfig"
comment "Supported BT878 Adapters" comment "Supported BT878 Adapters"
depends on DVB_CORE && PCI depends on DVB_CORE && PCI && I2C
source "drivers/media/dvb/bt8xx/Kconfig" source "drivers/media/dvb/bt8xx/Kconfig"
comment "Supported Pluto2 Adapters" comment "Supported Pluto2 Adapters"
depends on DVB_CORE && PCI depends on DVB_CORE && PCI && I2C
source "drivers/media/dvb/pluto2/Kconfig" source "drivers/media/dvb/pluto2/Kconfig"
comment "Supported DVB Frontends" comment "Supported DVB Frontends"
......
config DVB_B2C2_FLEXCOP config DVB_B2C2_FLEXCOP
tristate "Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters" tristate "Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters"
depends on DVB_CORE depends on DVB_CORE && I2C
select DVB_STV0299 select DVB_STV0299
select DVB_MT352 select DVB_MT352
select DVB_MT312 select DVB_MT312
...@@ -16,7 +16,7 @@ config DVB_B2C2_FLEXCOP ...@@ -16,7 +16,7 @@ config DVB_B2C2_FLEXCOP
config DVB_B2C2_FLEXCOP_PCI config DVB_B2C2_FLEXCOP_PCI
tristate "Technisat/B2C2 Air/Sky/Cable2PC PCI" tristate "Technisat/B2C2 Air/Sky/Cable2PC PCI"
depends on DVB_B2C2_FLEXCOP && PCI depends on DVB_B2C2_FLEXCOP && PCI && I2C
help help
Support for the Air/Sky/CableStar2 PCI card (DVB/ATSC) by Technisat/B2C2. Support for the Air/Sky/CableStar2 PCI card (DVB/ATSC) by Technisat/B2C2.
...@@ -24,7 +24,7 @@ config DVB_B2C2_FLEXCOP_PCI ...@@ -24,7 +24,7 @@ config DVB_B2C2_FLEXCOP_PCI
config DVB_B2C2_FLEXCOP_USB config DVB_B2C2_FLEXCOP_USB
tristate "Technisat/B2C2 Air/Sky/Cable2PC USB" tristate "Technisat/B2C2 Air/Sky/Cable2PC USB"
depends on DVB_B2C2_FLEXCOP && USB depends on DVB_B2C2_FLEXCOP && USB && I2C
help help
Support for the Air/Sky/Cable2PC USB1.1 box (DVB/ATSC) by Technisat/B2C2, Support for the Air/Sky/Cable2PC USB1.1 box (DVB/ATSC) by Technisat/B2C2,
......
config DVB_BT8XX config DVB_BT8XX
tristate "BT8xx based PCI cards" tristate "BT8xx based PCI cards"
depends on DVB_CORE && PCI && VIDEO_BT848 depends on DVB_CORE && PCI && I2C && VIDEO_BT848
select DVB_MT352 select DVB_MT352
select DVB_SP887X select DVB_SP887X
select DVB_NXT6000 select DVB_NXT6000
......
...@@ -115,7 +115,7 @@ static int is_pci_slot_eq(struct pci_dev* adev, struct pci_dev* bdev) ...@@ -115,7 +115,7 @@ static int is_pci_slot_eq(struct pci_dev* adev, struct pci_dev* bdev)
return 0; return 0;
} }
static struct bt878 __init *dvb_bt8xx_878_match(unsigned int bttv_nr, struct pci_dev* bttv_pci_dev) static struct bt878 __devinit *dvb_bt8xx_878_match(unsigned int bttv_nr, struct pci_dev* bttv_pci_dev)
{ {
unsigned int card_nr; unsigned int card_nr;
...@@ -709,7 +709,7 @@ static void frontend_init(struct dvb_bt8xx_card *card, u32 type) ...@@ -709,7 +709,7 @@ static void frontend_init(struct dvb_bt8xx_card *card, u32 type)
} }
} }
static int __init dvb_bt8xx_load_card(struct dvb_bt8xx_card *card, u32 type) static int __devinit dvb_bt8xx_load_card(struct dvb_bt8xx_card *card, u32 type)
{ {
int result; int result;
...@@ -794,7 +794,7 @@ static int __init dvb_bt8xx_load_card(struct dvb_bt8xx_card *card, u32 type) ...@@ -794,7 +794,7 @@ static int __init dvb_bt8xx_load_card(struct dvb_bt8xx_card *card, u32 type)
return 0; return 0;
} }
static int dvb_bt8xx_probe(struct bttv_sub_device *sub) static int __devinit dvb_bt8xx_probe(struct bttv_sub_device *sub)
{ {
struct dvb_bt8xx_card *card; struct dvb_bt8xx_card *card;
struct pci_dev* bttv_pci_dev; struct pci_dev* bttv_pci_dev;
......
config DVB_USB config DVB_USB
tristate "Support for various USB DVB devices" tristate "Support for various USB DVB devices"
depends on DVB_CORE && USB depends on DVB_CORE && USB && I2C
select FW_LOADER select FW_LOADER
help help
By enabling this you will be able to choose the various supported By enabling this you will be able to choose the various supported
......
config DVB_PLUTO2 config DVB_PLUTO2
tristate "Pluto2 cards" tristate "Pluto2 cards"
depends on DVB_CORE && PCI depends on DVB_CORE && PCI && I2C
select I2C select I2C
select I2C_ALGOBIT select I2C_ALGOBIT
select DVB_TDA1004X select DVB_TDA1004X
......
config DVB_AV7110 config DVB_AV7110
tristate "AV7110 cards" tristate "AV7110 cards"
depends on DVB_CORE && PCI && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select FW_LOADER select FW_LOADER
select VIDEO_SAA7146_VV select VIDEO_SAA7146_VV
select DVB_VES1820 select DVB_VES1820
...@@ -58,7 +58,7 @@ config DVB_AV7110_OSD ...@@ -58,7 +58,7 @@ config DVB_AV7110_OSD
config DVB_BUDGET config DVB_BUDGET
tristate "Budget cards" tristate "Budget cards"
depends on DVB_CORE && PCI && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146 select VIDEO_SAA7146
select DVB_STV0299 select DVB_STV0299
select DVB_VES1X93 select DVB_VES1X93
...@@ -79,7 +79,7 @@ config DVB_BUDGET ...@@ -79,7 +79,7 @@ config DVB_BUDGET
config DVB_BUDGET_CI config DVB_BUDGET_CI
tristate "Budget cards with onboard CI connector" tristate "Budget cards with onboard CI connector"
depends on DVB_CORE && PCI && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146 select VIDEO_SAA7146
select DVB_STV0297 select DVB_STV0297
select DVB_STV0299 select DVB_STV0299
...@@ -99,7 +99,7 @@ config DVB_BUDGET_CI ...@@ -99,7 +99,7 @@ config DVB_BUDGET_CI
config DVB_BUDGET_AV config DVB_BUDGET_AV
tristate "Budget cards with analog video inputs" tristate "Budget cards with analog video inputs"
depends on DVB_CORE && PCI && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146_VV select VIDEO_SAA7146_VV
select DVB_STV0299 select DVB_STV0299
select DVB_TDA1004X select DVB_TDA1004X
......
...@@ -170,7 +170,7 @@ config VIDEO_VINO ...@@ -170,7 +170,7 @@ config VIDEO_VINO
config VIDEO_STRADIS config VIDEO_STRADIS
tristate "Stradis 4:2:2 MPEG-2 video driver (EXPERIMENTAL)" tristate "Stradis 4:2:2 MPEG-2 video driver (EXPERIMENTAL)"
depends on EXPERIMENTAL && PCI && VIDEO_V4L1 depends on EXPERIMENTAL && PCI && VIDEO_V4L1 && !PPC64
help help
Say Y here to enable support for the Stradis 4:2:2 MPEG-2 video Say Y here to enable support for the Stradis 4:2:2 MPEG-2 video
driver for PCI. There is a product page at driver for PCI. There is a product page at
...@@ -178,7 +178,7 @@ config VIDEO_STRADIS ...@@ -178,7 +178,7 @@ config VIDEO_STRADIS
config VIDEO_ZORAN config VIDEO_ZORAN
tristate "Zoran ZR36057/36067 Video For Linux" tristate "Zoran ZR36057/36067 Video For Linux"
depends on PCI && I2C_ALGOBIT && VIDEO_V4L1 depends on PCI && I2C_ALGOBIT && VIDEO_V4L1 && !PPC64
help help
Say Y for support for MJPEG capture cards based on the Zoran Say Y for support for MJPEG capture cards based on the Zoran
36057/36067 PCI controller chipset. This includes the Iomega 36057/36067 PCI controller chipset. This includes the Iomega
......
...@@ -11,7 +11,10 @@ tuner-objs := tuner-core.o tuner-types.o tuner-simple.o \ ...@@ -11,7 +11,10 @@ tuner-objs := tuner-core.o tuner-types.o tuner-simple.o \
msp3400-objs := msp3400-driver.o msp3400-kthreads.o msp3400-objs := msp3400-driver.o msp3400-kthreads.o
obj-$(CONFIG_VIDEO_DEV) += videodev.o v4l2-common.o compat_ioctl32.o obj-$(CONFIG_VIDEO_DEV) += videodev.o v4l2-common.o compat_ioctl32.o
obj-$(CONFIG_VIDEO_V4L1_COMPAT) += v4l1-compat.o
ifeq ($(CONFIG_VIDEO_V4L1_COMPAT),y)
obj-$(CONFIG_VIDEO_DEV) += v4l1-compat.o
endif
obj-$(CONFIG_VIDEO_BT848) += bt8xx/ obj-$(CONFIG_VIDEO_BT848) += bt8xx/
obj-$(CONFIG_VIDEO_BT848) += tvaudio.o tda7432.o tda9875.o ir-kbd-i2c.o obj-$(CONFIG_VIDEO_BT848) += tvaudio.o tda7432.o tda9875.o ir-kbd-i2c.o
......
...@@ -55,7 +55,7 @@ static int __init br_init(void) ...@@ -55,7 +55,7 @@ static int __init br_init(void)
static void __exit br_deinit(void) static void __exit br_deinit(void)
{ {
llc_sap_close(br_stp_sap); rcu_assign_pointer(br_stp_sap->rcv_func, NULL);
#ifdef CONFIG_BRIDGE_NETFILTER #ifdef CONFIG_BRIDGE_NETFILTER
br_netfilter_fini(); br_netfilter_fini();
...@@ -67,6 +67,7 @@ static void __exit br_deinit(void) ...@@ -67,6 +67,7 @@ static void __exit br_deinit(void)
synchronize_net(); synchronize_net();
llc_sap_put(br_stp_sap);
br_fdb_get_hook = NULL; br_fdb_get_hook = NULL;
br_fdb_put_hook = NULL; br_fdb_put_hook = NULL;
......
...@@ -528,14 +528,15 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level) ...@@ -528,14 +528,15 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level)
/* Decode */ /* Decode */
if ((err = (Decoders[son->type]) (bs, son, base, if ((err = (Decoders[son->type]) (bs, son, base,
level + 1)) > level + 1)) <
H323_ERROR_STOP) H323_ERROR_NONE)
return err; return err;
bs->cur = beg + len; bs->cur = beg + len;
bs->bit = 0; bs->bit = 0;
} else if ((err = (Decoders[son->type]) (bs, son, base, } else if ((err = (Decoders[son->type]) (bs, son, base,
level + 1))) level + 1)) <
H323_ERROR_NONE)
return err; return err;
} }
...@@ -554,7 +555,7 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level) ...@@ -554,7 +555,7 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level)
/* Decode the extension components */ /* Decode the extension components */
for (opt = 0; opt < bmp2_len; opt++, i++, son++) { for (opt = 0; opt < bmp2_len; opt++, i++, son++) {
if (son->attr & STOP) { if (i < f->ub && son->attr & STOP) {
PRINT("%*.s%s\n", (level + 1) * TAB_SIZE, " ", PRINT("%*.s%s\n", (level + 1) * TAB_SIZE, " ",
son->name); son->name);
return H323_ERROR_STOP; return H323_ERROR_STOP;
...@@ -584,8 +585,8 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level) ...@@ -584,8 +585,8 @@ int decode_seq(bitstr_t * bs, field_t * f, char *base, int level)
beg = bs->cur; beg = bs->cur;
if ((err = (Decoders[son->type]) (bs, son, base, if ((err = (Decoders[son->type]) (bs, son, base,
level + 1)) > level + 1)) <
H323_ERROR_STOP) H323_ERROR_NONE)
return err; return err;
bs->cur = beg + len; bs->cur = beg + len;
...@@ -660,18 +661,20 @@ int decode_seqof(bitstr_t * bs, field_t * f, char *base, int level) ...@@ -660,18 +661,20 @@ int decode_seqof(bitstr_t * bs, field_t * f, char *base, int level)
i < i <
effective_count ? effective_count ?
base : NULL, base : NULL,
level + 1)) > level + 1)) <
H323_ERROR_STOP) H323_ERROR_NONE)
return err; return err;
bs->cur = beg + len; bs->cur = beg + len;
bs->bit = 0; bs->bit = 0;
} else } else
if ((err = (Decoders[son->type]) (bs, son, if ((err = (Decoders[son->type]) (bs, son,
i < effective_count ? i <
base : NULL, effective_count ?
level + 1))) base : NULL,
return err; level + 1)) <
H323_ERROR_NONE)
return err;
if (base) if (base)
base += son->offset; base += son->offset;
...@@ -735,13 +738,14 @@ int decode_choice(bitstr_t * bs, field_t * f, char *base, int level) ...@@ -735,13 +738,14 @@ int decode_choice(bitstr_t * bs, field_t * f, char *base, int level)
} }
beg = bs->cur; beg = bs->cur;
if ((err = (Decoders[son->type]) (bs, son, base, level + 1)) > if ((err = (Decoders[son->type]) (bs, son, base, level + 1)) <
H323_ERROR_STOP) H323_ERROR_NONE)
return err; return err;
bs->cur = beg + len; bs->cur = beg + len;
bs->bit = 0; bs->bit = 0;
} else if ((err = (Decoders[son->type]) (bs, son, base, level + 1))) } else if ((err = (Decoders[son->type]) (bs, son, base, level + 1)) <
H323_ERROR_NONE)
return err; return err;
return H323_ERROR_NONE; return H323_ERROR_NONE;
......
...@@ -768,6 +768,7 @@ static unsigned char snmp_object_decode(struct asn1_ctx *ctx, ...@@ -768,6 +768,7 @@ static unsigned char snmp_object_decode(struct asn1_ctx *ctx,
len *= sizeof(unsigned long); len *= sizeof(unsigned long);
*obj = kmalloc(sizeof(struct snmp_object) + len, GFP_ATOMIC); *obj = kmalloc(sizeof(struct snmp_object) + len, GFP_ATOMIC);
if (*obj == NULL) { if (*obj == NULL) {
kfree(lp);
kfree(id); kfree(id);
if (net_ratelimit()) if (net_ratelimit())
printk("OOM in bsalg (%d)\n", __LINE__); printk("OOM in bsalg (%d)\n", __LINE__);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment