1. 02 8月, 2007 7 次提交
  2. 20 7月, 2007 1 次提交
  3. 15 7月, 2007 3 次提交
  4. 12 7月, 2007 3 次提交
    • Z
      sysfs: add parameter "struct bin_attribute *" in .read/.write methods for sysfs binary attributes · 91a69029
      Zhang Rui 提交于
      Well, first of all, I don't want to change so many files either.
      
      What I do:
      Adding a new parameter "struct bin_attribute *" in the
      .read/.write methods for the sysfs binary attributes.
      
      In fact, only the four lines change in fs/sysfs/bin.c and
      include/linux/sysfs.h do the real work.
      But I have to update all the files that use binary attributes
      to make them compatible with the new .read and .write methods.
      I'm not sure if I missed any. :(
      
      Why I do this:
      For a sysfs attribute, we can get a pointer pointing to the
      struct attribute in the .show/.store method,
      while we can't do this for the binary attributes.
      I don't know why this is different, but this does make it not
      so handy to use the binary attributes as the regular ones.
      So I think this patch is reasonable. :)
      
      Who benefits from it:
      The patch that exposes ACPI tables in sysfs
      requires such an improvement.
      All the table binary attributes share the same .read method.
      Parameter "struct bin_attribute *" is used to get
      the table signature and instance number which are used to
      distinguish different ACPI table binary attributes.
      
      Without this parameter, we need to offer different .read methods
      for different ACPI table binary attributes.
      This is impossible as there are various ACPI tables on different
      platforms, and we don't know what they are until they are loaded.
      Signed-off-by: NZhang Rui <rui.zhang@intel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      91a69029
    • T
      sysfs: kill unnecessary attribute->owner · 7b595756
      Tejun Heo 提交于
      sysfs is now completely out of driver/module lifetime game.  After
      deletion, a sysfs node doesn't access anything outside sysfs proper,
      so there's no reason to hold onto the attribute owners.  Note that
      often the wrong modules were accounted for as owners leading to
      accessing removed modules.
      
      This patch kills now unnecessary attribute->owner.  Note that with
      this change, userland holding a sysfs node does not prevent the
      backing module from being unloaded.
      
      For more info regarding lifetime rule cleanup, please read the
      following message.
      
        http://article.gmane.org/gmane.linux.kernel/510293
      
      (tweaked by Greg to not delete the field just yet, to make it easier to
      merge things properly.)
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      7b595756
    • R
      PCI: add pci_try_set_mwi · 694625c0
      Randy Dunlap 提交于
      As suggested by Andrew, add pci_try_set_mwi(), which does not require
      return-value checking.
      
      - add pci_try_set_mwi() without __must_check
      - make it return 0 on success, errno if the "try" failed or error
      - review callers
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      694625c0
  5. 18 6月, 2007 6 次提交
  6. 06 5月, 2007 16 次提交
  7. 01 4月, 2007 1 次提交
    • A
      [SCSI] lpfc: fix oops when parsing dodgy VPD · 07da60c1
      Anton Blanchard 提交于
      We have seen two cases where VPD on an emulex card has been incorrect
      and we end up walking off the end of memory. It looks like someone made
      an update (increased the length of a string) without increasing the
      Length field. Then we do:
      
      	Length -= (3+i);
      
      And since Length is unsigned it becomes very large and we loop forever
      in the encapsulating:
      
      	while (Length > 0) {
      
      If we make Length signed then we fall out of the loop and proceed on.
      
      Its important to note we have only seen this in the lab and it may be
      the only two cases of this in existence, but since the rest of the code
      has been written to be resilient against bad VPD we may as well fix this
      too.
      Signed-off-by: NAnton Blanchard <anton@samba.org>
      Acked-by: NJames Smart <James.Smart@Emulex.Com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      07da60c1
  8. 11 3月, 2007 1 次提交
  9. 16 2月, 2007 1 次提交
  10. 06 1月, 2007 1 次提交