[KARMIC] SRU-PREVIEW lp#490290 Updates to cciss driver

Manoj Iyer manoj.iyer at canonical.com
Mon Jan 4 20:37:37 UTC 2010


smb/ogasawara,

This is a preview of the patches that I cherry picked to fix 
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/490290 the test 
kernel is available at http://people.canonical.com/~manjo/lp490290-karmic/ 
and the kernel was tested by the originator of the bug and reported to 
have fixed the problem.

I could possibly not include the patches from David Brownell and James 
Morris, and avoid touching files under fs/ arch/ drivers/ kernel/ etc, but 
since the changes there are just that of constifying I don't see any harm, 
these patches do touch the cciss files.

The following changes since commit c93b4ea71f6ca8beca25e3afde993e813713e3ac:
   Stefan Bader (1):
         UBUNTU: [Config] Disable CONFIG_USB_DEVICEFS

are available in the git repository at:

   ssh://zinc.canonical.com/srv/kernel.ubuntu.com/git/manjo/ubuntu-karmic.git lp490290

Alexey Dobriyan (1):
       const: make block_device_operations const

Andrew Patterson (3):
       cciss: Remove sysfs entries for logical drives on driver cleanup.
       cciss: Use one scan thread per controller and fix hang during rmmod
       cciss: Allow triggering of rescan of logical drive topology via sysfs entry

David Brownell (1):
       driver model: constify attribute groups

Eric Dumazet (1):
       cciss: memory leak in cciss_init_one()

James Morris (1):
       seq_file: constify seq_operations

Randy Dunlap (1):
       cciss: fix schedule_timeout() parameters

