1. 23 10月, 2008 1 次提交
  2. 21 10月, 2008 2 次提交
  3. 26 9月, 2008 1 次提交
    • I
      x86, pci-hotplug, calgary / rio: fix EBDA ioremap() · 15160716
      Ingo Molnar 提交于
      IO resource and ioremap debugging uncovered this ioremap() done
      by drivers/pci/hotplug/ibmphp_ebda.c:
      
      initcall pci_hotplug_init+0x0/0x41 returned 0 after 3 msecs
      calling  ibmphp_init+0x0/0x360 @ 1
      ibmphpd: IBM Hot Plug PCI Controller Driver version: 0.6
      resource map sanity check conflict: 0x9f800 0xaf5e7 0x9f800 0x9ffff reserved
      ------------[ cut here ]------------
      WARNING: at arch/x86/mm/ioremap.c:175 __ioremap_caller+0x5c/0x226()
      Pid: 1, comm: swapper Not tainted 2.6.27-rc7-tip-00914-g347b10f-dirty #36038
       [<c013a72d>] warn_on_slowpath+0x41/0x68
       [<c0156f00>] ? __lock_acquire+0x9ba/0xa7f
       [<c012158c>] ? do_flush_tlb_all+0x0/0x59
       [<c015ac31>] ? smp_call_function_mask+0x74/0x17d
       [<c012158c>] ? do_flush_tlb_all+0x0/0x59
       [<c013b228>] ? printk+0x1a/0x1c
       [<c013f302>] ? iomem_map_sanity_check+0x82/0x8c
       [<c0a773e8>] ? _read_unlock+0x22/0x25
       [<c013f302>] ? iomem_map_sanity_check+0x82/0x8c
       [<c0154e17>] ? trace_hardirqs_off+0xb/0xd
       [<c0127731>] __ioremap_caller+0x5c/0x226
       [<c0156158>] ? trace_hardirqs_on+0xb/0xd
       [<c012767d>] ? iounmap+0x9d/0xa5
       [<c01279dd>] ioremap_nocache+0x15/0x17
       [<c0403c42>] ? ioremap+0xd/0xf
       [<c0403c42>] ioremap+0xd/0xf
       [<c0f1928f>] ibmphp_access_ebda+0x60/0xa0e
       [<c0f17f64>] ibmphp_init+0xb5/0x360
       [<c0101057>] do_one_initcall+0x57/0x138
       [<c0f17eaf>] ? ibmphp_init+0x0/0x360
       [<c0156158>] ? trace_hardirqs_on+0xb/0xd
       [<c0148d75>] ? __queue_work+0x2b/0x30
       [<c0f17eaf>] ? ibmphp_init+0x0/0x360
       [<c0f015a0>] kernel_init+0x17b/0x1e2
       [<c0f01425>] ? kernel_init+0x0/0x1e2
       [<c01178b3>] kernel_thread_helper+0x7/0x10
       =======================
      ---[ end trace a7919e7f17c0a725 ]---
      initcall ibmphp_init+0x0/0x360 returned -19 after 144 msecs
      calling  zt5550_init+0x0/0x6a @ 1
      
      the problem is this code:
      
              io_mem = ioremap (ebda_seg<<4, 65000);
      
      it assumes that the EBDA is 65000 bytes. But BIOS EBDA pointers are
      at most 1K large.
      
      _if_ the Rio code truly extends upon the customary EBDA size it needs
      to iounmap() this memory and ioremap() it larger, once it knows it from
      the generic descriptors that a Rio system is around.
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      15160716
  4. 11 6月, 2008 1 次提交
    • A
      PCI: introduce pci_slot · f46753c5
      Alex Chiang 提交于
      Currently, /sys/bus/pci/slots/ only exposes hotplug attributes when a
      hotplug driver is loaded, but PCI slots have attributes such as address,
      speed, width, etc.  that are not related to hotplug at all.
      
      Introduce pci_slot as the primary data structure and kobject model.
      Hotplug attributes described in hotplug_slot become a secondary
      structure associated with the pci_slot.
      
      This patch only creates the infrastructure that allows the separation of
      PCI slot attributes and hotplug attributes.  In this patch, the PCI
      hotplug core remains the only user of this infrastructure, and thus,
      /sys/bus/pci/slots/ will still only become populated when a hotplug
      driver is loaded.
      
      A later patch in this series will add a second user of this new
      infrastructure and demonstrate splitting the task of exposing pci_slot
      attributes from hotplug_slot attributes.
      
        - Make pci_slot the primary sysfs entity. hotplug_slot becomes a
          subsidiary structure.
          o pci_create_slot() creates and registers a slot with the PCI core
          o pci_slot_add_hotplug() gives it hotplug capability
      
        - Change the prototype of pci_hp_register() to take the bus and
          slot number (on parent bus) as parameters.
      
        - Remove all the ->get_address methods since this functionality is
          now handled by pci_slot directly.
      
      [achiang@hp.com: rpaphp-correctly-pci_hp_register-for-empty-pci-slots]
      Tested-by: NBadari Pulavarty <pbadari@us.ibm.com>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      [akpm@linux-foundation.org: build fix]
      [akpm@linux-foundation.org: make headers_check happy]
      [akpm@linux-foundation.org: nuther build fix]
      [akpm@linux-foundation.org: fix typo in #include]
      Signed-off-by: NAlex Chiang <achiang@hp.com>
      Signed-off-by: NMatthew Wilcox <matthew@wil.cx>
      Cc: Greg KH <greg@kroah.com>
      Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
      Cc: Len Brown <lenb@kernel.org>
      Acked-by: NKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      f46753c5
  5. 21 4月, 2008 1 次提交
  6. 11 3月, 2008 1 次提交
    • J
      PCI Hotplug: Fix small mem leak in IBM Hot Plug Controller Driver · b91aac29
      Jesper Juhl 提交于
      In drivers/pci/hotplug/ibmphp_ebda.c::ebda_rsrc_controller(), storage is
      allocated with kzalloc() and assigned to 'tmp_slot'.  Then lots of
      stuff, like ->flag, ->supported_speed etc is set in tmp_slot.  A bit
      further down there's then this test :
      
        if (!bus_info_ptr1) {
          rc = -ENODEV;
          goto error;
        }
      
      At this point, tmp_slot has not been assigned to anything, so when
      erroring-out we want to free it, but nothing at the 'error:' label
      free's 'tmp_slot' - and we can't really free 'tmp_slot' at 'error:'
      since we may jump to that label later when 'tmp_slot' *has* been used
      and we do not want it freed. So, the only sane option left seems to be
      to kfree(tmp_slot) just before jumping to the 'error:' label in the one
      place where this is what actually makes sense. The following patch does
      just that and thus kills off a tiny potential memory leak.
      Signed-off-by: NJesper Juhl <jesper.juhl@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      b91aac29
  7. 15 2月, 2007 1 次提交
    • T
      [PATCH] remove many unneeded #includes of sched.h · cd354f1a
      Tim Schmielau 提交于
      After Al Viro (finally) succeeded in removing the sched.h #include in module.h
      recently, it makes sense again to remove other superfluous sched.h includes.
      There are quite a lot of files which include it but don't actually need
      anything defined in there.  Presumably these includes were once needed for
      macros that used to live in sched.h, but moved to other header files in the
      course of cleaning it up.
      
      To ease the pain, this time I did not fiddle with any header files and only
      removed #includes from .c-files, which tend to cause less trouble.
      
      Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
      arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
      allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
      configs in arch/arm/configs on arm.  I also checked that no new warnings were
      introduced by the patch (actually, some warnings are removed that were emitted
      by unnecessarily included header files).
      Signed-off-by: NTim Schmielau <tim@physik3.uni-rostock.de>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      cd354f1a
  8. 24 3月, 2006 2 次提交
  9. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4