summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ucc_geth: minor whitespace fixAndrew Morton2007-12-141-1/+1
| | | | | | | | | | | | | The zombie whitespace from outer space that will not die! Cc: "David S. Miller" <davem@davemloft.net> Cc: Emil Medve <Emilian.Medve@Freescale.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Kumar Gala <galak@gate.crashing.org> Cc: Li Yang <leoli@freescale.com> Cc: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* drivers/net/s2io.c section fixesAdrian Bunk2007-12-141-2/+2
| | | | | | | | | | | | | | | | | Code used by the non-__devinit s2io_open() mustn't be __devinit. This patch fixes the following section mismatch with CONFIG_HOTPLUG=n: <-- snip --> ... WARNING: vmlinux.o(.text+0x6f6e3e): Section mismatch: reference to .init.text.20:s2io_test_intr (between 's2io_open' and 's2io_ethtool_sset') ... <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* drivers/net/sis190.c section fixAdrian Bunk2007-12-141-1/+1
| | | | | | | | | | | | | | | This patch fixes the following section mismatch with CONFIG_HOTPLUG=n: <-- snip --> ... WARNING: vmlinux.o(.init.text.20+0x4cb25): Section mismatch: reference to .exit.text:sis190_mii_remove (between 'sis190_init_one' and 'read_eeprom') ... <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* hamachi endianness fixesAl Viro2007-12-141-33/+37
| | | | | | | | | | | | | | | | | | | badly broken on big-endian * passing little-endian to pci_unmap_single() et.al. * cpu_to_le32() before passing value to writel() * worse, cpu_to_le64() and shifting/masking result before the same * hmp->tx_ring[i].status_n_length = cpu_to_le32( DescEndRing | (hmp->tx_ring[i].status_n_length & 0x0000FFFF)); is obviously bogus on big-endian. Not hard to untangle, fortunately... * poisoning addresses in rx_ring is better done after we'd done pci_unmap_single() on them, not before that. [this one affects little-endian as well, obviously, provided that pci_unmap_single() is not a no-op on target in question] Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* e100: free IRQ to remove warningwhenrebootingAuke Kok2007-12-141-1/+4
| | | | | | | | | | | Adapted from Ian Wienand <ianw@gelato.unsw.edu.au> Explicitly free the IRQ before removing the device to remove a warning "Destroying IRQ without calling free_irq" Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Cc: Ian Wienand <ianw@gelato.unsw.edu.au> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* starfire VLAN fixAl Viro2007-12-141-1/+1
| | | | | | | | | | | Recognized VLAN ids are set via writew(), should go in host-endian. That's a long-standing bug, BTW - see http://lkml.org/lkml/2004/2/27/180 for example. What happens is that card gets VLAN id table populated by byteswapped values on little-endian boxen (so 257 works as expected, 256 and 258 do not, etc.). Bug is easily reproduced, patch fixes it. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* sundance fixesAl Viro2007-12-141-17/+17
| | | | | | | | | | * all places where we assign ->addr get cpu_to_le32(pci_map_single(....)), so we ought to convert back to host-endian before doing pci_unmap_single() et.al. * poisoning addresses in netdev_close() should be done _after_ unmapping them, not before it... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* sky2: RX lockup fixStephen Hemminger2007-12-141-2/+7
| | | | | | | | | | | | | | | | | | | | | | | I'm using a Marvell 88E8062 on a custom PPC64 blade and ran into RX lockups while validating the sky2 driver. The receive MAC FIFO would become stuck during testing with high traffic. One port of the 88E8062 would lockup, while the other port remained functional. Re-inserting the sky2 module would not fix the problem - only a power cycle would. I looked over Marvell's most recent sk98lin driver and it looks like they had a "workaround" for the Yukon XL that the sky2 doesn't have yet. The sk98lin driver disables the RX MAC FIFO flush feature for all revisions of the Yukon XL. According to skgeinit.c of the sk98lin driver, "Flushing must be enabled (needed for ASF see dev. #4.29), but the flushing mask should be disabled (see dev. #4.115)". Nice. I implemented this same change in the sky2 driver and verified that the RX lockup I was seeing was resolved. Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6Linus Torvalds2007-12-127-71/+71
|\ | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fix endless loop in cheetah_xcall_deliver(). [SERIAL] sparc: Infrastructure to fix section mismatch bugs.
| * [SPARC64]: Fix endless loop in cheetah_xcall_deliver().David S. Miller2007-12-121-6/+13
| | | | | | | | | | | | | | | | We need to mask out the proper bits when testing the dispatch status register else we can see unrelated NACK bits from previous cross call sends. Signed-off-by: David S. Miller <davem@davemloft.net>
| * [SERIAL] sparc: Infrastructure to fix section mismatch bugs.Martin Habets2007-12-126-65/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch against 2.6.23 sparc-2.6.git contains a number of minor cleanups of the sparc serial drivers. Initially I fixed this build warning: WARNING: vmlinux.o(.text+0x107a2c): Section mismatch: reference to .init.text:add_preferred_console (between 'sunserial_console_match' and 'sunserial_console_termios') which is done by declaring sunserial_console_match() as __init. This resulted in build warnings on sunserial_current_minor. To resolve these the variable was changed so it is no longer global, and to hide operations on it inside 2 new functions. These functions handle the UART minor handling code that is common to all sparc serial drivers. These changes allowed to clean up the uart counters in all the sparc serial drivers, and the administration of minor device numbers. Lastly, sunserial_console_termios() does not need to be exported since it is only called from non-modular code. Sadly, the following build warning still exists: WARNING: vmlinux.o(__ksymtab+0x2910): Section mismatch: reference to .init.text:sunserial_console_match (between '__ksymtab_sunserial_console_match' and '__ksymtab_sunserial_unregister_minors') This could be resolved by not exporting sunserial_console_match(), but this is not possible at the moment because it is being called from modular code. On the other hand, this is a bogus warning since it comes from a ksymtab section. Signed-off-by: Martin Habets <errandir_news@mph.eclipse.co.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6Linus Torvalds2007-12-125-47/+11
|\ \ | | | | | | | | | | | | | | | | | | | | | * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c/isp1301_omap: Build fix i2c: Add missing spaces in split log messages i2c-gpio: Initialize adapter class i2c: Delete an outdated piece of documentation
| * | i2c/isp1301_omap: Build fixDavid Brownell2007-12-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Build fix to the isp1301_omap driver ... this driver gets built more often in the OMAP tree than in mainline, partly because the defconfig for H2 (plus probably H3 and H4) needs updating. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
| * | i2c: Add missing spaces in split log messagesJoe Perches2007-12-122-5/+5
| | | | | | | | | | | | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
| * | i2c-gpio: Initialize adapter classAtsushi Nemoto2007-12-121-0/+1
| | | | | | | | | | | | | | | | | | | | | This is required to let hwmon drivers attach to the adapter. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Jean Delvare <khali@linux-fr.org>
| * | i2c: Delete an outdated piece of documentationJean Delvare2007-12-121-41/+4
| |/ | | | | | | | | | | | | I'm amazed that this old piece of documentation managed to survive until today. Signed-off-by: Jean Delvare <khali@linux-fr.org>
* | V4L/DVB (6609): Re-adds lock safe videobuf_read_startMauro Carvalho Chehab2007-12-121-1/+13
|/ | | | | | | | | videobuf_dvb needs videobuf_read_start. The EXPORT_SYMBOL_GPL() were removed by a previous patch. However, videobuf_dvb needs this. This patch re-adds videobuf_read_start, doing the proper lock. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* Revert "make bnx2x select ZLIB_INFLATE"Linus Torvalds2007-12-111-1/+0
| | | | | | | | | | | | This reverts commit 70eba18b5664f90d7620905e005b89388e5fd94b, as per Jeff Garzik: "That was meant for 2.6.25, and actually (due to patching) applied to a completely unrelated 2.6.24 net driver." Noted-by: Roland Dreier <rdreier@cisco.com> Requested-by: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* V4L/DVB (6797): bt8xx/ section fixesAdrian Bunk2007-12-112-3/+3
| | | | | | | | | | | | | | This patch fixes the following section mismatch with CONFIG_HOTPLUG=n: <-- snip --> ... ... <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6796): ivtv/ section fixAdrian Bunk2007-12-112-2/+2
| | | | | | | | | | | | | | This patch fixes the following section mismatch with CONFIG_HOTPLUG=n: <-- snip --> ... ... <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6794): Fix compilation when dib3000mc is compiled as a moduleMauro Carvalho Chehab2007-12-111-1/+3
| | | | | | | | | | | | | As reported by Andrew Morton: > ERROR: "dibusb_dib3000mc_frontend_attach" [drivers/media/dvb/dvb-usb/dvb-usb-nova-t-usb2.ko] undefined! > ERROR: "dibusb_dib3000mc_tuner_attach" [drivers/media/dvb/dvb-usb/dvb-usb-nova-t-usb2.ko] undefined! > ERROR: "dibusb_dib3000mc_frontend_attach" [drivers/media/dvb/dvb-usb/dvb-usb-dibusb-mc.ko] undefined! > ERROR: "dibusb_dib3000mc_tuner_attach" [drivers/media/dvb/dvb-usb/dvb-usb-dibusb-mc.ko] undefined! > ERROR: "dibusb_dib3000mc_frontend_attach" [drivers/media/dvb/dvb-usb/dvb-usb-a800.ko] undefined! > ERROR: "dibusb_dib3000mc_tuner_attach" [drivers/media/dvb/dvb-usb/dvb-usb-a800.ko] undefined Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6733): DVB: Compile 3000MC-specific DIB code only for ↵Jiri Kosina2007-12-111-0/+2
| | | | | | | | | | | | | | | | | | CONFIG_DVB_DIB3000MC On Tue, 4 Dec 2007, Ingo Molnar wrote: > drivers/built-in.o: In function `dibusb_dib3000mc_tuner_attach': > : undefined reference to `dib3000mc_get_tuner_i2c_master' > drivers/built-in.o: In function `dibusb_dib3000mc_tuner_attach': > : undefined reference to `dib3000mc_set_config' Seems like -common part contains also code that is not completely common to all the modules. Signed-off-by: Jiri Kosina <jkosina@suse.cz> Tested-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6750): Fix in-kernel compilation for cxusbMauro Carvalho Chehab2007-12-111-0/+3
| | | | | | | | | cxusb needs tuner-xc2028*.h files, but Makefile is not adding its patch drivers/media/dvb/dvb-usb/cxusb.c:33:26: error: tuner-xc2028.h: File not found drivers/media/dvb/dvb-usb/cxusb.c:34:32: error: tuner-xc2028-types.h: File not found Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6746): saa7134-dvb: fix tuning for WinTV HVR-1110Benoit Istin2007-12-111-0/+1
| | | | | | | | | | There are several months my hvr1110 stop working. This is very simple to fix, for my card revision at least, by setting a missing field to the hauppauge_hvr_1110_config. Signed-off-by: Benoit Istin <beistin@gmail.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6751): V4L: Memory leak! Fix count in videobuf-vmalloc mmapBrandon Philips2007-12-111-3/+3
| | | | | | | | | | | | | This is pretty serious bug. map->count is never initialized after the call to kmalloc making the count start at some random trash value. The end result is leaking videobufs. Also, fix up the debug statements to print unsigned values. Pushed to http://ifup.org/hg/v4l-dvb too Signed-off-by: Brandon Philips <bphilips@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6690): saa7134: fix ignored interruptsHeikki Lindholm2007-12-112-11/+13
| | | | | | | | | | | | | The saa7134 video driver starts dropping frames when used together with the saa7134-alsa driver. Frames are dropped because when an audio event is waiting the driver simply ignores the interrupt and passes it on to the saa7134-alsa interrupt handler. The alsa interrupt handler in turn acknowledges all types of events thus clearing the pending video events as well. Fix by only masking out the audio event in the video interrupt handler and by only acknowledging the audio event in the alsa driver. Signed-off-by: Heikki Lindholm <holindho@cs.helsinki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6686): saa7134: fix composite over s-video input on the Tevion MD 9717Hermann Pitton2007-12-111-1/+1
| | | | | | | The vmux for composite over s-video input was wrong. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6684): Complement va_start() with va_end() + style fixesRichard Knutsson2007-12-112-7/+11
| | | | | | | Complement va_start() with va_end() + minor style fixes in the same function. Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6666): saa7134-alsa: fix period handlingHeikki Lindholm2007-12-111-3/+10
| | | | | | | | | | | The period handling in saa7134-alsa is broken in two ways. First, the minimum number of periods of two does not work, because the dma is setup two periods ahead in the irq handler. Fix the minimum to four periods. Second, the code assumes that the number of periods is divisible by two, which isn't always the case on ALSA. Fix by adding a constraint. Signed-off-by: Heikki Lindholm <holindho@cs.helsinki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6629): zl10353: fix default adc_clock and TRL nominal rate calculationChris Pascoe2007-12-112-3/+3
| | | | | | | | | The default adc_clock for the zl10353 is different from what was originally thought to be the case and the TRL nominal rate formula was incorrect as a result. Use a better (and hopefully now correct) formula. Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6615): V4L: Fix VIDIOCGMBUF locking in saa7146Brandon Philips2007-12-111-5/+1
| | | | | | | Fallout from videobuf_mmap_setup() locking fixes. Signed-off-by: Brandon Philips <bphilips@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6602): V4L: Convert videobuf drivers to videobuf_stopBrandon Philips2007-12-116-20/+6
| | | | | | | | Drivers were using cookie cutter code for stopping the read/stream. Use the new videobuf_stop function which is lock safe. Signed-off-by: Brandon Philips <bphilips@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6601): V4L: videobuf-core locking fixes and commentsBrandon Philips2007-12-113-93/+161
| | | | | | | | | | | | | | | - Add comments to functions that require that caller hold q->lock - Add __videobuf_mmap_free that doesn't hold q->lock for use within videobuf - Add locking to videobuf_mmap_free - Fix linux/drivers/media/common/saa7146_video.c which was holding lock around videobuf_read_stop - Add locking to functions that operate on a queue - Add videobuf_stop to take care of stopping in both the read and stream case TODO: bttv still has an unsafe call to videobuf_queue_is_busy Signed-off-by: Brandon Philips <bphilips@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6581): Fix: avoids negative vma usage countMauro Carvalho Chehab2007-12-111-1/+3
| | | | Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6579): Fix bug #8824: Correct support for Diseqc on tda10086Hartmut Hackmann2007-12-111-7/+7
| | | | | | | | This is a modified version of a patch previously posted by Thomas Unverzagt. Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6542): Fix S-video mode on tvp5150Mauro Carvalho Chehab2007-12-111-0/+11
| | | | | | Thanks to Markus Reichberger to point this. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6540): em28xx: fix failing autodetection after the rebootSascha Sommer2007-12-111-1/+2
| | | | | | | | | | The attached patch is required so that the autodetecion code also works after a reboot. Setting the I2C speed does not seem to be supported for em2800. Signed-off-by: Sascha Sommer <saschasommer@freenet.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* V4L/DVB (6485): ivtv: fix compile warningHans Verkuil2007-12-111-1/+1
| | | | | Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
* [IPSEC]: Fix potential dst leak in xfrm_lookupHerbert Xu2007-12-111-3/+6
| | | | | | | | | | | If we get an error during the actual policy lookup we don't free the original dst while the caller expects us to always free the original dst in case of error. This patch fixes that. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [VLAN]: Fix potential race in vlan_cleanup_module vs vlan_ioctl_handler.Pavel Emelyanov2007-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The vlan module cleanup function starts with vlan_netlink_fini(); vlan_ioctl_set(NULL); The first call removes all the vlan devices and the second one closes the vlan ioctl. AFAIS there's a tiny race window between these two calls - after rtnl unregistered all the vlans, but the ioctl handler isn't set to NULL yet, user can manage to call this ioctl and create one vlan device, and that this function will later BUG_ON seeing non-emply hashes. I think, that we must first close the vlan ioctl and only after this remove all the vlans with the vlan_netlink_fini() call. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Acked-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* [NET]: Fix wrong comments for unregister_net*Wang Chen2007-12-111-4/+2
| | | | | | | | There are some return value comments for void functions. Fixed it. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* [BNX2]: Update version to 1.6.9.Michael Chan2007-12-111-2/+2
| | | | | Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* [BNX2]: Fix RX packet rot.Michael Chan2007-12-112-13/+14
| | | | | | | | | | | | | | | Packets can be left in the RX ring if the NAPI budget is reached. This is caused by storing the latest rx index at the beginning of bnx2_rx_int(). We may not process all the work up to this index if the budget is reached and so some packets in the RX ring may rot when we later check for more work using this stored rx index. The fix is to not store this latest hw index and only store the processed rx index. We use a new function bnx2_get_hw_rx_cons() to fetch the latest hw rx index. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* [BNX2]: Add PHY_DIS_EARLY_DAC workaround.Michael Chan2007-12-111-2/+3
| | | | | | | 5709 Ax and Bx chips all need this workaround. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* [S390]: Fix use of skb after netif_rxJulia Lawall2007-12-112-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recently, Wang Chen submitted a patch (d30f53aeb31d453a5230f526bea592af07944564) to move a call to netif_rx(skb) after a subsequent reference to skb, because netif_rx may call kfree_skb on its argument. netif_rx_ni calls netif_rx, so the same problem occurs in the files below. I have left the updating of dev->last_rx after the calls to netif_rx_ni because it seems time dependent, but moved the other field updates before. This was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ expression skb, e,e1; @@ ( netif_rx(skb); | netif_rx_ni(skb); ) ... when != skb = e ( skb = e1 | * skb ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
* [XTENSA]: Fix use of skb after netif_rxJulia Lawall2007-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recently, Wang Chen submitted a patch (d30f53aeb31d453a5230f526bea592af07944564) to move a call to netif_rx(skb) after a subsequent reference to skb, because netif_rx may call kfree_skb on its argument. The same problem occurs in some other drivers as well. This was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ expression skb, e,e1; @@ ( netif_rx(skb); | netif_rx_ni(skb); ) ... when != skb = e ( skb = e1 | * skb ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
* [UM]: Fix use of skb after netif_rxJulia Lawall2007-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recently, Wang Chen submitted a patch (d30f53aeb31d453a5230f526bea592af07944564) to move a call to netif_rx(skb) after a subsequent reference to skb, because netif_rx may call kfree_skb on its argument. The same problem occurs in some other drivers as well. This was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ expression skb, e,e1; @@ ( netif_rx(skb); | netif_rx_ni(skb); ) ... when != skb = e ( skb = e1 | * skb ) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPv6] ESP: Discard dummy packets introduced in rfc4303Thomas Graf2007-12-111-0/+6
| | | | | | | | | | RFC4303 introduces dummy packets with a nexthdr value of 59 to implement traffic confidentiality. Such packets need to be dropped silently and the payload may not be attempted to be parsed as it consists of random chunk. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPv4] ESP: Discard dummy packets introduced in rfc4303Thomas Graf2007-12-111-0/+5
| | | | | | | | | | RFC4303 introduces dummy packets with a nexthdr value of 59 to implement traffic confidentiality. Such packets need to be dropped silently and the payload may not be attempted to be parsed as it consists of random chunk. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPV4]: Swap the ifa allocation with the"ipv4_devconf_setall" callPavel Emelyanov2007-12-111-2/+1
| | | | | | | | | | | | | According to Herbert, the ipv4_devconf_setall should be called only when the ifa is added to the device. However, failed ifa allocation may bring things into inconsistent state. Move the call to ipv4_devconf_setall after the ifa allocation. Fits both net-2.6 (with offsets) and net-2.6.25 (cleanly). Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
OpenPOWER on IntegriCloud