1. 20 Jan, 2006 3 commits
    • Bob Moore's avatar
      [ACPI] ACPICA 20060113 · 4a90c7e8
      Bob Moore authored
      Added 2006 copyright.
      
      At SuSE's suggestion, enabled all error messages
      without enabling function tracing, ie with CONFIG_ACPI_DEBUG=n
      
      Replaced all instances of the ACPI_DEBUG_PRINT macro invoked at
      the ACPI_DB_ERROR and ACPI_DB_WARN debug levels with
      the ACPI_REPORT_ERROR and ACPI_REPORT_WARNING macros,
      respectively. This preserves all error and warning messages
      in the non-debug version of the ACPICA code (this has been
      referred to as the "debug lite" option.) Over 200 cases
      were converted to create a total of over 380 error/warning
      messages across the ACPICA code. This increases the code
      and data size of the default non-debug version by about 13K.
      Added ACPI_NO_ERROR_MESSAGES flag to enable deleting all messages.
      The size of the debug version remains about the same.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      4a90c7e8
    • Len Brown's avatar
      [ACPI] delete message "**** SET: Misaligned resource pointer:" · 3c5c3638
      Len Brown authored
      This check, added in ACPICA 20051021, was overly paranoid.
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      3c5c3638
    • Len Brown's avatar
      [ACPI] better fix for pnpacpi regression resulting from ACPICA 20051117 · 0af5853b
      Len Brown authored
      Rather than tweaking acpi_walk_resource() again not return end tags,
      modify the pnpacpi code to ignore them.
      
      The pnpacpi resource type switch statements now include all known
      types in the order that they're defined -- so it is easy to see
      what is not implemented.  The code will squawk only if it sees
      a truly undefined type.
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      0af5853b
  2. 16 Jan, 2006 1 commit
  3. 07 Jan, 2006 4 commits
    • KAMEZAWA Hiroyuki's avatar
      [ACPI] acpi_memhotplug.c build fix · 3963f008
      KAMEZAWA Hiroyuki authored
      drivers/acpi/acpi_memhotplug.c: In function `acpi_memory_get_device_resources':
      drivers/acpi/acpi_memhotplug.c:101: error: structure has no member named `attribute'
      drivers/acpi/acpi_memhotplug.c:103: error: structure has no member named `attribute'
      drivers/acpi/acpi_memhotplug.c: In function `acpi_memory_disable_device':
      drivers/acpi/acpi_memhotplug.c:253: warning: unused variable `attr'
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      3963f008
    • Len Brown's avatar
      Pull pnpacpi into acpica branch · ed03f430
      Len Brown authored
      ed03f430
    • Bjorn Helgaas's avatar
      [ACPI] enable PNPACPI support for resource types used by HP serial ports · 6f957eaf
      Bjorn Helgaas authored
      PNPACPI complained about and ignored devices with ADDRESS16, ADDRESS32, or
      ADDRESS64 descriptors in _PRS.  HP firmware uses them for built-in serial
      ports, so this patch adds support for parsing these descriptors from _PRS.
      
      Note that this does not add the corresponding support for encoding them in
      preparation for _SRS, because I don't have any machine that supports _SRS
      on these descriptors, so I couldn't test that support.  Attempts to encode
      them will cause a warning and an -EINVAL return.
      
      http://sourceforge.net/mailarchive/forum.php?thread_id=8250154&forum_id=6102Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      6f957eaf
    • David S. Miller's avatar
      [PATCH] Fix posix-cpu-timers sched_time accumulation · 0aec63e6
      David S. Miller authored
      I've spent the past 3 days digging into a glibc testsuite failure in
      current CVS, specifically libc/rt/tst-cputimer1.c The thr1 and thr2
      timers fire too early in the second pass of this test.  The second
      pass is noteworthy because it makes use of intervals, whereas the
      first pass does not.
      
      All throughout the posix-cpu-timers.c code, the calculation of the
      process sched_time sum is implemented roughly as:
      
      	unsigned long long sum;
      
      	sum = tsk->signal->sched_time;
      	t = tsk;
      	do {
      		sum += t->sched_time;
      		t = next_thread(t);
      	} while (t != tsk);
      
      In fact this is the exact scheme used by check_process_timers().
      
      In the case of check_process_timers(), current->sched_time has just
      been updated (via scheduler_tick(), which is invoked by
      update_process_times(), which subsequently invokes
      run_posix_cpu_timers()) So there is no special processing necessary
      wrt. that.
      
      In other contexts, we have to allot for the fact that tsk->sched_time
      might be a bit out of date if we are current.  And the
      posix-cpu-timers.c code uses current_sched_time() to deal with that.
      
      Unfortunately it does so in an erroneous and inconsistent manner in
      one spot which is what results in the early timer firing.
      
      In cpu_clock_sample_group_locked(), it does this:
      
      		cpu->sched = p->signal->sched_time;
      		/* Add in each other live thread.  */
      		while ((t = next_thread(t)) != p) {
      			cpu->sched += t->sched_time;
      		}
      		if (p->tgid == current->tgid) {
      			/*
      			 * We're sampling ourselves, so include the
      			 * cycles not yet banked.  We still omit
      			 * other threads running on other CPUs,
      			 * so the total can always be behind as
      			 * much as max(nthreads-1,ncpus) * (NSEC_PER_SEC/HZ).
      			 */
      			cpu->sched += current_sched_time(current);
      		} else {
      			cpu->sched += p->sched_time;
      		}
      
      The problem is the "p->tgid == current->tgid" test.  If "p" is
      not current, and the tgids are the same, we will add the process
      t->sched_time twice into cpu->sched and omit "p"'s sched_time
      which is very very very wrong.
      
      posix-cpu-timers.c has a helper function, sched_ns(p) which takes care
      of this, so my fix is to use that here instead of this special tgid
      test.
      
      The fact that current can be one of the sub-threads of "p" points out
      that we could make things a little bit more accurate, perhaps by using
      sched_ns() on every thread we process in these loops.  It also points
      out that we don't use the most accurate value for threads in the group
      actively running other cpus (and this is mentioned in the comment).
      
      But that is a future enhancement, and this fix here definitely makes
      sense.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      0aec63e6
  4. 06 Jan, 2006 32 commits