Permalink
Switch branches/tags
Commits on Sep 15, 2009
  1. Merge branch 'for-linus3' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/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
    torvalds committed Sep 15, 2009
  2. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/rafael/suspend-2.6
    
    * '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)
    torvalds committed Sep 15, 2009
  3. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/rostedt/linux-2.6-kconfig
    
    * '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
    torvalds committed Sep 15, 2009
  4. SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX

    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: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Eric Paris <eparis@redhat.com>
    Signed-off-by: James Morris <jmorris@namei.org>
    eparis committed with James Morris Sep 15, 2009
  5. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    * '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
      ...
    torvalds committed Sep 15, 2009
  6. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jikos/hid
    
    * '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
    torvalds committed Sep 15, 2009
  7. Merge branch 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block

    * '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
      ...
    torvalds committed Sep 15, 2009
  8. Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6

    * 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.
      ...
    torvalds committed Sep 15, 2009
  9. Merge branch 'docs-next' of git://git.lwn.net/linux-2.6

    * 'docs-next' of git://git.lwn.net/linux-2.6:
      Document the flex_array library.
      Doc: seq_file.txt fix wrong dd command example.
    torvalds committed Sep 15, 2009
  10. Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm

    * '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 d0420c8 ("KEYS:
    Extend TIF_NOTIFY_RESUME to (almost) all architectures") and follow-ups.
    torvalds committed Sep 15, 2009
  11. fix undefined reference to user_shm_unlock

    My 353d5c3 "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: Mike Frysinger <vapier@gentoo.org>
    Signed-off-by: Hugh Dickins <hugh.dickins@tiscali.co.uk>
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Hugh Dickins committed with torvalds Sep 12, 2009
  12. Merge branch 'kvm-updates/2.6.32' of git://git.kernel.org/pub/scm/vir…

    …t/kvm/kvm
    
    * '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
      ...
    torvalds committed Sep 15, 2009
  13. cleanup console_print()

    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: Anirban Sinha <asinha@zeugmasystems.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Anirban Sinha committed with torvalds Sep 14, 2009
  14. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/penberg/slab-2.6
    
    * '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
    torvalds committed Sep 15, 2009
  15. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/bp/bp
    
    * '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
    torvalds committed Sep 15, 2009
Commits on Sep 14, 2009
  1. KEYS: Fix garbage collector

    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: David Howells <dhowells@redhat.com>
    Signed-off-by: James Morris <jmorris@namei.org>
    dhowells committed with James Morris Sep 14, 2009
  2. KEYS: Unlock tasklist when exiting early from keyctl_session_to_parent

    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: Marc Dionne <marc.c.dionne@gmail.com>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: James Morris <jmorris@namei.org>
    mdionne committed with James Morris Sep 14, 2009
  3. CRED: Allow put_cred() to cope with a NULL groups list

    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 ee18d64
    	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: Marc Dionne <marc.c.dionne@gmail.com>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: James Morris <jmorris@namei.org>
    dhowells committed with James Morris Sep 14, 2009
  4. Merge branch 'osync_cleanup' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/jack/linux-fs-2.6
    
    * '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
    torvalds committed Sep 14, 2009
  5. Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/steve/gfs2-2.6-nmw
    
    * '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
    torvalds committed Sep 14, 2009
  6. Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jack/linux-udf-2.6
    
    * '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
    torvalds committed Sep 14, 2009
  7. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/ryusuke/nilfs2
    
    * '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)
      ...
    torvalds committed Sep 14, 2009
  8. Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6

    * 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()
    torvalds committed Sep 14, 2009
  9. at_hdmac: Rework suspend_late()/resume_early()

    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: Dan Williams <dan.j.williams@intel.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    djbw committed with rjwysocki Sep 9, 2009
  10. PM: Reset transition_started at dpm_resume_noirq

    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: Xiaotian Feng <dfeng@redhat.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Xiaotian Feng committed with rjwysocki Aug 20, 2009
  11. PM: Update kerneldoc comments in drivers/base/power/main.c

    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: Rafael J. Wysocki <rjw@sisk.pl>
    Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
    Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
    Acked-by: Alan Stern <stern@rowland.harvard.edu>
    rjwysocki committed Aug 20, 2009
  12. PM: Add convenience macro to make switching to dev_pm_ops less error-…

    …prone
    
    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: Albin Tonnerre <albin.tonnerre@free-electrons.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Albin Tonnerre committed with rjwysocki Aug 5, 2009
  13. hp-wmi: Switch driver to dev_pm_ops

    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: Frans Pop <elendil@planet.nl>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Frans Pop committed with rjwysocki Aug 20, 2009
  14. floppy: Switch driver to dev_pm_ops

    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: Frans Pop <elendil@planet.nl>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Frans Pop committed with rjwysocki Jul 25, 2009
  15. PM: Trivial fixes

    Fix the definition of BM_BITS_PER_BLOCK and kerneldoc
    description of create_bm_block_list().
    
    [rjw: Added changelog.]
    
    Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    fengguang committed with rjwysocki Jul 22, 2009
  16. PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()

    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: Gerald Schaefer <gerald.schaefer@de.ibm.com>
    Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Gerald Schaefer committed with rjwysocki Jul 21, 2009
  17. PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)

    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: Rafael J. Wysocki <rjw@sisk.pl>
    Acked-by: Wu Fengguang <fengguang.wu@intel.com>
    rjwysocki committed Jul 8, 2009
  18. PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)

    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: Rafael J. Wysocki <rjw@sisk.pl>
    rjwysocki committed Jul 8, 2009
  19. PM/Hibernate: Rework shrinking of memory

    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: Rafael J. Wysocki <rjw@sisk.pl>
    Acked-by: Pavel Machek <pavel@ucw.cz>
    rjwysocki committed Jul 8, 2009
  20. PM: Fix typo in label name s/Platofrm_finish/Platform_finish/

    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: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Thadeu Lima de Souza Cascardo committed with rjwysocki Jul 8, 2009