04 Jan, 2012

1 commit


13 Dec, 2011

1 commit

  • Found one system with UEFI/iBFT, kernel does not detect the iBFT during
    iscsi_ibft module loading.

    Root cause: on x86 (UEFI), we are calling of find_ibft_region() much earlier
    - specifically in setup_arch() before ACPI is enabled.

    Try to split acpi checking code out and call that later

    At that time ACPI iBFT already get permanent mapped with ioremap.
    So isa_virt_to_bus() will get wrong phys from right virt address.
    We could just skip that phys address printing.

    For legacy one, print the found address early.

    -v2: update comments and description according to Konrad.
    -v3: fix problem about module use case that is found by Konrad.
    -v4: use acpi_get_table() instead of acpi_table_parse() to handle module use case that is found by Konrad again..
    Signed-off-by: Yinghai Lu
    Signed-off-by: Konrad Rzeszutek Wilk

    Yinghai Lu
     

30 Jun, 2011

1 commit

  • be2iscsi passes the boot functions its phba object which is
    allocated in the shost, but iscsi_ibft passes in a object
    allocated for each item to display. The problem is that
    iscsi_boot_sysfs was managing the lifetime of the object
    passed in and doing a kfree on release. This causes a double
    free for be2iscsi which frees the shost in its pci_remove.

    This patch fixes the problem by adding a release callback
    which the drivers can call kfree or a put() type of function
    (needed for be2iscsi which will do a get/put on the shost).

    Signed-off-by: Mike Christie
    Signed-off-by: James Bottomley

    Mike Christie
     

26 Apr, 2011

1 commit

  • Using C line continuation inside format strings is error prone.
    Clean up the unintended whitespace introduced by misuse of \.
    Neaten correctly used line continations as well for consistency.

    drivers/scsi/arcmsr/arcmsr_hba.c has these errors as well,
    but arcmsr needs a lot more work and the driver should likely be
    moved to staging instead.

    Signed-off-by: Joe Perches
    Acked-by: Randy Dunlap
    Signed-off-by: Jiri Kosina

    Joe Perches
     

12 Aug, 2010

1 commit


12 May, 2010

2 commits


08 Mar, 2010

1 commit

  • Constify struct sysfs_ops.

    This is part of the ops structure constification
    effort started by Arjan van de Ven et al.

    Benefits of this constification:

    * prevents modification of data that is shared
    (referenced) by many other structure instances
    at runtime

    * detects/prevents accidental (but not intentional)
    modification attempts on archs that enforce
    read-only kernel data at runtime

    * potentially better optimized code as the compiler
    can assume that the const data cannot be changed

    * the compiler/linker move const data into .rodata
    and therefore exclude them from false sharing

    Signed-off-by: Emese Revfy
    Acked-by: David Teigland
    Acked-by: Matt Domsch
    Acked-by: Maciej Sosnowski
    Acked-by: Hans J. Koch
    Acked-by: Pekka Enberg
    Acked-by: Jens Axboe
    Acked-by: Stephen Hemminger
    Signed-off-by: Greg Kroah-Hartman

    Emese Revfy
     

01 Mar, 2010

1 commit


27 Feb, 2010

1 commit


07 Jan, 2010

1 commit


06 Oct, 2009

1 commit

  • In virtual environments (namely, Xen Dom0) virt phys and
    virt isa-bus translations cannot be freely interchanged (and
    even outside such environments it is not really correct to do so).
    When looking at memory below 1M, the latter translations should
    always be used.

    iscsi_ibft_find.c part from: Martin Wilck .

    Signed-off-by: Jan Beulich
    Signed-off-by: Peter Jones
    Signed-off-by: Konrad Rzeszutek Wilk
    Signed-off-by: Linus Torvalds

    Jan Beulich
     

03 May, 2009

1 commit

  • Fix the display of a few fields in the iBFT NIC attribute structure in
    sysfs.

    Ensure that, if the DHCP IP address and the subnet mask for the interface
    is present in the iBFT NIC structure, the corresponding entries are
    created in sysfs tree for the device. This would hence create the
    additional entries in the tree based on the iBFT table and would not
    delete any existing entries.

    Signed-off-by: Ashutosh Naik
    Cc: Vishnu V
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ashutosh Naik
     

12 Feb, 2009

1 commit


31 Oct, 2008

1 commit


30 Oct, 2008

1 commit


29 Oct, 2008

1 commit

  • The iscsi_ibft.c changes are almost certainly a bugfix as the
    pointer 'ip' is a u8 *, so they never print the last 8 bytes
    of the IPv6 address, and the eight bytes they do print have
    a zero byte with them in each 16-bit word.

    Other than that, this should cause no difference in functionality.

    Signed-off-by: Harvey Harrison
    Signed-off-by: David S. Miller

    Harvey Harrison
     

20 Oct, 2008

