1. 10 4月, 2006 21 次提交
  2. 03 4月, 2006 19 次提交
    • 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