1. 25 Aug, 2011 2 commits
    • Linus Torvalds's avatar
      Merge branch '3.1-rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · f385b697
      Linus Torvalds authored
      * '3.1-rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (21 commits)
        target: Convert acl_node_lock to be IRQ-disabling
        target: Make locking in transport_deregister_session() IRQ safe
        tcm_fc: init/exit functions should not be protected by "#ifdef MODULE"
        target: Print subpage too for unhandled MODE SENSE pages
        iscsi-target: Fix iscsit_allocate_se_cmd_for_tmr failure path bugs
        iscsi-target: Implement iSCSI target IPv6 address printing.
        target: Fix task SGL chaining breakage with transport_allocate_data_tasks
        target: Fix task count > 1 handling breakage and use max_sector page alignment
        target: Add missing DATA_SG_IO transport_cmd_get_valid_sectors check
        target: Fix SYNCHRONIZE_CACHE zero LBA + range breakage
        target: Remove duplicate task completions in transport_emulate_control_cdb
        target: Fix WRITE_SAME usage with transport_get_size
        target: Add WRITE_SAME (10) parsing and refactor passthrough checks
        target: Fix write payload exception handling with ->new_cmd_map
        iscsi-target: forever loop bug in iscsit_attach_ooo_cmdsn()
        iscsi-target: remove duplicate return
        target: Convert target_core_rd.c to use use BUG_ON
        iscsi-target: Fix leak on failure in iscsi_copy_param_list()
        target: Use ERR_CAST inlined function
        target: Make standard INQUIRY return 'not connected' for tpg_virt_lun0
        ...
      f385b697
    • Andi Kleen's avatar
      Add a personality to report 2.6.x version numbers · be27425d
      Andi Kleen authored
      I ran into a couple of programs which broke with the new Linux 3.0
      version.  Some of those were binary only.  I tried to use LD_PRELOAD to
      work around it, but it was quite difficult and in one case impossible
      because of a mix of 32bit and 64bit executables.
      
      For example, all kind of management software from HP doesnt work, unless
      we pretend to run a 2.6 kernel.
      
        $ uname -a
        Linux svivoipvnx001 3.0.0-08107-g97cd98f #1062 SMP Fri Aug 12 18:11:45 CEST 2011 i686 i686 i386 GNU/Linux
      
        $ hpacucli ctrl all show
      
        Error: No controllers detected.
      
        $ rpm -qf /usr/sbin/hpacucli
        hpacucli-8.75-12.0
      
      Another notable case is that Python now reports "linux3" from
      sys.platform(); which in turn can break things that were checking
      sys.platform() == "linux2":
      
        https://bugzilla.mozilla.org/show_bug.cgi?id=664564
      
      It seems pretty clear to me though it's a bug in the apps that are using
      '==' instead of .startswith(), but this allows us to unbreak broken
      programs.
      
      This patch adds a UNAME26 personality that makes the kernel report a
      2.6.40+x version number instead.  The x is the x in 3.x.
      
      I know this is somewhat ugly, but I didn't find a better workaround, and
      compatibility to existing programs is important.
      
      Some programs also read /proc/sys/kernel/osrelease.  This can be worked
      around in user space with mount --bind (and a mount namespace)
      
      To use:
      
        wget ftp://ftp.kernel.org/pub/linux/kernel/people/ak/uname26/uname26.c
        gcc -o uname26 uname26.c
        ./uname26 program
      Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      be27425d
  2. 24 Aug, 2011 11 commits
  3. 23 Aug, 2011 18 commits
  4. 22 Aug, 2011 9 commits