23 Dec, 2006

1 commit


22 Dec, 2006

7 commits

  • The recent io scheduler allow_merge commit left the block layer with
    no merging, oops. This patch fixes that up.

    That means the CFQ change needs to be verified again, it might not fix
    the original bug now. But that's a seperate thing, I'll double check
    that tomorrow.

    Signed-off-by: Jens Axboe
    Signed-off-by: Linus Torvalds

    Jens Axboe
     
  • truncate presently invalidates the dirty page's buffer_heads then shoots down
    the page. But try_to_free_buffers() will now bale out because the page is
    dirty.

    Net effect: the LRU gets filled with dirty pages which have invalidated
    buffer_heads attached. They have no ->mapping and hence cannot be cleaned.
    The machine leaks memory at an enormous rate.

    Fix this by cleaning the page before running try_to_free_buffers(), so
    try_to_free_buffers() can do its work.

    Also, remember to do dirty-page-acoounting in cancel_dirty_page() so the
    machine won't wedge up trying to write non-existent dirty pages.

    Probably still wrong, but now less so.

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • XFS appears to call clear_page_dirty to get the mapping tree dirty tag
    set correctly at the same time the page dirty flag is cleared. I note
    that this can be done by set_page_writeback() if we clear the dirty flag
    on the page first when we are writing back the entire page.

    Hence it seems to me that the XFS call to clear_page_dirty() could
    easily be substituted by clear_page_dirty_for_io() followed by a call to
    set_page_writeback() to get the mapping tree tags set correctly after
    the page has been marked clean.

    Signed-off-by: Linus Torvalds

    David Chinner
     
  • The use by FUSE was just a remnant of an optimization from the time
    when writable mappings were supported.

    Now FUSE never actually allows the creation of dirty pages, so this
    invocation of clear_page_dirty() is effectively a no-op.

    Signed-off-by: Miklos Szeredi
    Signed-off-by: Linus Torvalds

    Miklos Szeredi
     
  • This patch removes some questionable code that attempted to make a
    no-longer-used page easier to reclaim.

    Calling metapage_writepage against such a page will not result in any
    I/O being performed, so removing this code shouldn't be a big deal.

    [ It's likely that we could have just replaced the "clear_page_dirty()"
    call with a call to "cancel_dirty_page()" instead, but in the
    meantime this is cleaner and simpler anyway, so unless there is some
    overriding reason (and Dave implies there isn't) I'll just use this
    patch as-is. - Linus ]

    Signed-off-by: Dave Kleikamp
    Signed-off-by: Linus Torvalds

    Dave Kleikamp
     
  • They were horribly easy to mis-use because of their tempting naming, and
    they also did way more than any users of them generally wanted them to
    do.

    A dirty page can become clean under two circumstances:

    (a) when we write it out. We have "clear_page_dirty_for_io()" for
    this, and that function remains unchanged.

    In the "for IO" case it is not sufficient to just clear the dirty
    bit, you also have to mark the page as being under writeback etc.

    (b) when we actually remove a page due to it becoming inaccessible to
    users, notably because it was truncate()'d away or the file (or
    metadata) no longer exists, and we thus want to cancel any
    outstanding dirty state.

    For the (b) case, we now introduce "cancel_dirty_page()", which only
    touches the page state itself, and verifies that the page is not mapped
    (since cancelling writes on a mapped page would be actively wrong as it
    is still accessible to users).

    Some filesystems need to be fixed up for this: CIFS, FUSE, JFS,
    ReiserFS, XFS all use the old confusing functions, and will be fixed
    separately in subsequent commits (with some of them just removing the
    offending logic, and others using clear_page_dirty_for_io()).

    This was confirmed by Martin Michlmayr to fix the apt database
    corruption on ARM.

    Cc: Martin Michlmayr
    Cc: Peter Zijlstra
    Cc: Hugh Dickins
    Cc: Nick Piggin
    Cc: Arjan van de Ven
    Cc: Andrei Popa
    Cc: Andrew Morton
    Cc: Dave Kleikamp
    Cc: Gordon Farquharson
    Cc: Martin Schwidefsky
    Cc: Trond Myklebust
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • This is preparatory work in our continuing saga on some hard-to-trigger
    file corruption with shared writable mmap() after the dirty page
    tracking changes (commit d08b3851da41d0ee60851f2c75b118e1f7a5fc89 etc)
    were merged.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

