1. 01 6月, 2010 14 次提交
  2. 25 5月, 2010 4 次提交
    • N
      fs/splice.c: fix mapping_gfp_mask usage · 0ae0b5d0
      Nick Piggin 提交于
      mapping_gfp_mask() is not supposed to store allocation contex details,
      only page location details.  So mapping_gfp_mask should be applied to the
      pagecache page allocation, wheras normal (kernel mapped) memory should be
      used for surrounding allocations such as radix-tree nodes allocated by
      add_to_page_cache.  Context modifiers should be applied on a per-callsite
      basis.
      
      So change splice to follow this convention (which is followed in similar
      code patterns in core code).
      Signed-off-by: NNick Piggin <npiggin@suse.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      0ae0b5d0
    • S
      cfq-iosched: fix an oops caused by slab leak · d02a2c07
      Shaohua Li 提交于
      I got below oops when unloading cfq-iosched. Considering scenario:
      queue A merge to B, C merge to D and B will be merged to D. Before B is merged
      to D, we do split B. We should put B's reference for D.
      
      [  807.768536] =============================================================================
      [  807.768539] BUG cfq_queue: Objects remaining on kmem_cache_close()
      [  807.768541] -----------------------------------------------------------------------------
      [  807.768543]
      [  807.768546] INFO: Slab 0xffffea0003e6b4e0 objects=26 used=1 fp=0xffff88011d584fd8 flags=0x200000000004082
      [  807.768550] Pid: 5946, comm: rmmod Tainted: G        W   2.6.34-07097-gf4b87dee-dirty #724
      [  807.768552] Call Trace:
      [  807.768560]  [<ffffffff81104e8d>] slab_err+0x8f/0x9d
      [  807.768564]  [<ffffffff811059e1>] ? flush_cpu_slab+0x0/0x93
      [  807.768569]  [<ffffffff8164be52>] ? add_preempt_count+0xe/0xca
      [  807.768572]  [<ffffffff8164bd9c>] ? sub_preempt_count+0xe/0xb6
      [  807.768577]  [<ffffffff81648871>] ? _raw_spin_unlock+0x15/0x30
      [  807.768580]  [<ffffffff8164bd9c>] ? sub_preempt_count+0xe/0xb6
      [  807.768584]  [<ffffffff811061bc>] list_slab_objects+0x9b/0x19f
      [  807.768588]  [<ffffffff8164bf0a>] ? add_preempt_count+0xc6/0xca
      [  807.768591]  [<ffffffff81109e27>] kmem_cache_destroy+0x13f/0x21d
      [  807.768597]  [<ffffffffa000ff13>] cfq_slab_kill+0x1a/0x43 [cfq_iosched]
      [  807.768601]  [<ffffffffa000ffcf>] cfq_exit+0x93/0x9e [cfq_iosched]
      [  807.768606]  [<ffffffff810973a2>] sys_delete_module+0x1b1/0x219
      [  807.768612]  [<ffffffff8102fb5b>] system_call_fastpath+0x16/0x1b
      [  807.768618] INFO: Object 0xffff88011d584618 @offset=1560
      [  807.768622] INFO: Allocated in cfq_get_queue+0x11e/0x274 [cfq_iosched] age=7173 cpu=1 pid=5496
      [  807.768626] =============================================================================
      
      Cc: stable@kernel.org
      Signed-off-by: NShaohua Li <shaohua.li@intel.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      d02a2c07
    • J
      pipe: make F_{GET,SET}PIPE_SZ deal with byte sizes · b9598db3
      Jens Axboe 提交于
      Instead of requiring an exact number of pages as the argument and
      return value, change the API to deal with number of bytes instead.
      
      This also relaxes the requirement that the passed in size must
      result in a power-of-2 page array size. Round up to the nearest
      power-of-2 automatically and return the resulting size of the pipe
      on success.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      b9598db3
    • J
      pipe: F_SETPIPE_SZ should return -EPERM for non-root · 0191f869
      Jens Axboe 提交于
      If the passed in size is larger than what has been set as the
      system wide limit and the user is not root, we want to return
      permission denied (not invalid value).
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      0191f869
  3. 24 5月, 2010 3 次提交
  4. 22 5月, 2010 19 次提交
    • R
      fbmem: avoid printk format warning with 32-bit resources · f4b87dee
      Randy Dunlap 提交于
      Fix printk formats:
      
        drivers/video/fbmem.c: In function 'fb_do_apertures_overlap':
        drivers/video/fbmem.c:1494: warning: format '%llx' expects type 'long long unsigned int', but argument 2 has type 'resource_size_t'
        drivers/video/fbmem.c:1494: warning: format '%llx' expects type 'long long unsigned int', but argument 3 has type 'resource_size_t'
        drivers/video/fbmem.c:1494: warning: format '%llx' expects type 'long long unsigned int', but argument 4 has type 'resource_size_t'
        drivers/video/fbmem.c:1494: warning: format '%llx' expects type 'long long unsigned int', but argument 5 has type 'resource_size_t'
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f4b87dee
    • R
      linux/elfcore.h: hide kernel functions · 2faa4cf7
      Roland McGrath 提交于
      The declarations for elf_core_extra_phdrs() et al got added on the
      wrong side of #ifdef __KERNEL__ in linux/elfcore.h so they leak into
      the user header copy and we get a warning at build time about it.
      Signed-off-by: NRoland McGrath <roland@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2faa4cf7
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 · e8bebe2f
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (69 commits)
        fix handling of offsets in cris eeprom.c, get rid of fake on-stack files
        get rid of home-grown mutex in cris eeprom.c
        switch ecryptfs_write() to struct inode *, kill on-stack fake files
        switch ecryptfs_get_locked_page() to struct inode *
        simplify access to ecryptfs inodes in ->readpage() and friends
        AFS: Don't put struct file on the stack
        Ban ecryptfs over ecryptfs
        logfs: replace inode uid,gid,mode initialization with helper function
        ufs: replace inode uid,gid,mode initialization with helper function
        udf: replace inode uid,gid,mode init with helper
        ubifs: replace inode uid,gid,mode initialization with helper function
        sysv: replace inode uid,gid,mode initialization with helper function
        reiserfs: replace inode uid,gid,mode initialization with helper function
        ramfs: replace inode uid,gid,mode initialization with helper function
        omfs: replace inode uid,gid,mode initialization with helper function
        bfs: replace inode uid,gid,mode initialization with helper function
        ocfs2: replace inode uid,gid,mode initialization with helper function
        nilfs2: replace inode uid,gid,mode initialization with helper function
        minix: replace inode uid,gid,mode init with helper
        ext4: replace inode uid,gid,mode init with helper
        ...
      
      Trivial conflict in fs/fs-writeback.c (mark bitfields unsigned)
      e8bebe2f
    • L
      Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 · 6109e2ce
      Linus Torvalds 提交于
      * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (36 commits)
        PCI: hotplug: pciehp: Removed check for hotplug of display devices
        PCI: read memory ranges out of Broadcom CNB20LE host bridge
        PCI: Allow manual resource allocation for PCI hotplug bridges
        x86/PCI: make ACPI MCFG reserved error messages ACPI specific
        PCI hotplug: Use kmemdup
        PM/PCI: Update PCI power management documentation
        PCI: output FW warning in pci_read/write_vpd
        PCI: fix typos pci_device_dis/enable to pci_dis/enable_device in comments
        PCI quirks: disable msi on AMD rs4xx internal gfx bridges
        PCI: Disable MSI for MCP55 on P5N32-E SLI
        x86/PCI: irq and pci_ids patch for additional Intel Cougar Point DeviceIDs
        PCI: aerdrv: trivial cleanup for aerdrv_core.c
        PCI: aerdrv: trivial cleanup for aerdrv.c
        PCI: aerdrv: introduce default_downstream_reset_link
        PCI: aerdrv: rework find_aer_service
        PCI: aerdrv: remove is_downstream
        PCI: aerdrv: remove magical ROOT_ERR_STATUS_MASKS
        PCI: aerdrv: redefine PCI_ERR_ROOT_*_SRC
        PCI: aerdrv: rework do_recovery
        PCI: aerdrv: rework get_e_source()
        ...
      6109e2ce
    • L
      Merge git://git.infradead.org/iommu-2.6 · 0961d658
      Linus Torvalds 提交于
      * git://git.infradead.org/iommu-2.6:
        intel-iommu: Set a more specific taint flag for invalid BIOS DMAR tables
        intel-iommu: Combine the BIOS DMAR table warning messages
        panic: Add taint flag TAINT_FIRMWARE_WORKAROUND ('I')
        panic: Allow warnings to set different taint flags
        intel-iommu: intel_iommu_map_range failed at very end of address space
        intel-iommu: errors with smaller iommu widths
        intel-iommu: Fix boot inside 64bit virtualbox with io-apic disabled
        intel-iommu: use physfn to search drhd for VF
        intel-iommu: Print out iommu seq_id
        intel-iommu: Don't complain that ACPI_DMAR_SCOPE_TYPE_IOAPIC is not supported
        intel-iommu: Avoid global flushes with caching mode.
        intel-iommu: Use correct domain ID when caching mode is enabled
        intel-iommu mistakenly uses offset_pfn when caching mode is enabled
        intel-iommu: use for_each_set_bit()
        intel-iommu: Fix section mismatch dmar_ir_support() uses dmar_tbl.
      0961d658
    • L
      Merge branch 'virtio' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · 1756ac3d
      Linus Torvalds 提交于
      * 'virtio' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: (27 commits)
        drivers/char: Eliminate use after free
        virtio: console: Accept console size along with resize control message
        virtio: console: Store each console's size in the console structure
        virtio: console: Resize console port 0 on config intr only if multiport is off
        virtio: console: Add support for nonblocking write()s
        virtio: console: Rename wait_is_over() to will_read_block()
        virtio: console: Don't always create a port 0 if using multiport
        virtio: console: Use a control message to add ports
        virtio: console: Move code around for future patches
        virtio: console: Remove config work handler
        virtio: console: Don't call hvc_remove() on unplugging console ports
        virtio: console: Return -EPIPE to hvc_console if we lost the connection
        virtio: console: Let host know of port or device add failures
        virtio: console: Add a __send_control_msg() that can send messages without a valid port
        virtio: Revert "virtio: disable multiport console support."
        virtio: add_buf_gfp
        trans_virtio: use virtqueue_xxx wrappers
        virtio-rng: use virtqueue_xxx wrappers
        virtio_ring: remove a level of indirection
        virtio_net: use virtqueue_xxx wrappers
        ...
      
      Fix up conflicts in drivers/net/virtio_net.c due to new virtqueue_xxx
      wrappers changes conflicting with some other cleanups.
      1756ac3d
    • L
      Merge branch 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 98edb6ca
      Linus Torvalds 提交于
      * 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (269 commits)
        KVM: x86: Add missing locking to arch specific vcpu ioctls
        KVM: PPC: Add missing vcpu_load()/vcpu_put() in vcpu ioctls
        KVM: MMU: Segregate shadow pages with different cr0.wp
        KVM: x86: Check LMA bit before set_efer
        KVM: Don't allow lmsw to clear cr0.pe
        KVM: Add cpuid.txt file
        KVM: x86: Tell the guest we'll warn it about tsc stability
        x86, paravirt: don't compute pvclock adjustments if we trust the tsc
        x86: KVM guest: Try using new kvm clock msrs
        KVM: x86: export paravirtual cpuid flags in KVM_GET_SUPPORTED_CPUID
        KVM: x86: add new KVMCLOCK cpuid feature
        KVM: x86: change msr numbers for kvmclock
        x86, paravirt: Add a global synchronization point for pvclock
        x86, paravirt: Enable pvclock flags in vcpu_time_info structure
        KVM: x86: Inject #GP with the right rip on efer writes
        KVM: SVM: Don't allow nested guest to VMMCALL into host
        KVM: x86: Fix exception reinjection forced to true
        KVM: Fix wallclock version writing race
        KVM: MMU: Don't read pdptrs with mmu spinlock held in mmu_alloc_roots
        KVM: VMX: enable VMXON check with SMX enabled (Intel TXT)
        ...
      98edb6ca
    • L
      Merge branch 'modules' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · a8251096
      Linus Torvalds 提交于
      * 'modules' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        module: drop the lock while waiting for module to complete initialization.
        MODULE_DEVICE_TABLE(isapnp, ...) does nothing
        hisax_fcpcipnp: fix broken isapnp device table.
        isapnp: move definitions to mod_devicetable.h so file2alias can reach them.
      a8251096
    • L
      Merge branch 'for_linus' of... · 27a3353a
      Linus Torvalds 提交于
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (32 commits)
        Move N014, N051 and CR620 dmi information to load scm dmi table
        drivers/platform/x86/eeepc-wmi.c: fix build warning
        X86 platfrom wmi: Add debug facility to dump WMI data in a readable way
        X86 platform wmi: Also log GUID string when an event happens and debug is set
        X86 platform wmi: Introduce debug param to log all WMI events
        Clean up all objects used by scm model when driver initial fail or exit
        msi-laptop: fix up some coding style issues found by checkpatch
        msi-laptop: Add i8042 filter to sync sw state with BIOS when function key pressed
        msi-laptop: Set rfkill init state when msi-laptop intiial
        msi-laptop: Add MSI CR620 notebook dmi information to scm models table
        msi-laptop: Add N014 N051 dmi information to scm models table
        drivers/platform/x86: Use kmemdup
        drivers/platform/x86: Use kzalloc
        drivers/platform/x86: Clarify the MRST IPC driver description slightly
        eeepc-wmi: depends on BACKLIGHT_CLASS_DEVICE
        IPC driver for Intel Mobile Internet Device (MID) platforms
        classmate-laptop: Add RFKILL support.
        thinkpad-acpi: document backlight level writeback at driver init
        thinkpad-acpi: clean up ACPI handles handling
        thinkpad-acpi: don't depend on led_path for led firmware type (v2)
        ...
      27a3353a
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx · 6f68fbaa
      Linus Torvalds 提交于
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
        DMAENGINE: extend the control command to include an arg
        async_tx: trim dma_async_tx_descriptor in 'no channel switch' case
        DMAENGINE: DMA40 fix for allocation of logical channel 0
        DMAENGINE: DMA40 support paused channel status
        dmaengine: mpc512x: Use resource_size
        DMA ENGINE: Do not reset 'private' of channel
        ioat: Remove duplicated devm_kzalloc() calls for ioatdma_device
        ioat3: disable cacheline-unaligned transfers for raid operations
        ioat2,3: convert to producer/consumer locking
        ioat: convert to circ_buf
        DMAENGINE: Support for ST-Ericssons DMA40 block v3
        async_tx: use of kzalloc/kfree requires the include of slab.h
        dmaengine: provide helper for setting txstate
        DMAENGINE: generic channel status v2
        DMAENGINE: generic slave control v2
        dma: timb-dma: Update comment and fix compiler warning
        dma: Add timb-dma
        DMAENGINE: COH 901 318 fix bytesleft
        DMAENGINE: COH 901 318 rename confusing vars
      6f68fbaa
    • L
      Merge branch 'for-linus' of git://neil.brown.name/md · 6e451397
      Linus Torvalds 提交于
      * 'for-linus' of git://neil.brown.name/md: (45 commits)
        md: don't insist on valid event count for spare devices.
        md: simplify updating of event count to sometimes avoid updating spares.
        md/raid6: Fix raid-6 read-error correction in degraded state
        md: restore ability of spare drives to spin down.
        md: Fix read balancing in RAID1 and RAID10 on drives > 2TB
        md/linear: standardise all printk messages
        md/raid0: tidy up printk messages.
        md/raid10: tidy up printk messages.
        md/raid1: improve printk messages
        md/raid5: improve consistency of error messages.
        md: remove EXPERIMENTAL designation from RAID10
        md: allow integers to be passed to md/level
        md: notify mdstat waiters of level change
        md/raid4: permit raid0 takeover
        md/raid1: delay reads that could overtake behind-writes.
        md/raid1: fix confusing 'redirect sector' message.
        md: don't unregister the thread in mddev_suspend
        md: factor out init code for an mddev
        md: pass mddev to make_request functions rather than request_queue
        md: call md_stop_writes from md_stop
        ...
      6e451397
    • N
      Merge commit '3ff195b0' into for-linus · 19fdb9ee
      NeilBrown 提交于
      Conflicts:
      	drivers/md/md.c
      
      - Resolved conflict in md_update_sb
      - Added extra 'NULL' arg to new instance of sysfs_get_dirent.
      Signed-off-by: NNeilBrown <neilb@suse.de>
      19fdb9ee
    • A
    • A
      get rid of home-grown mutex in cris eeprom.c · 4f0447b8
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      4f0447b8
    • A
      48c1e44a
    • A
      switch ecryptfs_get_locked_page() to struct inode * · 02bd9799
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      02bd9799
    • A
      simplify access to ecryptfs inodes in ->readpage() and friends · bef5bc24
      Al Viro 提交于
      we can get to them from page->mapping->host, no need to mess with
      file.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      bef5bc24
    • A
      AFS: Don't put struct file on the stack · f6d335c0
      Al Viro 提交于
      Don't put struct file on the stack as it takes up quite a lot of space
      and violates lifetime rules for struct file.
      
      Rather than calling afs_readpage() indirectly from the directory routines by
      way of read_mapping_page(), split afs_readpage() to have afs_page_filler()
      that's given a key instead of a file and call read_cache_page(), specifying the
      new function directly.  Use it in afs_readpages() as well.
      
      Also make use of this in afs_mntpt_check_symlink() too for the same reason.
      Reported-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      f6d335c0
    • A
      Ban ecryptfs over ecryptfs · 4403158b
      Al Viro 提交于
      This is a seriously simplified patch from Eric Sandeen; copy of
      rationale follows:
      ===
        mounting stacked ecryptfs on ecryptfs has been shown to lead to bugs
        in testing.  For crypto info in xattr, there is no mechanism for handling
        this at all, and for normal file headers, we run into other trouble:
      
        BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
        IP: [<ffffffffa015b0b3>] ecryptfs_d_revalidate+0x43/0xa0 [ecryptfs]
        ...
      
        There doesn't seem to be any good usecase for this, so I'd suggest just
        disallowing the configuration.
      
        Based on a patch originally, I believe, from Mike Halcrow.
      ===
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      4403158b