1. 12 1月, 2009 6 次提交
    • M
      irq: change references from NR_IRQS to nr_irqs · 9594949b
      Mike Travis 提交于
      Impact: preparation, cleanup, add KERN_INFO printk
      
      Modify references from NR_IRQS to nr_irqs as the later will become
      variable-sized based on nr_cpu_ids when CONFIG_SPARSE_IRQS=y.
      Signed-off-by: NMike Travis <travis@sgi.com>
      9594949b
    • M
      x86: reduce stack usage in init_intel_cacheinfo · f9b90566
      Mike Travis 提交于
      Impact: reduce stack usage.
      
      init_intel_cacheinfo() does not use the cpumask so define a subset
      of struct _cpuid4_info (_cpuid4_info_regs) that can be used instead.
      Signed-off-by: NMike Travis <travis@sgi.com>
      f9b90566
    • M
      x86: cleanup remaining cpumask_t code in mce_amd_64.c · a1c33bbe
      Mike Travis 提交于
      Impact: Reduce memory usage, use new cpumask API.
      
      Use cpumask_var_t for 'cpus' cpumask in struct threshold_bank and update
      remaining old cpumask_t functions to new cpumask API.
      Signed-off-by: NMike Travis <travis@sgi.com>
      a1c33bbe
    • M
      SGI UV cpumask: use static temp cpumask in flush_tlb · 0e21990a
      Mike Travis 提交于
      Impact: Improve tlb flush performance for UV
      
      Calling alloc_cpumask_var a zillion times a second does affect
      performance.  Replace with static cpumask.
      
      Note: when CONFIG_X86_UV is defined, this extra PER_CPU memory
      will be optimized out for non-UV configs as is_uv_system() will
      then return a constant 0.
      Signed-off-by: NMike Travis <travis@sgi.com>
      0e21990a
    • R
      x86: change flush_tlb_others to take a const struct cpumask · 4595f962
      Rusty Russell 提交于
      Impact: reduce stack usage, use new cpumask API.
      
      This is made a little more tricky by uv_flush_tlb_others which
      actually alters its argument, for an IPI to be sent to the remaining
      cpus in the mask.
      
      I solve this by allocating a cpumask_var_t for this case and falling back
      to IPI should this fail.
      
      To eliminate temporaries in the caller, all flush_tlb_others implementations
      now do the this-cpu-elimination step themselves.
      
      Note also the curious "cpus_or(f->flush_cpumask, cpumask, f->flush_cpumask)"
      which has been there since pre-git and yet f->flush_cpumask is always zero
      at this point.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: NMike Travis <travis@sgi.com>
      4595f962
    • M
      cpumask: update irq_desc to use cpumask_var_t · 7f7ace0c
      Mike Travis 提交于
      Impact: reduce memory usage, use new cpumask API.
      
      Replace the affinity and pending_masks with cpumask_var_t's.  This adds
      to the significant size reduction done with the SPARSE_IRQS changes.
      
      The added functions (init_alloc_desc_masks & init_copy_desc_masks) are
      in the include file so they can be inlined (and optimized out for the
      !CONFIG_CPUMASKS_OFFSTACK case.)  [Naming chosen to be consistent with
      the other init*irq functions, as well as the backwards arg declaration
      of "from, to" instead of the more common "to, from" standard.]
      
      Includes a slight change to the declaration of struct irq_desc to embed
      the pending_mask within ifdef(CONFIG_SMP) to be consistent with other
      references, and some small changes to Xen.
      
      Tested: sparse/non-sparse/cpumask_offstack/non-cpumask_offstack/nonuma/nosmp on x86_64
      Signed-off-by: NMike Travis <travis@sgi.com>
      Cc: Chris Wright <chrisw@sous-sol.org>
      Cc: Jeremy Fitzhardinge <jeremy@xensource.com>
      Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Cc: virtualization@lists.osdl.org
      Cc: xen-devel@lists.xensource.com
      Cc: Yinghai Lu <yhlu.kernel@gmail.com>
      7f7ace0c
  2. 10 1月, 2009 3 次提交
  3. 09 1月, 2009 29 次提交
  4. 08 1月, 2009 2 次提交
    • B
      [ARM] footbridge: dc21285.c warning fixes · 0dc6c490
      Ben Dooks 提交于
      The dc21285 requests a number of IRQs that it doesn't really
      care whether they get added. Change to use a macro that ensures
      that at-least the user gets warned if they fail to add, which
      also stops the warnings from __unused_result on request_irq().
      
      dc21285.c:337: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
      dc21285.c:339: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
      dc21285.c:341: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
      dc21285.c:343: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
      dc21285.c:345: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      0dc6c490
    • B
      [ARM] footbridge: add isa_init_irq() to common header · 39ebfd3f
      Ben Dooks 提交于
      isa_init_irq() is defined in arch/arm/mach-footbridge/isa-irq.c
      and used in arch/arm/mach-footbridge/common.c but there is no
      definition in any header. Move the definition in common.c to
      common.h to stop the sparse warning:
      
      isa-irq.c:118:13: warning: symbol 'isa_init_irq' was not declared.
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      39ebfd3f