21 Dec, 2006

32 commits

  • fix the schedule_on_each_cpu() implementation: __queue_work() is now
    stricter, hence set the work-pending bit before passing in the new work.

    (found in the -rt tree, using Peter Zijlstra's files-lock scalability
    patchset)

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
    [GFS2] Fix Kconfig
    [DLM] fix compile warning

    Linus Torvalds
     
  • Problem:
    sched_fork() has always called scheduler_tick() in some (unlikely)
    circumstances in order to update the current task in light of those
    circumstances. It has always been the case that the work done by
    scheduler_tick() was more than was required to handle the problem in
    hand but no harm was done except for the waste of a few CPU cycles.

    However, the splitting of scheduler_tick() into two procedures in
    2.6.20-rc1 enables the wasted cycles to be saved as the new procedure
    task_running_tick() does all the work that is required to rectify the
    problem being handled.

    Solution:
    Replace the call to scheduler_tick() in sched_fork() with a call to
    task_running_tick().

    Signed-off-by: Peter Williams
    Acked-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Peter Williams
     
  • if CONFIG_CALGARY_IOMMU is built into the kernel via
    CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT, or is enabled via the
    iommu=calgary boot option, then the detect_calgary() function runs to
    detect the presence of a Calgary IOMMU.

    detect_calgary() first searches the BIOS EBDA area for a "rio_table_hdr"
    BIOS table. It has this parsing algorithm for the EBDA:

    while (offset) {
    ...
    /* The next offset is stored in the 1st word. 0 means no more */
    offset = *((unsigned short *)(ptr + offset));
    }

    got that? Lets repeat it slowly: we've got a BIOS-supplied data
    structure, plus Linux kernel code that will only break out of an
    infinite parsing loop once the BIOS gives a zero offset. Ok?

    Translation: what an excellent opportunity for BIOS writers to lock up
    the Linux boot process in an utterly hard to debug place! Indeed the
    BIOS jumped on that opportunity on my box, which has the following EBDA
    chaining layout:

    384, 65282, 65535, 65535, 65535, 65535, 65535, 65535 ...

    see the pattern? So my, definitely non-Calgary system happily locks up
    in detect_calgary()!

    the patch below fixes the boot hang by trusting the BIOS-supplied data
    structure a bit less: the parser always has to make forward progress,
    and if it doesnt, we break out of the loop and i get the expected kernel
    message:

    Calgary: Unable to locate Rio Grande Table in EBDA - bailing!

    Signed-off-by: Ingo Molnar
    Acked-by: Muli Ben-Yehuda
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • one of my boxes didnt boot the 2.6.20-rc1-rt0 kernel rpm, it hung during
    early bootup. After an hour or two of happy debugging i narrowed it down
    to the CALGARY_IOMMU_ENABLED_BY_DEFAULT option, which was freshly added
    to 2.6.20 via the x86_64 tree and /enabled by default/.

    commit bff6547bb6a4e82c399d74e7fba78b12d2f162ed claims:

    [PATCH] Calgary: allow compiling Calgary in but not using it by default

    This patch makes it possible to compile Calgary in but not use it by
    default. In this mode, use 'iommu=calgary' to activate it.

    but the change does not actually practice it:

    config CALGARY_IOMMU_ENABLED_BY_DEFAULT
    bool "Should Calgary be enabled by default?"
    default y
    depends on CALGARY_IOMMU
    help
    Should Calgary be enabled by default? if you choose 'y', Calgary
    will be used (if it exists). If you choose 'n', Calgary will not be
    used even if it exists. If you choose 'n' and would like to use
    Calgary anyway, pass 'iommu=calgary' on the kernel command line.
    If unsure, say Y.

    it's both 'default y', and says "If unsure, say Y". Clearly not a typo.

    disabling this option makes my box boot again. The patch below fixes the
    Kconfig entry. Grumble.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • __set_irq_handler: Kill a bogus space

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • * 'for-linus' of git://brick.kernel.dk/data/git/linux-2.6-block:
    [PATCH] block: document io scheduler allow_merge_fn hook
    [PATCH] cfq-iosched: don't allow sync merges across queues
    [PATCH] Fixup blk_rq_unmap_user() API
    [PATCH] __blk_rq_unmap_user() fails to return error
    [PATCH] __blk_rq_map_user() doesn't need to grab the queue_lock
    [PATCH] Remove queue merging hooks
    [PATCH] ->nr_sectors and ->hard_nr_sectors are not used for BLOCK_PC requests
    [PATCH] cciss: fix XFER_READ/XFER_WRITE in do_cciss_request
    [PATCH] cciss: set default raid level when reading geometry fails

    Linus Torvalds
     
  • * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    [libata] sata_svw, sata_vsc: kill iomem warnings
    [PATCH] libata: take scmd->cmd_len into account when translating SCSI commands
    [PATCH] libata: kill @cdb argument from xlat methods
    [PATCH] libata: clean up variable name usage in xlat related functions
    [libata] Move some PCI IDs from sata_nv to ahci
    [libata] pata_via: suspend/resume support fix
    [libata] pata_cs5530: suspend/resume support tweak

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6:
    Driver core: proper prototype for drivers/base/init.c:driver_init()
    kobject: kobject_uevent() returns manageable value
    kref refcnt and false positives

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (22 commits)
    acpiphp: Link-time error for PCI Hotplug
    shpchp: cleanup shpchp.h
    shpchp: remove shpchprm_get_physical_slot_number
    shpchp: cleanup struct controller
    shpchp: remove unnecessary struct php_ctlr
    PCI: ATI sb600 sata quirk
    PCI legacy resource fix
    PCI: don't export device IDs to userspace
    PCI: Be a bit defensive in quirk_nvidia_ck804() so we don't risk dereferencing a NULL pdev.
    PCI: Fix multiple problems with VIA hardware
    PCI: Only check the HT capability bits in mpic.c
    PCI: Use pci_find_ht_capability() in drivers/pci/quirks.c
    PCI: Add #defines for Hypertransport MSI fields
    PCI: Use pci_find_ht_capability() in drivers/pci/htirq.c
    PCI: Add pci_find_ht_capability() for finding Hypertransport capabilities
    PCI: Create __pci_bus_find_cap_start() from __pci_bus_find_cap()
    pci: Introduce pci_find_present
    PCI: pcieport-driver: remove invalid warning message
    rpaphp: compiler warning cleanup
    PCI quirks: remove redundant check
    ...

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (34 commits)
    USB Storage: remove duplicate Nokia entry in unusual_devs.h
    [PATCH] bluetooth: add support for another Kensington dongle
    [PATCH] usb serial: add support for Novatel S720/U720 CDMA/EV-DO modems
    [PATCH] USB: Nokia E70 is an unusual device
    USB: fix to usbfs_snoop logging of user defined control urbs
    USB: at91_udc: Additional checks
    USB: at91_udc: Cleanup variables after failure in usb_gadget_register_driver()
    USB: at91_udc: allow drivers that support high speed
    USB: u132-hcd/ftdi-elan: add support for Option GT 3G Quad card
    USB: at91_udc, misc fixes
    USB: at91 udc, support at91sam926x addresses
    USB: OHCI support for PNX8550
    USB: ohci handles hardware faults during root port resets
    USB: ohci at91 warning fix
    USB: ohci whitespace/comment fixups
    USB: MAINTAINERS update, EHCI and OHCI
    USB: gadget driver unbind() is optional; section fixes; misc
    UHCI: module parameter to ignore overcurrent changes
    USB: Nokia E70 is an unusual device
    USB AUERSWALD: replace kmalloc+memset with kzalloc
    ...

    Linus Torvalds
     
  • * 'merge' of master.kernel.org:/pub/scm/linux/kernel/git/paulus/powerpc:
    [POWERPC] Fix register save area alignment for swapcontext syscall
    [POWERPC] Fix PCI device channel state initialization
    [POWERPC] Update MTD OF documentation
    [POWERPC] Probe Efika platform before CHRP.
    [POWERPC] Fix build of cell zImage.initrd
    [POWERPC] iSeries: fix CONFIG_VIOPATH dependency
    [POWERPC] iSeries: fix viocons init
    [POWERPC] iSeries: fix viocd init
    [POWERPC] iSeries: fix iseries_veth init
    [POWERPC] iSeries: fix viotape init
    [POWERPC] iSeries: fix viodasd init
    [POWERPC] Workaround oldworld OF bug with IRQs & P2P bridges
    [POWERPC] powerpc: add scanning of ebc bus to of_platform
    [POWERPC] spufs: fix assignment of node numbers
    [POWERPC] cell: Fix spufs with "new style" device-tree
    [POWERPC] cell: Enable spider workarounds on all PCI buses
    [POWERPC] cell: add forward struct declarations to spu.h
    [POWERPC] cell: update cell_defconfig

    Linus Torvalds
     
  • * 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6:
    drm: Stop defining pci_pretty_name
    drm: r128: comment aligment with drm git
    drm: make kernel context switch same as for drm git tree.
    drm: fixup comment header style
    drm: savage: compat fix from drm git.
    drm: Unify radeon offset checking.
    i915_vblank_tasklet: Try harder to avoid tearing.
    DRM: handle pci_enable_device failure
    drm: fix return value check

    Linus Torvalds
     
  • * 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (30 commits)
    [ALSA] version 1.0.14rc1
    [ALSA] ac97: Identify CMI9761 chips.
    [ALSA] ac97_codec - trivial fix for bit update functions
    [ALSA] snd-ca0106: Fix typos.
    [ALSA] snd-ca0106: Add new card variant.
    [ALSA] sound: fix PCM substream list
    [ALSA] sound: initialize rawmidi substream list
    [ALSA] snd_hda_intel 3stack mode for ASUS P5P-L2
    [ALSA] Remove IRQF_DISABLED for shared PCI irqs
    [ALSA] Fix invalid assignment of PCI revision
    [ALSA] Fix races in PCM OSS emulation
    [ALSA] hda-codec - fix typo in PCI IDs
    [ALSA] ac97 - Fix potential negative array index
    [ALSA] hda-codec - Verbose proc output for PCM parameters
    [ALSA] hda-codec - Fix detection of supported sample rates
    [ALSA] hda-codec - Fix model for ASUS V1j laptop
    [ALSA] sound/core/control.c: remove dead code
    [ALSA] hda-codec - Add model for HP q965
    [ALSA] pcm core: fix silence_start calculations
    [ALSA] hda-codec - Fix a typo
    ...

    Linus Torvalds
     
  • * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (29 commits)
    [ARM] 4062/1: S3C24XX: Anubis and Osiris shuld have CONFIG_PM_SIMTEC
    [ARM] 4060/1: update several ARM defconfigs
    [ARM] 4061/1: xsc3: change of maintainer
    [ARM] 4059/1: VR1000: fix LED3's platform device number
    [ARM] 4022/1: iop13xx: generic irq fixups
    [ARM] 4015/1: s3c2410 cpu ifdefs
    [ARM] 4057/1: ixp23xx: unconditionally enable hardware coherency
    [ARM] 4056/1: iop13xx: fix resource.end off-by-one in flash setup
    [ARM] 4055/1: iop13xx: fix phys_io/io_pg_offst for iq81340mc/sc
    [ARM] 4054/1: ep93xx: add HWCAP_CRUNCH
    [ARM] 4052/1: S3C24XX: Fix PM in arch/arm/mach-s3c2410/Kconfig
    [ARM] Fix warnings from asm/system.h
    [ARM] 4051/1: S3C24XX: clean includes in S3C2440 and S3C2442 support
    [ARM] 4050/1: S3C24XX: remove old changelogs in arch/arm/mach-s3c2410
    [ARM] 4049/1: S3C24XX: fix sparse warning due to upf_t in regs-serial.h
    [ARM] 4048/1: S3C24XX: make s3c2410_pm_resume() static
    [ARM] 4046/1: S3C24XX: fix sparse errors arch/arm/mach-s3c2410
    [ARM] 4045/1: S3C24XX: remove old VA for non-shared areas
    [ARM] 4044/1: S3C24XX: fix sparse warnings in arch/arm/mach-s3c2410/s3c2442-clock.c
    [ARM] 4043/1: S3C24XX: fix sparse warnings in arch/arm/mach-s3c2410/s3c2440-clock.c
    ...

    Linus Torvalds
     
  • How many times are we going to merge this entry...

    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Now that iomap merge is close to reality, and since the warnings and
    issue have been around so long, we don't need a reminder on every build
    that libata needs to be converted over to iomap.

    Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • Add the stupid sco fixup quirk to yet another Broadcom/Kensington device.

    Cc: Marcel Holtmann
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Olivier Galibert
     
  • Add USB vendor/device IDs for Novatel Wireless S720 and U720 CDMA/EV-DO
    modems to airprime.c.

    Signed-off-by: Eric Smith
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Eric Smith
     
  • Taken from http://bugzilla.kernel.org/show_bug.cgi?id=7508

    When the Nokia E70 Phone is plugged in to the USB port, I get:

    end_request: I/O error, dev sda, sector 1824527
    sd 0:0:0:0: SCSI error: return code = 0x10070000
    end_request: I/O error, dev sda, sector 1824535
    sd 0:0:0:0: SCSI error: return code = 0x10070000

    The fix is to add these lines to drivers/usb/storage/unusual_devs.h:

    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Andrew Morton
     
  • libata depended on SCSI command to have the correct length when
    tranlating it into an ATA command. This generally worked for commands
    issued by SCSI HLD but user could issue arbitrary broken command using
    sg interface.

    Also, when building ATAPI command, full command size was always
    copied. Because some ATAPI devices needs bytes after CDB cleared, if
    upper layer doesn't clear bytes after CDB, such devices will
    malfunction. This necessiated recent clear-garbage-after-CDB fix in
    sg interfaces. However, scsi_execute() isn't fixed yet and HL-DT-ST
    DVD-RAM GSA-H30N malfunctions on initialization commands issued from
    SCSI.

    This patch makes xlat functions always consider SCSI cmd_len. Each
    translation function checks for proper cmd_len and ATAPI translaation
    clears bytes after CDB.

    Signed-off-by: Tejun Heo
    Cc: Jens Axboe
    Cc: Douglas Gilbert
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • xlat function will be updated to consider qc->scsicmd->cmd_len and
    many xlat functions deference qc->scsicmd already. It doesn't make
    sense to pass qc->scsicmd->cmnd as @cdb separately. Kill the
    argument.

    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • Variable names in xlat functions are quite confusing now. 'scsicmd'
    is used for CDB while qc->scsicmd points to struct scsi_cmnd while
    'cmd' is used for struct scsi_cmnd.

    This patch cleans up variable names in xlat functions such that 'scmd'
    is used for struct scsi_cmnd and 'cdb' for CDB. Also, 'scmd' local
    variable is added if qc->scsicmd is used multiple times.

    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • The content of memory map io of BAR5 have been change from MCP65 then
    sata_nv can't work fine on the platform based on MCP65 and MCP67, so move
    their IDs from sata_nv.c to ahci.c.

    Signed-off-by: Peer Chen
    Signed-off-by: Jeff Garzik

    Peer Chen
     
  • Add a prototype for driver_init() in include/linux/device.h.

    Also remove a static function of the same name in drivers/acpi/ibm_acpi.c to
    ibm_acpi_driver_init() to fix the namespace collision.

    Signed-off-by: Adrian Bunk
    Acked-by: Henrique de Moraes Holschuh
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Adrian Bunk
     
  • Since kobject_uevent() function does not return an integer value to
    indicate if its operation was completed with success or not, it is worth
    changing it in order to report a proper status (success or error) instead
    of returning void.

    [randy.dunlap@oracle.com: Fix inline kobject functions]
    Cc: Mauricio Lin
    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Aneesh Kumar K.V
     
  • With WARN_ON addition to kobject_init()
    [ http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19/2.6.19-mm1/dont-use/broken-out/gregkh-driver-kobject-warn.patch ]

    I started seeing following WARNING on CPU offline followed by online on my
    x86_64 system.

    WARNING at lib/kobject.c:172 kobject_init()

    Call Trace:
    [] dump_trace+0xaa/0x3ef
    [] show_trace+0x3a/0x50
    [] dump_stack+0x15/0x17
    [] kobject_init+0x3f/0x8a
    [] kobject_register+0x1a/0x3e
    [] sysdev_register+0x5b/0xf9
    [] mce_create_device+0x77/0xf4
    [] mce_cpu_callback+0x3a/0xe5
    [] notifier_call_chain+0x26/0x3b
    [] raw_notifier_call_chain+0x9/0xb
    [] _cpu_up+0xb4/0xdc
    [] cpu_up+0x2b/0x42
    [] store_online+0x4a/0x72
    [] sysdev_store+0x24/0x26
    [] sysfs_write_file+0xcf/0xfc
    [] vfs_write+0xae/0x154
    [] sys_write+0x47/0x6f
    [] system_call+0x7e/0x83
    DWARF2 unwinder stuck at system_call+0x7e/0x83
    Leftover inexact backtrace:

    This is a false positive as mce.c is unregistering/registering sysfs
    interfaces cleanly on hotplug.

    kref_put() and conditional decrement of refcnt seems to be the root cause
    for this and the patch below resolves the issue for me.

    Signed-off-by: Venkatesh Pallipadi
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Venkatesh Pallipadi
     
  • I'm seeing:
    `acpiphp_glue_exit' referenced in section `.init.text' of
    drivers/built-in.o: defined in discarded section `.exit.text' of
    drivers/built-in.o

    when trying to compile an IA64 kernel with PCI hotplug enabled.

    I suggest this patch:

    Signed-off-by: Peter Chubb
    Signed-off-by: Kristen Carlson Accardi
    Signed-off-by: Greg Kroah-Hartman

    Kristen Carlson Accardi
     
  • This patch cleans up shpchp.h.

    Signed-off-by: Kenji Kaneshige
    Signed-off-by: Kristen Carlson Accardi
    Signed-off-by: Greg Kroah-Hartman

    Kenji Kaneshige
     
  • This patch removes unnecessary shpchprm_get_physical_slot_number()
    function.

    Signed-off-by: Kenji Kaneshige
    Signed-off-by: Kristen Carlson Accardi
    Signed-off-by: Greg Kroah-Hartman

    Kenji Kaneshige
     
  • This patch removes unused/unnecessary members from struct controller.

    Signed-off-by: Kenji Kaneshige
    Signed-off-by: Kristen Carlson Accardi
    Signed-off-by: Greg Kroah-Hartman

    Kenji Kaneshige