1 commit

  • Tejun's commit 7b595756ec1f49e0049a9e01a1298d53a7faaa15 made sysfs
    attribute->owner unnecessary. But the field was left in the structure to
    ease the merge. It's been over a year since that change and it is now
    time to start killing attribute->owner along with its users - one arch at
    a time!

    This patch is attempt #1 to get rid of attribute->owner only for
    CONFIG_X86_64 or CONFIG_X86_32 . We will deal with other arches later on
    as and when possible - avr32 will be the next since that is something I
    can test. Compile (make allyesconfig / make allmodconfig / custom config)
    and boot tested.

    akpm: the idea is that we put the declaration of sttribute.owner inside
    `#ifndef CONFIG_X86'. But that proved to be too ambitious for now because
    new usages kept on turning up in subsystem trees.

    [akpm: remove the ifdef for now]
    Signed-off-by: Parag Warudkar
    Cc: Greg KH
    Cc: Ingo Molnar
    Cc: Tejun Heo
    Cc: Len Brown
    Cc: Jens Axboe
    Cc: Jean Delvare
    Cc: Roland Dreier
    Cc: David Brownell
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Parag Warudkar
     

17 Oct, 2008

1 commit


03 Sep, 2008

1 commit

  • I got this patch through Red Hat's bugzilla from the bug submitter and
    patch creator. I have just fixed it up so it applies without fuzz to
    upstream kernels.

    Original patch and description from Shyam kumar Iyer:

    The issue [ibft module not displaying targets with short names] is because
    of an offset calculatation error in the iscsi_ibft.c code. Due to this
    error directory structure for the target in /sys/firmware/ibft does not
    get created and so the initiator is unable to connect to the target.

    Note that this bug surfaced only with an name that had a short section at
    the end. eg: "iqn.1984-05.com.dell:dell". It did not surface when the
    iqn's had a longer section at the end. eg:
    "iqn.2001-04.com.example:storage.disk2.sys1.xyz"

    So, the eot_offset was calculated such that an extra 48 bytes i.e. the
    size of the ibft_header which has already been accounted was subtracted
    twice.

    This was not evident with longer iqn names because they would overshoot
    the total ibft length more than 48 bytes and thus would escape the bug.

    Signed-off-by: Shyam Kumar Iyer
    Signed-off-by: Mike Christie
    Cc: Konrad Rzeszutek
    Cc: Peter Jones
    Cc: James Bottomley
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Christie
     

20 Apr, 2008

1 commit

  • Add /sysfs/firmware/ibft/[initiator|targetX|ethernetX] directories along with
    text properties which export the the iSCSI Boot Firmware Table (iBFT)
    structure.

    What is iSCSI Boot Firmware Table? It is a mechanism for the iSCSI tools to
    extract from the machine NICs the iSCSI connection information so that they
    can automagically mount the iSCSI share/target. Currently the iSCSI
    information is hard-coded in the initrd. The /sysfs entries are read-only
    one-name-and-value fields.

    The usual set of data exposed is:

    # for a in `find /sys/firmware/ibft/ -type f -print`; do echo -n "$a: "; cat $a; done
    /sys/firmware/ibft/target0/target-name: iqn.2007.com.intel-sbx44:storage-10gb
    /sys/firmware/ibft/target0/nic-assoc: 0
    /sys/firmware/ibft/target0/chap-type: 0
    /sys/firmware/ibft/target0/lun: 00000000
    /sys/firmware/ibft/target0/port: 3260
    /sys/firmware/ibft/target0/ip-addr: 192.168.79.116
    /sys/firmware/ibft/target0/flags: 3
    /sys/firmware/ibft/target0/index: 0
    /sys/firmware/ibft/ethernet0/mac: 00:11:25:9d:8b:01
    /sys/firmware/ibft/ethernet0/vlan: 0
    /sys/firmware/ibft/ethernet0/gateway: 192.168.79.254
    /sys/firmware/ibft/ethernet0/origin: 0
    /sys/firmware/ibft/ethernet0/subnet-mask: 255.255.252.0
    /sys/firmware/ibft/ethernet0/ip-addr: 192.168.77.41
    /sys/firmware/ibft/ethernet0/flags: 7
    /sys/firmware/ibft/ethernet0/index: 0
    /sys/firmware/ibft/initiator/initiator-name: iqn.2007-07.com:konrad.initiator
    /sys/firmware/ibft/initiator/flags: 3
    /sys/firmware/ibft/initiator/index: 0

    For full details of the IBFT structure please take a look at:
    ftp://ftp.software.ibm.com/systems/support/system_x_pdf/ibm_iscsi_boot_firmware_table_v1.02.pdf

    [akpm@linux-foundation.org: fix build]
    Signed-off-by: Konrad Rzeszutek
    Cc: Mike Christie
    Cc: Peter Jones
    Cc: James Bottomley
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Konrad Rzeszutek