1. 16 9月, 2009 1 次提交
    • A
      Driver core: add new device to bus's list before probing · 2023c610
      Alan Stern 提交于
      This patch (as1271) affects when new devices get linked into their
      bus's list of devices.  Currently this happens after probing, and it
      doesn't happen at all if probing fails.  Clearly this is wrong,
      because at that point quite a few symbolic links have already been
      created in sysfs.  We are committed to adding the device, so it should
      be linked into the bus's list regardless.
      
      In addition, this needs to happen before the uevent announcing the new
      device gets issued.  Otherwise user programs might try to access the
      device before it has been added to the bus.
      
      To fix both these problems, the patch moves the call to
      klist_add_tail() forward from bus_attach_device() to bus_add_device().
      Since bus_attach_device() now does nothing but probe for drivers, it
      has been renamed to bus_probe_device().  And lastly, the kerneldoc is
      updated.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      CC: Kay Sievers <kay.sievers@vrfy.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      
      
      2023c610
  2. 15 9月, 2009 39 次提交
    • L
      Merge branch 'for-linus3' of... · 18240904
      Linus Torvalds 提交于
      Merge branch 'for-linus3' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
      
      * 'for-linus3' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
        SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX
        KEYS: Fix garbage collector
        KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent
        CRED: Allow put_cred() to cope with a NULL groups list
        SELinux: flush the avc before disabling SELinux
        SELinux: seperate avc_cache flushing
        Creds: creds->security can be NULL is selinux is disabled
      18240904
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 · f86054c2
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (23 commits)
        at_hdmac: Rework suspend_late()/resume_early()
        PM: Reset transition_started at dpm_resume_noirq
        PM: Update kerneldoc comments in drivers/base/power/main.c
        PM: Add convenience macro to make switching to dev_pm_ops less error-prone
        hp-wmi: Switch driver to dev_pm_ops
        floppy: Switch driver to dev_pm_ops
        PM: Trivial fixes
        PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()
        PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)
        PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)
        PM/Hibernate: Rework shrinking of memory
        PM: Fix typo in label name s/Platofrm_finish/Platform_finish/
        PM: Run-time PM platform device bus support
        PM: Introduce core framework for run-time PM of I/O devices (rev. 17)
        Driver Core: Make PM operations a const pointer
        PM: Remove platform device suspend_late()/resume_early() V2
        USB: Rework musb suspend()/resume_early()
        I2C: Rework i2c-s3c2410 suspend_late()/resume() V2
        I2C: Rework i2c-pxa suspend_late()/resume_early()
        DMA: Rework txx9dmac suspend_late()/resume_early()
        ...
      
      Fix trivial conflict in drivers/base/platform.c (due to same
      constification patch being merged in both sides, along with some other
      PM work in the PM branch)
      f86054c2
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig · c91d7d54
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig:
        kconfig: add missing dependency of conf to localyesconfig
        kconfig: test if a .config already exists
        kconfig: make local .config default for streamline_config
        kconfig: test for /boot/config-uname after /proc/config.gz in localconfig
        kconfig: unset IKCONFIG_PROC and clean up nesting
        kconfig: search for a config to base the local(mod|yes)config on
        kconfig: keep config.gz around even if CONFIG_IKCONFIG_PROC is not set
        kconfig: have extract-ikconfig read ELF files
        kconfig: add check if end exists in extract-ikconfig
        kconfig: enable CONFIG_IKCONFIG from streamline_config.pl
        kconfig: do not warn about modules built in
        kconfig: streamline_config.pl do not stop with no depends
        kconfig: add make localyesconfig option
        kconfig: make localmodconfig to run streamline_config.pl
        kconfig: add streamline_config.pl to scripts
      c91d7d54
    • E
      SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX · 8a478905
      Eric Paris 提交于
      Without this patch building a kernel emits millions of warning like:
      
      include/linux/selinux.h:92: warning: ?selinux_is_enabled? defined but not used
      
      When it is build without CONFIG_SECURITY_SELINUX.  This is harmless, but
      the function should be inlined, so it gets compiled out.
      Reported-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NEric Paris <eparis@redhat.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      8a478905
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 133309a8
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (52 commits)
        Input: bcm5974 - silence uninitialized variables warnings
        Input: wistron_btns - add keymap for AOpen 1557
        Input: psmouse - use boolean type
        Input: i8042 - use platform_driver_probe
        Input: i8042 - use boolean type where it makes sense
        Input: i8042 - try disabling and re-enabling AUX port at close
        Input: pxa27x_keypad - allow modifying keymap from userspace
        Input: sunkbd - fix formatting
        Input: i8042 - bypass AUX IRQ delivery test on laptops
        Input: wacom_w8001 - simplify querying logic
        Input: atkbd - allow setting force-release bitmap via sysfs
        Input: w90p910_keypad - move a dereference below a NULL test
        Input: add twl4030_keypad driver
        Input: matrix-keypad - add function to build device keymap
        Input: tosakbd - fix cleaning up KEY_STROBEs after error
        Input: joydev - validate axis/button maps before clobbering current ones
        Input: xpad - add USB ID for the drumkit controller from Rock Band
        Input: w90p910_keypad - rename driver name to match platform
        Input: add new driver for Sentelic Finger Sensing Pad
        Input: psmouse - allow defining read-only attributes
        ...
      133309a8
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 5489375d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: completely remove apple mightymouse from blacklist
        HID: support larger reports than 64 bytes in hiddev
        HID: local function should be static
        HID: ignore Philips IEEE802.15.4 RF Dongle
        HID: ignore all recent SoundGraph iMON devices
        HID: fix memory leak on error patch in debug code
        HID: fix overrun in quirks initialization
        HID: Drop NULL test on list_entry result
        HID: driver for Twinhan USB 6253:0100 remote control
        HID: adding __init/__exit macros to module init/exit functions
        HID: add rumble support for Thrustmaster Dual Trigger 3-in-1
        HID: ntrig tool separation and pen usages
        HID: Avoid double spin_lock_init on usbhid->lock
        HID: add force feedback support for Logitech WingMan Formula Force GP
        HID: Support new variants of Samsung USB IR receiver (0419:0001)
        HID: fix memory leak on error path in debug code
        HID: fix debugfs build with !CONFIG_DEBUG_FS
        HID: use debugfs for events/reports dumping
        HID: use debugfs for report dumping descriptor
      5489375d
    • L
      Merge branch 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block · 355bbd8c
      Linus Torvalds 提交于
      * 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block: (29 commits)
        block: use blkdev_issue_discard in blk_ioctl_discard
        Make DISCARD_BARRIER and DISCARD_NOBARRIER writes instead of reads
        block: don't assume device has a request list backing in nr_requests store
        block: Optimal I/O limit wrapper
        cfq: choose a new next_req when a request is dispatched
        Seperate read and write statistics of in_flight requests
        aoe: end barrier bios with EOPNOTSUPP
        block: trace bio queueing trial only when it occurs
        block: enable rq CPU completion affinity by default
        cfq: fix the log message after dispatched a request
        block: use printk_once
        cciss: memory leak in cciss_init_one()
        splice: update mtime and atime on files
        block: make blk_iopoll_prep_sched() follow normal 0/1 return convention
        cfq-iosched: get rid of must_alloc flag
        block: use interrupts disabled version of raise_softirq_irqoff()
        block: fix comment in blk-iopoll.c
        block: adjust default budget for blk-iopoll
        block: fix long lines in block/blk-iopoll.c
        block: add blk-iopoll, a NAPI like approach for block devices
        ...
      355bbd8c
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 · 39695224
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (209 commits)
        [SCSI] fix oops during scsi scanning
        [SCSI] libsrp: fix memory leak in srp_ring_free()
        [SCSI] libiscsi, bnx2i: make bound ep check common
        [SCSI] libiscsi: add completion function for drivers that do not need pdu processing
        [SCSI] scsi_dh_rdac: changes for rdac debug logging
        [SCSI] scsi_dh_rdac: changes to collect the rdac debug information during the initialization
        [SCSI] scsi_dh_rdac: move the init code from rdac_activate to rdac_bus_attach
        [SCSI] sg: fix oops in the error path in sg_build_indirect()
        [SCSI] mptsas : Bump version to 3.04.12
        [SCSI] mptsas : FW event thread and scsi mid layer deadlock in SYNCHRONIZE CACHE command
        [SCSI] mptsas : Send DID_NO_CONNECT for pending IOs of removed device
        [SCSI] mptsas : PAE Kernel more than 4 GB kernel panic
        [SCSI] mptsas : NULL pointer on big endian systems causing Expander not to tear off
        [SCSI] mptsas : Sanity check for phyinfo is added
        [SCSI] scsi_dh_rdac: Add support for Sun StorageTek ST2500, ST2510 and ST2530
        [SCSI] pmcraid: PMC-Sierra MaxRAID driver to support 6Gb/s SAS RAID controller
        [SCSI] qla2xxx: Update version number to 8.03.01-k6.
        [SCSI] qla2xxx: Properly delete rports attached to a vport.
        [SCSI] qla2xxx: Correct various NPIV issues.
        [SCSI] qla2xxx: Correct qla2x00_eh_wait_on_command() to wait correctly.
        ...
      39695224
    • L
      Merge branch 'docs-next' of git://git.lwn.net/linux-2.6 · a9bbd210
      Linus Torvalds 提交于
      * 'docs-next' of git://git.lwn.net/linux-2.6:
        Document the flex_array library.
        Doc: seq_file.txt fix wrong dd command example.
      a9bbd210
    • L
      Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm · 2ca7d674
      Linus Torvalds 提交于
      * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (257 commits)
        [ARM] Update mach-types
        ARM: 5636/1: Move vendor enum to AMBA include
        ARM: Fix pfn_valid() for sparse memory
        [ARM] orion5x: Add LaCie NAS 2Big Network support
        [ARM] pxa/sharpsl_pm: zaurus c3000 aka spitz: fix resume
        ARM: 5686/1: at91: Correct AC97 reset line in at91sam9263ek board
        ARM: 5640/1: This patch modifies the support of AC97 on the at91sam9263 ek board
        ARM: 5689/1: Update default config of HP Jornada 700-series machines
        ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() with highmem
        ARM: 5688/1: ks8695_serial: disable_irq() lockup
        ARM: 5687/1: fix an oops with highmem
        ARM: 5684/1: Add nuc960 platform to w90x900
        ARM: 5683/1: Add nuc950 platform to w90x900
        ARM: 5682/1: Add cpu.c and dev.c and modify some files of w90p910 platform
        ARM: 5626/1: add suspend/resume functions to amba-pl011 serial driver
        ARM: 5625/1: fix hard coded 4K resource size in amba bus detection
        MMC: MMCI: convert realview MMC to use gpiolib
        ARM: 5685/1: Make MMCI driver compile without gpiolib
        ARM: implement highpte
        ARM: Show FIQ in /proc/interrupts on CONFIG_FIQ
        ...
      
      Fix up trivial conflict in arch/arm/kernel/signal.c.
      
      It was due to the TIF_NOTIFY_RESUME addition in commit d0420c83 ("KEYS:
      Extend TIF_NOTIFY_RESUME to (almost) all architectures") and follow-ups.
      2ca7d674
    • H
      fix undefined reference to user_shm_unlock · 2195d281
      Hugh Dickins 提交于
      My 353d5c30 "mm: fix hugetlb bug due to
      user_shm_unlock call" broke the CONFIG_SYSVIPC !CONFIG_MMU build of both
      2.6.31 and 2.6.30.6: "undefined reference to `user_shm_unlock'".
      
      gcc didn't understand my comment! so couldn't figure out to optimize
      away user_shm_unlock() from the error path in the hugetlb-less case, as
      it does elsewhere.  Help it to do so, in a language it understands.
      Reported-by: NMike Frysinger <vapier@gentoo.org>
      Signed-off-by: NHugh Dickins <hugh.dickins@tiscali.co.uk>
      Cc: stable@kernel.org
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2195d281
    • L
      Merge branch 'kvm-updates/2.6.32' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 69def9f0
      Linus Torvalds 提交于
      * 'kvm-updates/2.6.32' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (202 commits)
        MAINTAINERS: update KVM entry
        KVM: correct error-handling code
        KVM: fix compile warnings on s390
        KVM: VMX: Check cpl before emulating debug register access
        KVM: fix misreporting of coalesced interrupts by kvm tracer
        KVM: x86: drop duplicate kvm_flush_remote_tlb calls
        KVM: VMX: call vmx_load_host_state() only if msr is cached
        KVM: VMX: Conditionally reload debug register 6
        KVM: Use thread debug register storage instead of kvm specific data
        KVM guest: do not batch pte updates from interrupt context
        KVM: Fix coalesced interrupt reporting in IOAPIC
        KVM guest: fix bogus wallclock physical address calculation
        KVM: VMX: Fix cr8 exiting control clobbering by EPT
        KVM: Optimize kvm_mmu_unprotect_page_virt() for tdp
        KVM: Document KVM_CAP_IRQCHIP
        KVM: Protect update_cr8_intercept() when running without an apic
        KVM: VMX: Fix EPT with WP bit change during paging
        KVM: Use kvm_{read,write}_guest_virt() to read and write segment descriptors
        KVM: x86 emulator: Add adc and sbb missing decoder flags
        KVM: Add missing #include
        ...
      69def9f0
    • A
      cleanup console_print() · 353f6dd2
      Anirban Sinha 提交于
      console_print() is an old legacy interface mostly unused in the entire
      kernel tree. It's best to clean up its existing use and let developers
      use their own implementation of it as they feel fit.
      Signed-off-by: NAnirban Sinha <asinha@zeugmasystems.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      353f6dd2
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 · bb193c98
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:
        slub: fix slab_pad_check()
        slub: release kobject if sysfs_create_group failed in sysfs_slab_add
        SLUB: fix ARCH_KMALLOC_MINALIGN cases 64 and 256
        SLUB: Fix some coding style issues
        SLUB: Drop write permission to /proc/slabinfo
        slab: remove duplicate kmem_cache_init_late() declarations
        slub: change kmem_cache->align to record the real alignment
        slub: use size and objsize orders to disable debug flags
        slub: add option to disable higher order debugging slabs
      bb193c98
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · f65ac45e
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        x86, mce: do not compile mcelog message on AMD
        EDAC, AMD: decode FR MCEs
        EDAC, AMD: decode load store MCEs
        EDAC, AMD: decode bus unit MCEs
        EDAC, AMD: decode instruction cache MCEs
        EDAC, AMD: decode data cache MCEs
        EDAC, AMD: carve out decoding of MCi_STATUS ErrorCode
        EDAC, AMD: carve out MCi_STATUS decoding
        x86, mce: pass mce info to EDAC for decoding
        amd64_edac: cleanup amd64_decode_bus_error
        amd64_edac: remove memory and GART TLB error decoders
        amd64_edac: cleanup/complete NB MCE decoding
        amd64_edac: cleanup amd64_process_error_info
        EDAC: beef up ErrorCodeExt error signatures
        EDAC: move MCE error descriptions to EDAC core
      f65ac45e
    • D
      KEYS: Fix garbage collector · c08ef808
      David Howells 提交于
      Fix a number of problems with the new key garbage collector:
      
       (1) A rogue semicolon in keyring_gc() was causing the initial count of dead
           keys to be miscalculated.
      
       (2) A missing return in keyring_gc() meant that under certain circumstances,
           the keyring semaphore would be unlocked twice.
      
       (3) The key serial tree iterator (key_garbage_collector()) part of the garbage
           collector has been modified to:
      
           (a) Complete each scan of the keyrings before setting the new timer.
      
           (b) Only set the new timer for keys that have yet to expire.  This means
               that the new timer is now calculated correctly, and the gc doesn't
               get into a loop continually scanning for keys that have expired, and
               preventing other things from happening, like RCU cleaning up the old
               keyring contents.
      
           (c) Perform an extra scan if any keys were garbage collected in this one
           	 as a key might become garbage during a scan, and (b) could mean we
           	 don't set the timer again.
      
       (4) Made key_schedule_gc() take the time at which to do a collection run,
           rather than the time at which the key expires.  This means the collection
           of dead keys (key type unregistered) can happen immediately.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      c08ef808
    • M
      KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent · 5c84342a
      Marc Dionne 提交于
      When we exit early from keyctl_session_to_parent because of permissions or
      because the session keyring is the same as the parent, we need to unlock the
      tasklist.
      
      The missing unlock causes the system to hang completely when using
      keyctl(KEYCTL_SESSION_TO_PARENT) with a keyring shared with the parent.
      Signed-off-by: NMarc Dionne <marc.c.dionne@gmail.com>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      5c84342a
    • D
      CRED: Allow put_cred() to cope with a NULL groups list · 4a5d6ba1
      David Howells 提交于
      put_cred() will oops if given a NULL groups list, but that is now possible with
      the existence of cred_alloc_blank(), as used in keyctl_session_to_parent().
      
      Added in commit:
      
      	commit ee18d64c
      	Author: David Howells <dhowells@redhat.com>
      	Date:   Wed Sep 2 09:14:21 2009 +0100
      	KEYS: Add a keyctl to install a process's session keyring on its parent [try #6]
      Reported-by: NMarc Dionne <marc.c.dionne@gmail.com>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      4a5d6ba1
    • L
      Merge branch 'osync_cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6 · 4142e0d1
      Linus Torvalds 提交于
      * 'osync_cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:
        fsync: wait for data writeout completion before calling ->fsync
        vfs: Remove generic_osync_inode() and sync_page_range{_nolock}()
        fat: Opencode sync_page_range_nolock()
        pohmelfs: Use new syncing helper
        xfs: Convert sync_page_range() to simple filemap_write_and_wait_range()
        ocfs2: Update syncing after splicing to match generic version
        ntfs: Use new syncing helpers and update comments
        ext4: Remove syncing logic from ext4_file_write
        ext3: Remove syncing logic from ext3_file_write
        ext2: Update comment about generic_osync_inode
        vfs: Introduce new helpers for syncing after writing to O_SYNC file or IS_SYNC inode
        vfs: Rename generic_file_aio_write_nolock
        ocfs2: Use __generic_file_aio_write instead of generic_file_aio_write_nolock
        pohmelfs: Use __generic_file_aio_write instead of generic_file_aio_write_nolock
        vfs: Remove syncing from generic_file_direct_write() and generic_file_buffered_write()
        vfs: Export __generic_file_aio_write() and add some comments
        vfs: Introduce filemap_fdatawait_range
      4142e0d1
    • L
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw · 33f1de69
      Linus Torvalds 提交于
      * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw:
        GFS2: Whitespace fixes
        GFS2: Remove unused sysfs file
        GFS2: Be extra careful about deallocating inodes
        GFS2: Remove no_formal_ino generating code
        GFS2: Rename eattr.[ch] as xattr.[ch]
        GFS2: Clean up of extended attribute support
        GFS2: Add explanation of extended attr on-disk format
        GFS2: Add "-o errors=panic|withdraw" mount options
        GFS2: jumping to wrong label?
        GFS2: free disk inode which is deleted by remote node -V2
        GFS2: Add a document explaining GFS2's uevents
        GFS2: Add sysfs link to device
        GFS2: Replace assertion with proper error handling
        GFS2: Improve error handling in inode allocation
        GFS2: Add some more info to uevents
        GFS2: Add online uevent to GFS2
      33f1de69
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6 · 041d6d0b
      Linus Torvalds 提交于
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:
        udf: Fix possible corruption when close races with write
        udf: Perform preallocation only for regular files
        udf: Remove wrong assignment in udf_symlink
        udf: Remove dead code
      041d6d0b
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2 · af8cb8aa
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (21 commits)
        fs/Kconfig: move nilfs2 outside misc filesystems
        nilfs2: convert nilfs_bmap_lookup to an inline function
        nilfs2: allow btree code to directly call dat operations
        nilfs2: add update functions of virtual block address to dat
        nilfs2: remove individual gfp constants for each metadata file
        nilfs2: stop zero-fill of btree path just before free it
        nilfs2: remove unused btree argument from btree functions
        nilfs2: remove nilfs_dat_abort_start and nilfs_dat_abort_free
        nilfs2: shorten freeze period due to GC in write operation v3
        nilfs2: add more check routines in mount process
        nilfs2: An unassigned variable is assigned to a never used structure member
        nilfs2: use GFP_NOIO for bio_alloc instead of GFP_NOWAIT
        nilfs2: stop using periodic write_super callback
        nilfs2: clean up nilfs_write_super
        nilfs2: fix disorder of nilfs_write_super in nilfs_sync_fs
        nilfs2: remove redundant super block commit
        nilfs2: implement nilfs_show_options to display mount options in /proc/mounts
        nilfs2: always lookup disk block address before reading metadata block
        nilfs2: use semaphore to protect pointer to a writable FS-instance
        nilfs2: fix format string compile warning (ino_t)
        ...
      af8cb8aa
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 · 6cdb5930
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
        cifs: consolidate reconnect logic in smb_init routines
        cifs: Replace wrtPending with a real reference count
        cifs: protect GlobalOplock_Q with its own spinlock
        cifs: use tcon pointer in cifs_show_options
        cifs: send IPv6 addr in upcall with colon delimiters
        [CIFS] Fix checkpatch warnings
        PATCH] cifs: fix broken mounts when a SSH tunnel is used (try #4)
        [CIFS] Memory leak in ntlmv2 hash calculation
        [CIFS] potential NULL dereference in parse_DFS_referrals()
      6cdb5930
    • D
      at_hdmac: Rework suspend_late()/resume_early() · 33f82d14
      Dan Williams 提交于
      This patch reworks platform driver power management code
      for at_hdmac from legacy late/early callbacks to dev_pm_ops.
      
      The callbacks are converted for CONFIG_SUSPEND like this:
        suspend_late() -> suspend_noirq()
        resume_early() -> resume_noirq()
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      33f82d14
    • X
      PM: Reset transition_started at dpm_resume_noirq · 3eb132c9
      Xiaotian Feng 提交于
      transition_started should be set once the preparation of devices for
      a PM has started, reset before starting to resume devices. When
      resuming devices, kernel calls dpm_resume_noirq then
      dpm_resume_end(dpm_resume).  Thus we should reset transition_started
      at dpm_resume_noirq.
      
      This patch fixes ACPI warning when resuming from suspend/hibernate:
      
      ACPI: \_SB_.PCI0.IDE1.PRI1.MAS1 - docking
      ------------[ cut here ]------------
      WARNING: at drivers/base/power/main.c:87 device_pm_add+0x8b/0xcc()
      Hardware name: OptiPlex 760
      Device: acpi
      Parentless device registered during a PM transaction
      
      [rjw: Fixed up the changelog.]
      Signed-off-by: NXiaotian Feng <dfeng@redhat.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      3eb132c9
    • R
      PM: Update kerneldoc comments in drivers/base/power/main.c · 20d652d7
      Rafael J. Wysocki 提交于
      The kerneldoc comments in drivers/base/power/main.c are generally
      outdated and some of them don't describe the functions very
      accurately.  Update them and standardize the format to use spaces
      instead of tabs.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Acked-by: NAlan Stern <stern@rowland.harvard.edu>
      20d652d7
    • A
      PM: Add convenience macro to make switching to dev_pm_ops less error-prone · 9d62ec6c
      Albin Tonnerre 提交于
      In a number of cases, the .suspend, .freeze, .poweroff and .resume,
      .thaw, .restore functions are identical. However, they all need to be
      assigned to avoid regressionsm as the previous code called .suspend
      resp. .resume in all those cases. SIMPLE_DEV_PM_OPS helps to deal
      with this case.
      
      [rjw: Changed the name of the macro and added the comment explaining its
       purpose.]
      Signed-off-by: NAlbin Tonnerre <albin.tonnerre@free-electrons.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      9d62ec6c
    • F
      hp-wmi: Switch driver to dev_pm_ops · 8dd2b426
      Frans Pop 提交于
      Gets rid of the following warning:
      
      Platform driver 'hp-wmi' needs updating - please use dev_pm_ops
      
      I tested that the resume handler still works on my HP 2510p notebook.
      
      [rjw: Fixed up the definition of hp_wmi_pm_ops.]
      Signed-off-by: NFrans Pop <elendil@planet.nl>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      8dd2b426
    • F
      floppy: Switch driver to dev_pm_ops · c90cd332
      Frans Pop 提交于
      Gets rid of the following warning:
      Platform driver 'floppy' needs updating - please use dev_pm_ops
      
      [rjw: Fixed up the definition of floppy_pm_ops.]
      Signed-off-by: NFrans Pop <elendil@planet.nl>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      c90cd332
    • W
      PM: Trivial fixes · 8de03073
      Wu Fengguang 提交于
      Fix the definition of BM_BITS_PER_BLOCK and kerneldoc
      description of create_bm_block_list().
      
      [rjw: Added changelog.]
      Signed-off-by: NWu Fengguang <fengguang.wu@intel.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      8de03073
    • G
      PM / Hibernate / Memory hotplug: Always use for_each_populated_zone() · 98e73dc5
      Gerald Schaefer 提交于
      Use for_each_populated_zone() instead of for_each_zone() in hibernation
      code. This fixes a bug on s390, where we allow both config options
      HIBERNATION and MEMORY_HOTPLUG, so that we also have a ZONE_MOVABLE
      here. We only allow hibernation if no memory hotplug operation was
      performed, so in fact both features can only be used exclusively, but
      this way we don't need 2 differently configured (distribution) kernels.
      
      If we have an unpopulated ZONE_MOVABLE, we allow hibernation but run
      into a BUG_ON() in memory_bm_test/set/clear_bit() because hibernation
      code iterates through all zones, not only the populated zones, in
      several places. For example, swsusp_free() does for_each_zone() and
      then checks for pfn_valid(), which is true even if the zone is not
      populated, resulting in a BUG_ON() later because the pfn cannot be
      found in the memory bitmap.
      
      Replacing all occurences of for_each_zone() in hibernation code with
      for_each_populated_zone() would fix this issue.
      
      [rjw: Rebased on top of linux-next hibernation patches.]
      Signed-off-by: NGerald Schaefer <gerald.schaefer@de.ibm.com>
      Acked-by: NKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      98e73dc5
    • R
      PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2) · ef4aede3
      Rafael J. Wysocki 提交于
      We want to avoid attempting to free too much memory too hard during
      hibernation, so estimate the minimum size of the image to use as the
      lower limit for preallocating memory.
      
      The approach here is based on the (experimental) observation that we
      can't free more page frames than the sum of:
      
      * global_page_state(NR_SLAB_RECLAIMABLE)
      * global_page_state(NR_ACTIVE_ANON)
      * global_page_state(NR_INACTIVE_ANON)
      * global_page_state(NR_ACTIVE_FILE)
      * global_page_state(NR_INACTIVE_FILE)
      
      minus
      
      * global_page_state(NR_FILE_MAPPED)
      
      Namely, if this number is subtracted from the number of saveable
      pages in the system, we get a good estimate of the minimum reasonable
      size of a hibernation image.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NWu Fengguang <fengguang.wu@intel.com>
      ef4aede3
    • R
      PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2) · 64a473cb
      Rafael J. Wysocki 提交于
      Since the hibernation code is now going to use allocations of memory
      to make enough room for the image, it can also use the page frames
      allocated at this stage as image page frames.  The low-level
      hibernation code needs to be rearranged for this purpose, but it
      allows us to avoid freeing a great number of pages and allocating
      these same pages once again later, so it generally is worth doing.
      
      [rev. 2: Take highmem into account correctly.]
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      64a473cb
    • R
      PM/Hibernate: Rework shrinking of memory · 4bb33435
      Rafael J. Wysocki 提交于
      Rework swsusp_shrink_memory() so that it calls shrink_all_memory()
      just once to make some room for the image and then allocates memory
      to apply more pressure to the memory management subsystem, if
      necessary.
      
      Unfortunately, we don't seem to be able to drop shrink_all_memory()
      entirely just yet, because that would lead to huge performance
      regressions in some test cases.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NPavel Machek <pavel@ucw.cz>
      4bb33435
    • T
      PM: Fix typo in label name s/Platofrm_finish/Platform_finish/ · e681c9dd
      Thadeu Lima de Souza Cascardo 提交于
      Although the same label name is used somewhere else in the file, this
      particular label was consistently typoed in all of its uses.
      Signed-off-by: NThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      e681c9dd
    • R
      Merge branch 'master' into for-linus · ac8d513a
      Rafael J. Wysocki 提交于
      ac8d513a
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6 · 99bc4706
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (21 commits)
        sparc64: Initial niagara2 perf counter support.
        sparc64: Perf counter 'nop' event is not constant.
        sparc64: Provide a way to specify a perf counter overflow IRQ enable bit.
        sparc64: Provide hypervisor tracing bit support for perf counters.
        sparc64: Initial hw perf counter support.
        sparc64: Implement a real set_perf_counter_pending().
        sparc64: Use nmi_enter() and nmi_exit(), as needed.
        sparc64: Provide extern decls for sparc_??u_type strings.
        sparc64: Make touch_nmi_watchdog() actually work.
        sparc64: Kill unnecessary cast in profile_timer_exceptions_notify().
        sparc64: Manage NMI watchdog enabling like x86.
        sparc: add basic support for 'perf'
        sparc: convert /proc/io_map, /proc/dvma_map to seq_file
        sparc, leon: sparc-leon specific SRMMU initialization and bootup fixes.
        sparc,leon: Added support for AMBAPP bus.
        sparc,leon: Introduce the sparc-leon CPU type.
        sparc,leon: Redefine MMU register access asi if CONFIG_LEON
        sparc,leon: CONFIG_SPARC_LEON option and leon specific files.
        sparc64: cheaper asm/uaccess.h inclusion
        SPARC: fix duplicate declaration
        ...
      99bc4706
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 · d7e9660a
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1623 commits)
        netxen: update copyright
        netxen: fix tx timeout recovery
        netxen: fix file firmware leak
        netxen: improve pci memory access
        netxen: change firmware write size
        tg3: Fix return ring size breakage
        netxen: build fix for INET=n
        cdc-phonet: autoconfigure Phonet address
        Phonet: back-end for autoconfigured addresses
        Phonet: fix netlink address dump error handling
        ipv6: Add IFA_F_DADFAILED flag
        net: Add DEVTYPE support for Ethernet based devices
        mv643xx_eth.c: remove unused txq_set_wrr()
        ucc_geth: Fix hangs after switching from full to half duplex
        ucc_geth: Rearrange some code to avoid forward declarations
        phy/marvell: Make non-aneg speed/duplex forcing work for 88E1111 PHYs
        drivers/net/phy: introduce missing kfree
        drivers/net/wan: introduce missing kfree
        net: force bridge module(s) to be GPL
        Subject: [PATCH] appletalk: Fix skb leak when ipddp interface is not loaded
        ...
      
      Fixed up trivial conflicts:
      
       - arch/x86/include/asm/socket.h
      
         converted to <asm-generic/socket.h> in the x86 tree.  The generic
         header has the same new #define's, so that works out fine.
      
       - drivers/net/tun.c
      
         fix conflict between 89f56d1e ("tun: reuse struct sock fields") that
         switched over to using 'tun->socket.sk' instead of the redundantly
         available (and thus removed) 'tun->sk', and 2b980dbd ("lsm: Add hooks
         to the TUN driver") which added a new 'tun->sk' use.
      
         Noted in 'next' by Stephen Rothwell.
      d7e9660a
    • L
      Merge branch 'x86-xen-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip · b8cb48aa
      Linus Torvalds 提交于
      * 'x86-xen-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        x86: split __phys_addr out into separate file
        xen: use stronger barrier after unlocking lock
        xen: only enable interrupts while actually blocking for spinlock
        xen: make -fstack-protector work under Xen
      b8cb48aa