1. 10 4月, 2006 10 次提交
  2. 03 4月, 2006 30 次提交
    • L
      Linux v2.6.17-rc1 · 6246b612
      Linus Torvalds 提交于
      Close of the merge window..
      6246b612
    • L
      Update dummy snd_power_wait() function for new calling convention · 6fdb94bd
      Linus Torvalds 提交于
      Apparently nobody had tried to compile the ALSA CVS tree without power
      management enabled.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      6fdb94bd
    • L
      Merge branch 'splice' of git://brick.kernel.dk/data/git/linux-2.6-block · d6963615
      Linus Torvalds 提交于
      * 'splice' of git://brick.kernel.dk/data/git/linux-2.6-block:
        [PATCH] splice: fix page stealing LRU handling.
        [PATCH] splice: page stealing needs to wait_on_page_writeback()
        [PATCH] splice: export generic_splice_sendpage
        [PATCH] splice: add a SPLICE_F_MORE flag
        [PATCH] splice: add comments documenting more of the code
        [PATCH] splice: improve writeback and clean up page stealing
        [PATCH] splice: fix shadow[] filling logic
      d6963615
    • J
      [PATCH] splice: fix page stealing LRU handling. · 3e7ee3e7
      Jens Axboe 提交于
      Originally from Nick Piggin, just adapted to the newer branch.
      
      You can't check PageLRU without holding zone->lru_lock.  The page
      release code can get away with it only because the page refcount is 0 at
      that point. Also, you can't reliably remove pages from the LRU unless
      the refcount is 0. Ever.
      Signed-off-by: NNick Piggin <nickpiggin@yahoo.com.au>
      Signed-off-by: NJens Axboe <axboe@suse.de>
      3e7ee3e7
    • J
      [PATCH] splice: page stealing needs to wait_on_page_writeback() · ad8d6f0a
      Jens Axboe 提交于
      Thanks to Andrew for the good explanation of why this is so. akpm writes:
      
      If a page is under writeback and we remove it from pagecache, it's still
      going to get written to disk.  But the VFS no longer knows about that page,
      nor that this page is about to modify disk blocks.
      
      So there might be scenarios in which those
      blocks-which-are-about-to-be-written-to get reused for something else.
      When writeback completes, it'll scribble on those blocks.
      
      This won't happen in ext2/ext3-style filesystems in normal mode because the
      page has buffers and try_to_release_page() will fail.
      
      But ext2 in nobh mode doesn't attach buffers at all - it just sticks the
      page in a BIO, finds some new blocks, points the BIO at those blocks and
      lets it rip.
      
      While that write IO's in flight, someone could truncate the file.  Truncate
      won't block on the writeout because the page isn't in pagecache any more.
      So truncate will the free the blocks from the file under the page's feet.
      Then something else can reallocate those blocks.  Then write data to them.
      
      Now, the original write completes, corrupting the filesystem.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      ad8d6f0a
    • J
      [PATCH] splice: export generic_splice_sendpage · 059a8f37
      Jens Axboe 提交于
      Forgot that one, thanks Jeff. Also move the other EXPORT_SYMBOL
      to right below the functions.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      059a8f37
    • J
      [PATCH] splice: add a SPLICE_F_MORE flag · b2b39fa4
      Jens Axboe 提交于
      This lets userspace indicate whether more data will be coming in a
      subsequent splice call.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      b2b39fa4
    • J
      [PATCH] splice: add comments documenting more of the code · 83f9135b
      Jens Axboe 提交于
      Hopefully this will make Andrew a little more happy.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      83f9135b
    • J
      [PATCH] splice: improve writeback and clean up page stealing · 4f6f0bd2
      Jens Axboe 提交于
      By cleaning up the writeback logic (killing write_one_page() and the manual
      set_page_dirty()), we can get rid of ->stolen inside the pipe_buffer and
      just keep it local in pipe_to_file().
      
      This also adds dirty page balancing logic and O_SYNC handling.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      4f6f0bd2
    • J
      [PATCH] splice: fix shadow[] filling logic · 53cd9ae8
      Jens Axboe 提交于
      Clear the entire range, and don't increment pidx or we keep filling
      the same position again and again.
      
      Thanks to KAMEZAWA Hiroyuki.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      53cd9ae8
    • L
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · 1810b6cb
      Linus Torvalds 提交于
      * master.kernel.org:/home/rmk/linux-2.6-arm: (27 commits)
        [ARM] 3433/1: ARM: OMAP: 8/8 Update board files
        [ARM] 3455/1: ARM: OMAP: 7/8 Misc updates, take 2
        [ARM] 3454/1: ARM: OMAP: 6/8 Update framebuffer low-level init code, take 2
        [ARM] 3430/1: ARM: OMAP: 5/8 Update PM
        [ARM] 3429/1: ARM: OMAP: 4/8 Update GPIO
        [ARM] 3428/1: ARM: OMAP: 3/8 Update pin multiplexing
        [ARM] 3427/1: ARM: OMAP: 2/8 Update timers
        [ARM] 3426/1: ARM: OMAP: 1/8 Update clock framework
        [ARM] 3396/2: AT91RM9200 Platform devices update
        [ARM] 3395/2: AT91RM9200 Dataflash Card vs MMC selection
        [ARM] 3393/2: AT91RM9200 LED support
        [ARM] 3453/1: Poodle: Correctly set the memory size
        [ARM] 3446/1: i.MX: MMC/SD SDHC controller registration for i.MX/MX1 MX1ADS board
        [ARM] 3444/1: i.MX: Scatter-gather DMA emulation for i.MX/MX1
        [ARM] 3451/1: ep93xx: use the m48t86 rtc driver on the ts72xx platform
        [ARM] 3450/1: ep93xx: use the ep93xx rtc driver
        [ARM] 3452/1: [S3C2410] RX3715 - add nand information
        [ARM] 3449/1: [S3C2410] Anubis - fix NAND timings
        [ARM] 3448/1: [S3C2410] Settle delay when _enabling_ USB PLL
        [ARM] 3442/1: [S3C2410] SMDK: NAND device setup
        ...
      1810b6cb
    • L
      Merge master.kernel.org:/home/rmk/linux-2.6-mmc · ef7a4567
      Linus Torvalds 提交于
      * master.kernel.org:/home/rmk/linux-2.6-mmc:
        [ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1
        [ARM] 3456/1: AT91RM9200 support for 2.6 (MMC/SD driver)
      ef7a4567
    • L
      Merge git://oss.sgi.com:8090/oss/git/xfs-2.6 · a2308b7f
      Linus Torvalds 提交于
      * git://oss.sgi.com:8090/oss/git/xfs-2.6:
        [XFS] Provide XFS support for the splice syscall.
        [XFS] Reenable write barriers by default.
        [XFS] Make project quota enforcement return an error code consistent with
        [XFS] Implement the silent parameter to fill_super, previously ignored.
        [XFS] Cleanup comment to remove reference to obsoleted function
      a2308b7f
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa · f27f0a04
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (28 commits)
        [ALSA] Kconfig SND_SEQUENCER_OSS help text fix
        [ALSA] Add Aux input switch control for Aureon Universe
        [ALSA] pcxhr - Fix the crash with REV01 board
        [ALSA] sound/pci/hda: use create_singlethread_workqueue()
        [ALSA] hda-intel - Add support of ATI SB600
        [ALSA] cs4281 - Fix the check of timeout in probe
        [ALSA] cs4281 - Fix the check of right channel
        [ALSA] Test volume resolution of usb audio at initialization
        [ALSA] maestro3.c: fix BUG, optimization
        [ALSA] HDA/Realtek: multiple input mux definitions and pin mode additions
        [ALSA] AdLib FM card driver
        [ALSA] Fix / clean up PCM-OSS setup hooks
        [ALSA] Clean up PCM codes (take 2)
        [ALSA] Tiny clean up of PCM codes
        [ALSA] ISA drivers bailing on first !enable[i]
        [ALSA] Remove obsolete kfree_nocheck call
        [ALSA] Remove obsolete kfree_nocheck call
        [ALSA] Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards
        [ALSA] Add snd-riptide driver for Conexant Riptide chip
        [ALSA] hda-codec - Fix noisy output wtih AD1986A 3stack model
        ...
      f27f0a04
    • G
      [PATCH] sysfs: zero terminate sysfs write buffers · 6e0dd741
      Greg Kroah-Hartman 提交于
      No one should be writing a PAGE_SIZE worth of data to a normal sysfs
      file, so properly terminate the buffer.
      
      Thanks to Al Viro for pointing out my supidity here.
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      6e0dd741
    • A
      [PATCH] revert incorrect mutex conversion in hdaps driver · 597a7679
      Arjan van de Ven 提交于
      This reverts the mutex conversion that was recently done to the hdaps
      driver; this coversion was buggy because the hdaps driver started using
      this semaphore in IRQ context, which mutexes do not allow.  Easiest
      solution for now is to just revert the patch (the patch was part of a
      bigger GIT commit, 9a61bf63 but this
      only reverts this one file)
      Signed-off-by: NArjan van de Ven <arjan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      597a7679
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog · 7f344f0a
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
        [WATCHDOG] at91_wdt.c - Atmel AT91RM9200 watchdog driver
        [WATCHDOG] pcwd_usb.c: fix a NULL pointer dereference
        [WATCHDOG] pcwd.c sprintf/strcpy fix
        [WATCHDOG] pcwd.c general clean-up after patches
        [WATCHDOG] pcwd.c add debug info
        [WATCHDOG] pcwd.c pcwd_cleanup_module patch
        [WATCHDOG] pcwd.c firmware-info patch
        [WATCHDOG] pcwd.c control status patch
      7f344f0a
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial · 63589ed0
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (48 commits)
        Documentation: fix minor kernel-doc warnings
        BUG_ON() Conversion in drivers/net/
        BUG_ON() Conversion in drivers/s390/net/lcs.c
        BUG_ON() Conversion in mm/slab.c
        BUG_ON() Conversion in mm/highmem.c
        BUG_ON() Conversion in kernel/signal.c
        BUG_ON() Conversion in kernel/signal.c
        BUG_ON() Conversion in kernel/ptrace.c
        BUG_ON() Conversion in ipc/shm.c
        BUG_ON() Conversion in fs/freevxfs/
        BUG_ON() Conversion in fs/udf/
        BUG_ON() Conversion in fs/sysv/
        BUG_ON() Conversion in fs/inode.c
        BUG_ON() Conversion in fs/fcntl.c
        BUG_ON() Conversion in fs/dquot.c
        BUG_ON() Conversion in md/raid10.c
        BUG_ON() Conversion in md/raid6main.c
        BUG_ON() Conversion in md/raid5.c
        Fix minor documentation typo
        BFP->BPF in Documentation/networking/tuntap.txt
        ...
      63589ed0
    • S
      [PATCH] sbp2: fix spinlock recursion · 24c7cd06
      Stefan Richter 提交于
      sbp2util_mark_command_completed takes a lock which was already taken by
      sbp2scsi_complete_all_commands.  This is a regression in Linux 2.6.15.
      
       Reported by Kristian Harms at
      	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187394
      
      [ More complete commentary, as response to questions by Andrew: ]
      
      > This changes the call environment for all implementations of
      > ->Current_done().  Are they all safe to call under this lock?
      
      Short answer: Yes, trust me.  ;-) Long answer:
      
      The done() callbacks are passed on to sbp2 from the SCSI stack along
      with each SCSI command via the queuecommand hook.  The done() callback
      is safe to call in atomic context.  So does
      Documentation/scsi/scsi_mid_low_api.txt say, and many if not all SCSI
      low-level handlers rely on this fact.  So whatever this callback does,
      it is "self-contained" and it won't conflict with sbp2's internal ORB
      list handling.  In particular, it won't race with the
      sbp2_command_orb_lock.
      
      Moreover, sbp2 already calls the done() handler with
      sbp2_command_orb_lock taken in sbp2scsi_complete_all_commands().  I
      admit this is ultimately no proof of correctness, especially since this
      portion of code introduced the spinlock recursion in the first place and
      we didn't realize it since this code's submission before 2.6.15 until
      now.  (I have learned a lesson from this.)
      
      I stress-tested my patch on x86 uniprocessor with a preemptible SMP
      kernel (alas I have no SMP machine yet) and made sure that all code
      paths which involve the sbp2_command_orb_lock were gone through multiple
      times.
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      24c7cd06
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb · b043b673
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (49 commits)
        V4L/DVB (3667b): cpia2: fix function prototype
        V4L/DVB (3702): Make msp3400 routing defines more consistent
        V4L/DVB (3700): Remove obsolete commands from tvp5150.c
        V4L/DVB (3697): More msp3400 and bttv fixes
        V4L/DVB (3696): Previous change for cx2341X boards broke the remote support
        V4L/DVB (3693): Fix msp3400c and bttv stereo/mono/bilingual detection/handling
        V4L/DVB (3692): Keep experimental SLICED_VBI defines under an #if 0
        V4L/DVB (3689): Kconfig: fix VP-3054 Secondary I2C Bus build configuration menu dependencies
        V4L/DVB (3673): Fix budget-av CAM reset
        V4L/DVB (3672): Fix memory leak in dvr open
        V4L/DVB (3671): New module parameter 'tv_standard' (dvb-ttpci driver)
        V4L/DVB (3670): Fix typo in comment
        V4L/DVB (3669): Configurable dma buffer size for saa7146-based budget dvb cards
        V4L/DVB (3653h): Move usb v4l docs into Documentation/video4linux
        V4L/DVB (3667a): Fix SAP + stereo mode at msp3400
        V4L/DVB (3666): Remove trailing newlines
        V4L/DVB (3665): Add new NEC uPD64031A and uPD64083 i2c drivers
        V4L/DVB (3663): Fix msp3400c wait time and better audio mode fallbacks
        V4L/DVB (3662): Don't set msp3400c-non-existent register
        V4L/DVB (3661): Add wm8739 stereo audio ADC i2c driver
        ...
      b043b673
    • L
      Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband · cd5e25d9
      Linus Torvalds 提交于
      * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
        IB/ipath: kbuild infrastructure
        IB/ipath: infiniband verbs support
        IB/ipath: misc infiniband code, part 2
        IB/ipath: misc infiniband code, part 1
        IB/ipath: infiniband RC protocol support
        IB/ipath: infiniband UC and UD protocol support
        IB/ipath: infiniband header files
        IB/ipath: layering interfaces used by higher-level driver code
        IB/ipath: support for userspace apps using core driver
        IB/ipath: sysfs and ipathfs support for core driver
        IB/ipath: misc driver support code
        IB/ipath: chip initialisation code, and diag support
        IB/ipath: support for PCI Express devices
        IB/ipath: support for HyperTransport devices
        IB/ipath: core driver header files
        IB/ipath: core device driver
      cd5e25d9
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 · 86dca4f8
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (33 commits)
        [PATCH] pcmcia: declare pccard_iodyn_ops (fix m8xx_pcmcia.c compilation error)
        [PATCH] pcmcia: fix pcmcia_device_remove oops
        [PATCH] pcmcia: Add support for Possio GCC AKA PCMCIA Siemens MC45
        [PATCH] pcmcia: pseudo device handling update
        [PATCH] pcmcia: convert DEV_OK to pcmcia_dev_present
        [PATCH] pcmcia: use bitfield instead of p_state and state
        [PATCH] pcmcia: remove unused p_dev->state flags
        [PATCH] pcmcia: make pcmcia_release_{io,irq} static
        [PATCH] pcmcia: add return value to _config() functions
        [PATCH] pcmcia: remove dev_link_t and client_handle_t indirection
        [PATCH] pcmcia: embed dev_link_t into struct pcmcia_device
        [PATCH] pcmcia: rename pcmcia_device.state
        [PATCH] pcmcia: remove unneeded Vcc pseudo setting
        [PATCH] pcmcia: remove export of pcmcia_release_configuration
        [PATCH] pcmcia: default suspend and resume handling
        [PATCH] pcmcia: convert remaining users of pcmcia_release_io and _irq
        [PATCH] pcmcia: add pcmcia_disable_device
        [PATCH] serial_cs: add Merlin U630 IDs
        [PATCH] pcmcia: AT91RM9200 Compact Flash driver
        [PATCH] pcmcia: socket.functions starts with 1
        ...
      86dca4f8
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input · 9c8680e2
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits)
        Input: add support for Braille devices
        Input: synaptics - limit rate to 40pps on Toshiba Protege M300
        Input: gamecon - add SNES mouse support
        Input: make modalias code respect allowed buffer size
        Input: convert /proc handling to seq_file
        Input: limit attributes' output to PAGE_SIZE
        Input: gameport - fix memory leak
        Input: serio - fix memory leak
        Input: zaurus keyboard driver updates
        Input: i8042 - fix logic around pnp_register_driver()
        Input: ns558 - fix logic around pnp_register_driver()
        Input: pcspkr - separate device and driver registration
        Input: atkbd - allow disabling on X86_PC (if EMBEDDED)
        Input: atkbd - disable softrepeat for dumb keyboards
        Input: atkbd - fix complaints about 'releasing unknown key 0x7f'
        Input: HID - fix duplicate key mapping for Logitech UltraX remote
        Input: use kzalloc() throughout the code
        Input: fix input_free_device() implementation
        Input: initialize serio and gameport at subsystem level
        Input: uinput - semaphore to mutex conversion
        ...
      9c8680e2
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc · f900e582
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc:
        [PATCH] powerpc: iSeries needs slb_initialize to be called
        powerpc: hook up the splice syscall
        [PATCH] powerpc/cell: compile fixes
        [PATCH] powerpc: trivial spelling fixes in fault.c
        [PATCH] powerpc/pseries: EEH Cleanup
        [PATCH] powerpc/pseries: misc lparcfg fixes
        [PATCH] powerpc/pseries: fix device name printing, again.
        [PATCH] powerpc: Extends HCALL interface for InfiniBand usage
        [PATCH] powerpc/pseries: Change H_StudlyCaps to H_SHOUTING_CAPS
        [PATCH] powerpc/pseries: print message if EEH recovery fails
        [PATCH] powerpc/pseries: mutex lock to serialize EEH event processing
        powerpc: converted embedded platforms to use new define_machine support
        powerpc: merge machine_check_exception between ppc32 & ppc64
      f900e582
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 · 23344cb3
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
        [SPARC]: Wire up sys_sync_file_range() into syscall tables.
        [SPARC]: Wire up sys_splice() into the syscall tables.
        [SPARC64]: Update defconfig.
        [SPARC64]: Align address in huge_pte_alloc().
        [SPARC64]: Document the instruction checks we do in do_sparc64_fault().
        [SPARC64]: Make tsb_sync() mm comparison more precise.
      23344cb3
    • L
      Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 · bacd3add
      Linus Torvalds 提交于
      * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
        [NET]: Fully fix the memory leaks in sys_accept().
        [NETFILTER]: iptables 32bit compat layer
        [NETFILTER]: {ip,nf}_conntrack_netlink: fix expectation notifier unregistration
        [NETFILTER]: fix ifdef for connmark support in nf_conntrack_netlink
        [NETFILTER]: x_tables: unify IPv4/IPv6 multiport match
        [NETFILTER]: x_tables: unify IPv4/IPv6 esp match
        [NET]: Fix dentry leak in sys_accept().
        [IPSEC]: Kill unused decap state structure
        [IPSEC]: Kill unused decap state argument
        [NET]: com90xx kmalloc fix
        [TG3]: Update driver version and reldate.
        [TG3]: Revert "Speed up SRAM access"
      bacd3add
    • L
      splice: add SPLICE_F_NONBLOCK flag · 29e35094
      Linus Torvalds 提交于
      It doesn't make the splice itself necessarily nonblocking (because the
      actual file descriptors that are spliced from/to may block unless they
      have the O_NONBLOCK flag set), but it makes the splice pipe operations
      nonblocking.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      29e35094
    • P
      [ARM] 3457/1: i.MX: SD/MMC support for i.MX/MX1 · 56ca9040
      Pavel Pisa 提交于
      Patch from Pavel Pisa
      
      This patch adds support of i.MX/MX1 SD/MMC controller.
      It has been significantly redesigned from the original Sascha Hauer's
      version to support scatter-gather DMA, to conform to latest Pierre Ossman's
      and Russell King's MMC-SD Linux 2.6.x infrastructure.
      The handling of all events has been moved to the softirq context
      and is designed with no busy-looping in mind. Unfortunately
      some controller bugs has to be overcome by limited looping
      about 2-20 usec but these are observed only for initial card
      recognition phase.
      
      There are still some missing/missed IRQs problems under heavy load.
      Help of somebody with access to the full SDHC design information
      is probably necessary.
      
      Regenerated against 2.6.16-git-060402 to solve clash with other patches.
      Signed-off-by: NPavel Pisa <pisa@cmp.felk.cvut.cz>
      Acked-by: NSascha Hauer <s.hauer@pengutronix.de>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      56ca9040
    • A
      [ARM] 3456/1: AT91RM9200 support for 2.6 (MMC/SD driver) · 65dbf343
      Andrew Victor 提交于
      Patch from Andrew Victor
      
      This patch adds support for the MMC/SD card interface on the Atmel
      AT91RM9200 processor.
      
      Original driver was by Nick Randell, but a number of people have
      subsequently worked on it. It's currently maintained by Malcolm Noyes.
      Signed-off-by: NAndrew Victor <andrew@sanpeople.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      65dbf343
    • L
      ppc64: actually add sys_splice() to the system call table · b45e516f
      Linus Torvalds 提交于
      (We'd only added the number, which meant that actually trying
      to use splice just went off into la-la-land)
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      b45e516f