1. 20 Apr, 2009 4 commits
    • Thomas Renninger's avatar
      acpi-cpufreq: Do not let get_measured perf depend on internal variable · d876dfbb
      Thomas Renninger authored
      Take already available policy->cpuinfo.max_freq and get rid of acpi-cpufreq
      specific max_freq variable.
      
      This implies that P0 is always the highest frequency which should always
      be true as ACPI spec says:
      As a result, the zeroth entry describes the highest performance state
      Signed-off-by: default avatarThomas Renninger <trenn@suse.de>
      Acked-by: default avatarVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      d876dfbb
    • Thomas Renninger's avatar
    • Thomas Renninger's avatar
      acpi-cpufreq: Cleanup: Use printk_once · e0e8c4e5
      Thomas Renninger authored
      Signed-off-by: default avatarThomas Renninger <trenn@suse.de>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      e0e8c4e5
    • Pallipadi, Venkatesh's avatar
      x86, acpi_cpufreq: Fix the NULL pointer dereference in get_measured_perf · 093f13e2
      Pallipadi, Venkatesh authored
      Fix for a regression that was introduced by earlier commit
      18b2646f on Mon Apr 6 11:26:08 2009
      
      Regression resulted in the below error happened on systems with
      software coordination where per_cpu acpi data will not be initiated for
      secondary CPUs in a P-state domain.
      
      On Tue, 2009-04-14 at 23:01 -0700, Zhang, Yanmin wrote:
       My machine hanged with kernel 2.6.30-rc2 when script read
      > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor.
      >
      > opps happens in get_measured_perf:
      >
      >         cur.aperf.whole = readin.aperf.whole -
      >                                 per_cpu(drv_data, cpu)->saved_aperf;
      >
      > Because per_cpu(drv_data, cpu)=NULL.
      >
      > So function get_measured_perf should check if (per_cpu(drv_data,
      > cpu)==NULL)
      > and return 0 if it's NULL.
      
      --------------sys log------------------
      
      BUG: unable to handle kernel NULL pointer dereference at
      0000000000000020
      IP: [<ffffffff8021af75>] get_measured_perf+0x4a/0xf9
      PGD a7dd88067 PUD a7ccf5067 PMD 0
      Oops: 0000 [#1] SMP
      last sysfs file: /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
      CPU 0
      Modules linked in: video output
      Pid: 2091, comm: kondemand/0 Not tainted 2.6.30-rc2 #1 MP Server
      RIP: 0010:[<ffffffff8021af75>]  [<ffffffff8021af75>]
      get_measured_perf+0x4a/0xf9
      RSP: 0018:ffff880a7d56de20  EFLAGS: 00010246
      RAX: 0000000000000000 RBX: 00000046241a42b6 RCX: ffff88004d219000
      RDX: 000000000000b660 RSI: 0000000000000020 RDI: 0000000000000001
      RBP: ffff880a7f052000 R08: 00000046241a42b6 R09: ffffffff807639f0
      R10: 00000000ffffffea R11: ffffffff802207f4 R12: ffff880a7f052000
      R13: ffff88004d20e460 R14: 0000000000ddd5a6 R15: 0000000000000001
      FS:  0000000000000000(0000) GS:ffff88004d200000(0000)
      knlGS:0000000000000000
      CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
      CR2: 0000000000000020 CR3: 0000000a7f1bf000 CR4: 00000000000006e0
      DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      Process kondemand/0 (pid: 2091, threadinfo ffff880a7d56c000, task
      ffff880a7d4d18c0)
      Stack:
       ffff880a7f052078 ffffffff803efd54 00000046241a42b6 000000462ffa9e95
       0000000000000001 0000000000000001 00000000ffffffea ffffffff8064f41a
       0000000000000012 0000000000000012 ffff880a7f052000 ffffffff80650547
      Call Trace:
       [<ffffffff803efd54>] ? kobject_get+0x12/0x17
       [<ffffffff8064f41a>] ? __cpufreq_driver_getavg+0x42/0x57
       [<ffffffff80650547>] ? do_dbs_timer+0x147/0x272
       [<ffffffff80650400>] ? do_dbs_timer+0x0/0x272
       [<ffffffff802474ca>] ? worker_thread+0x15b/0x1f5
       [<ffffffff8024a02c>] ? autoremove_wake_function+0x0/0x2e
       [<ffffffff8024736f>] ? worker_thread+0x0/0x1f5
       [<ffffffff80249f0d>] ? kthread+0x54/0x83
       [<ffffffff8020c87a>] ? child_rip+0xa/0x20
       [<ffffffff80249eb9>] ? kthread+0x0/0x83
       [<ffffffff8020c870>] ? child_rip+0x0/0x20
      Code: 99 a6 03 00 31 c9 85 c0 0f 85 c3 00 00 00 89 df 4c 8b 44 24 10 48
      c7 c2 60 b6 00 00 48 8b 0c fd e0 30 a5 80 4c 89 c3 48 8b 04 0a <48> 2b
      58 20 48 8b 44 24 18 48 89 1c 24 48 8b 34 0a 48 2b 46 28
      RIP  [<ffffffff8021af75>] get_measured_perf+0x4a/0xf9
       RSP <ffff880a7d56de20>
      CR2: 0000000000000020
      ---[ end trace 2b8fac9a49e19ad4 ]---
      Tested-by: default avatar"Zhang, Yanmin" <yanmin_zhang@linux.intel.com>
      Signed-off-by: default avatarVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      093f13e2
  2. 19 Apr, 2009 19 commits
  3. 18 Apr, 2009 10 commits
  4. 17 Apr, 2009 7 commits
    • Linus Torvalds's avatar
      Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · aefe6475
      Linus Torvalds authored
      * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
        [libata] fix build error on drivers/ata/pata_legacy.c
        pata_via: Cache and rewrite the device bit
        sata_mv: workaround for multi_count errata sata24
        sata_mv: tidy up qc->tf usage in qc_prep() functions
      aefe6475
    • Zhenwen Xu's avatar
      [libata] fix build error on drivers/ata/pata_legacy.c · 16e6aeca
      Zhenwen Xu authored
      fix those errors:
      
      drivers/ata/pata_legacy.c: In function ‘pdc_data_xfer_vlb’:
      drivers/ata/pata_legacy.c:289: error: ‘ap’ undeclared (first use in this function)
      drivers/ata/pata_legacy.c:289: error: (Each undeclared identifier is reported only once
      drivers/ata/pata_legacy.c:289: error: for each function it appears in.)
      drivers/ata/pata_legacy.c: At top level:
      drivers/ata/pata_legacy.c:869: error: ‘ATA_PFLAG_PIO32_CHANGE’ undeclared here (not in a
      +function)
      make[2]: *** [drivers/ata/pata_legacy.o] Error 1
      make[1]: *** [drivers/ata] Error 2
      Signed-off-by: default avatarZhenwen Xu <helight.xu@gmail.com>
      Acked-by: default avatarAlan Cox <alan@linux.intel.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      16e6aeca
    • Alan Cox's avatar
      pata_via: Cache and rewrite the device bit · b4746ed7
      Alan Cox authored
      Some VIA chipsets will reset the DEV bit after IEN changes on ctl. Our
      optimised write path avoids doing this but we need to remove the
      optimisation on these devices.
      
      [Identified and some original patches proposed by Josehn Chan @ VIA but
      discussion then all ground to a halt so given a test case I dug it back out]
      
      Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk
      Tested-by: Christoph Bisping (bug #13086)
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      b4746ed7
    • Mark Lord's avatar
      sata_mv: workaround for multi_count errata sata24 · 299b3f8d
      Mark Lord authored
      Workaround for errata SATA#24 in sata_mv.
      This errata affects WRITE_MULTI* commands when
      the device multi_count produces a DRQ block size >= 4Kbytes.
      
      We work around it here by converting such operations
      into ordinary PIO_WRITEs instead.
      
      Note that this might result in a PIO FUA write unavoidably being converted
      into a non-FUA write.  In practice, any system using FUA is also going to be
      using DMA rather than PIO, so this shouldn't affect anyone in the real world.
      Signed-off-by: default avatarMark Lord <mlord@pobox.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      299b3f8d
    • Mark Lord's avatar
      sata_mv: tidy up qc->tf usage in qc_prep() functions · 8d2b450d
      Mark Lord authored
      Tidy up qc->tf accesses in the mv_qc_prep() functions.
      Signed-off-by: default avatarMark Lord <mlord@pobox.com>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      8d2b450d
    • Jeff Layton's avatar
      cifs: when renaming don't try to unlink negative dentry · fc6f3943
      Jeff Layton authored
      When attempting to rename a file on a read-only share, the kernel can
      call cifs_unlink on a negative dentry, which causes an oops. Only try
      to unlink the file if it's a positive dentry.
      Signed-off-by: default avatarJeff Layton <jlayton@redhat.com>
      Tested-by: default avatarShirish Pargaonkar <shirishp@us.ibm.com>
      CC: Stable <stable@vger.kernel.org>
      Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
      fc6f3943
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 · d022bafb
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (43 commits)
        staging: slicoss: update README
        otus/zdusb.c: additional USB idnetifier
        Staging: go7007: fix build issues
        Staging: sxg: Fix leaks and checksum errors in transmit code path
        Staging: sxg: Fix sleep in atomic context warning while loading driver
        Staging: sxg: Use correct queue_id for transmitting non-TCP packets
        Staging: sxg: Fire watchdog timer at end of open routine to change the link
        Staging: Pohmelfs: Add load balancing between network states with the same priority.
        Staging: Pohmelfs: Added IO permissions and priorities.
        Staging: Pohmelfs: Added ->show_stats() callback.
        Staging: Pohmelfs: Drop ftrans debugging code.
        Staging: Pohmelfs: Use wait_on_page_timeout when waiting for remote directory sync instead of hardcoded 25 seconds.
        Staging: Pohmelfs: Reduce debugging noise about non-existing objects.
        Staging: Pohmelfs: Sync fs before killing it, since dentry cache is shrunk before writeback is invoked via generic_shutdown_super()
        Staging: Pohmelfs: Extend remount option.
        Staging: Pohmelfs: Set NETFS_INODE_REMOTE_SYNCED and clear NETFS_INODE_OWNED bits in the root inode.
        Staging: Pohmelfs: Added 'need_lock' variable into debug print.
        Staging: Pohmelfs: Disable read lock in pohmelfs_getattr().
        Staging: Pohmelfs: Move parent lock to the place where we really have to send a lookup request to the server.
        Staging: pohmelfs: Populate dentry cache when receiving the new readdir entry.
        ...
      d022bafb