Stephen M. Cameron (17):
       cciss: Remove some unused code in rebuild_lun_table()
       cciss: Dynamically allocate struct device for each logical drive as needed.
       cciss: Rearrange logical drive sysfs code to make the "changing a disk" path work.
       cciss: Handle failure of blk_init_queue gracefully in cciss_add_disk.
       cciss: Handle cases when cciss_add_disk fails.
       cciss: Handle special case for sysfs attributes of the first logical drive.
       cciss: Clear all sysfs-exposed data for deleted logical drives.
       cciss: Fix usage_count check in rebuild_lun_table when triggered via sysfs.
       cciss: Fix excessive gendisk freeing bug on driver unload.
       cciss: Silence noisy per-disk messages output by cciss_read_capacity
       cciss: Preserve all 8 bytes of LUN ID for logical drives.
       cciss: Don't check h->busy_initializing in cciss_open().
       cciss: Add lunid attribute to each logical drive in /sys
       cciss: fix some magic numbers in the raid-level decoding
       cciss: Add a "raid_level" attribute to each logical drive in /sys
       cciss: Add usage_count attribute to each logical drive in /sys
       cciss: Dynamically allocate the drive_info_struct for each logical drive.

  .../ABI/testing/sysfs-bus-pci-devices-cciss        |   28 +
  arch/mn10300/kernel/setup.c                        |    2 +-
  arch/powerpc/kernel/setup-common.c                 |    2 +-
  arch/powerpc/platforms/pseries/hvCall_inst.c       |    2 +-
  arch/powerpc/sysdev/axonram.c                      |    2 +-
  arch/um/drivers/ubd_kern.c                         |    2 +-
  block/genhd.c                                      |    2 +-
  drivers/base/core.c                                |    4 +-
  drivers/base/driver.c                              |    4 +-
  drivers/block/DAC960.c                             |    2 +-
  drivers/block/amiflop.c                            |    2 +-
  drivers/block/aoe/aoeblk.c                         |    2 +-
  drivers/block/ataflop.c                            |    2 +-
  drivers/block/brd.c                                |    2 +-
  drivers/block/cciss.c                              |  758 ++++++++++++++------
  drivers/block/cciss.h                              |   12 +-
  drivers/block/cpqarray.c                           |    2 +-
  drivers/block/floppy.c                             |    2 +-
  drivers/block/hd.c                                 |    2 +-
  drivers/block/loop.c                               |    2 +-
  drivers/block/mg_disk.c                            |    2 +-
  drivers/block/nbd.c                                |    2 +-
  drivers/block/osdblk.c                             |    2 +-
  drivers/block/paride/pcd.c                         |    2 +-
  drivers/block/paride/pd.c                          |    2 +-
  drivers/block/paride/pf.c                          |    2 +-
  drivers/block/pktcdvd.c                            |    2 +-
  drivers/block/ps3disk.c                            |    2 +-
  drivers/block/ps3vram.c                            |    2 +-
  drivers/block/sunvdc.c                             |    2 +-
  drivers/block/swim.c                               |    2 +-
  drivers/block/swim3.c                              |    2 +-
  drivers/block/sx8.c                                |    2 +-
  drivers/block/ub.c                                 |    2 +-
  drivers/block/umem.c                               |    3 +-
  drivers/block/viodasd.c                            |    2 +-
  drivers/block/virtio_blk.c                         |    2 +-
  drivers/block/xd.c                                 |    2 +-
  drivers/block/xen-blkfront.c                       |    4 +-
  drivers/block/xsysace.c                            |    2 +-
  drivers/block/z2ram.c                              |    3 +-
  drivers/cdrom/gdrom.c                              |    2 +-
  drivers/cdrom/viocd.c                              |    2 +-
  drivers/char/misc.c                                |    2 +-
  drivers/char/tpm/tpm_bios.c                        |    4 +-
  drivers/firewire/core-device.c                     |    2 +-
  drivers/firmware/dmi-id.c                          |    2 +-
  drivers/ide/ide-cd.c                               |    2 +-
  drivers/ide/ide-gd.c                               |    2 +-
  drivers/ide/ide-tape.c                             |    2 +-
  drivers/infiniband/hw/ehca/ehca_main.c             |    2 +-
  drivers/infiniband/hw/ipath/ipath_kernel.h         |    2 +-
  drivers/infiniband/hw/ipath/ipath_sysfs.c          |    2 +-
  drivers/input/input.c                              |    2 +-
  drivers/isdn/capi/kcapi_proc.c                     |   10 +-
  drivers/md/dm.c                                    |    4 +-
  drivers/md/md.c                                    |    4 +-
  drivers/memstick/core/mspro_block.c                |    2 +-
  drivers/message/i2o/i2o_block.c                    |    2 +-
  drivers/misc/enclosure.c                           |    4 +-
  drivers/mmc/card/block.c                           |    2 +-
  drivers/mmc/core/mmc.c                             |    2 +-
  drivers/mmc/core/sd.c                              |    2 +-
  drivers/mtd/mtd_blkdevs.c                          |    2 +-
  drivers/mtd/mtdcore.c                              |    2 +-
  drivers/s390/block/dasd.c                          |    2 +-
  drivers/s390/block/dasd_int.h                      |    2 +-
  drivers/s390/block/dcssblk.c                       |    2 +-
  drivers/s390/block/xpram.c                         |    2 +-
  drivers/s390/char/tape_block.c                     |    2 +-
  drivers/s390/cio/css.c                             |    2 +-
  drivers/s390/cio/device.c                          |    2 +-
  drivers/s390/net/netiucv.c                         |    2 +-
  drivers/sbus/char/jsflash.c                        |    2 +-
  drivers/scsi/scsi_priv.h                           |    2 +-
  drivers/scsi/scsi_sysfs.c                          |    4 +-
  drivers/scsi/sd.c                                  |    2 +-
  drivers/scsi/sg.c                                  |    6 +-
  drivers/scsi/sr.c                                  |    2 +-
  drivers/usb/core/endpoint.c                        |    2 +-
  drivers/usb/core/sysfs.c                           |    4 +-
  drivers/usb/core/usb.h                             |    4 +-
  drivers/uwb/lc-dev.c                               |    2 +-
  fs/afs/proc.c                                      |    8 +-
  fs/block_dev.c                                     |    2 +-
  fs/dlm/debug_fs.c                                  |   12 +-
  fs/ext2/xip.c                                      |    2 +-
  fs/jbd2/journal.c                                  |    4 +-
  fs/nfs/client.c                                    |    4 +-
  fs/nfsd/export.c                                   |    2 +-
  fs/ocfs2/cluster/netdebug.c                        |    4 +-
  fs/ocfs2/dlm/dlmdebug.c                            |    2 +-
  fs/partitions/check.c                              |    4 +-
  fs/proc/nommu.c                                    |    2 +-
  include/linux/attribute_container.h                |    2 +-
  include/linux/device.h                             |    6 +-
  include/linux/genhd.h                              |    2 +-
  include/linux/netdevice.h                          |    2 +-
  include/linux/nfsd/nfsd.h                          |    2 +-
  include/linux/transport_class.h                    |    2 +-
  ipc/util.c                                         |    2 +-
  kernel/cgroup.c                                    |    2 +-
  kernel/kprobes.c                                   |    2 +-
  kernel/lockdep_proc.c                              |    2 +-
  kernel/trace/ftrace.c                              |    4 +-
  kernel/trace/trace.c                               |    4 +-
  net/bluetooth/hci_sysfs.c                          |    4 +-
  net/core/net-sysfs.c                               |    2 +-
  net/ipv6/ip6mr.c                                   |    2 +-
  security/integrity/ima/ima_fs.c                    |    4 +-
  security/smack/smackfs.c                           |    6 +-
  111 files changed, 728 insertions(+), 360 deletions(-)


Cheers
--- manjo




More information about the kernel-team mailing list