1. 18 1月, 2006 3 次提交
    • V
      [SCTP]: Fix machine check/connection hang on IA64. · 313e7b4d
      Vlad Yasevich 提交于
      sctp_unpack_cookie used an on-stack array called digest as a result/out
      parameter in the call to crypto_hmac. However, hmac code
      (crypto_hmac_final)
      assumes that the 'out' argument is in virtual memory (identity mapped
      region)
      and can use virt_to_page call on it.  This does not work with the on-stack
      declared digest.  The problems observed so far have been:
       a) incorrect hmac digest
       b) machine check and hardware reset.
      
      Solution is to define the digest in an identity mapped region by
      kmalloc'ing
      it.  We can do this once as part of the endpoint structure and re-use it
      when
      verifying the SCTP cookie.
      Signed-off-by: NVlad Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      313e7b4d
    • V
      [SCTP]: Fix bad sysctl formatting of SCTP timeout values on 64-bit m/cs. · 8116ffad
      Vlad Yasevich 提交于
      Change all the structure members that hold jiffies to be of type
      unsigned long.  This also corrects bad sysctl formating on 64 bit
      architectures.
      Signed-off-by: NVlad Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      8116ffad
    • V
      [SCTP]: Fix sctp_cookie alignment in the packet. · 9834a2bb
      Vlad Yasevich 提交于
      On 64 bit architectures, sctp_cookie sent as part of INIT-ACK is not
      aligned on a 64 bit boundry and thus causes unaligned access exceptions.
      
      The layout of the cookie prameter is this:
      |<----- Parameter Header --------------------|<--- Cookie DATA --------
      -----------------------------------------------------------------------
      | param type (16 bits) | param len (16 bits) | sig [32 bytes] | cookie..
      -----------------------------------------------------------------------
      
      The cookie data portion contains 64 bit values on 64 bit architechtures
      (timeval) that fall on a 32 bit alignment boundry when used as part of
      the on-wire format, but align correctly when used in internal
      structures.  This patch explicitely pads the on-wire format so that
      it is properly aligned.
      Signed-off-by: NVlad Yasevich <vladislav.yasevich@hp.com>
      Signed-off-by: NSridhar Samudrala <sri@us.ibm.com>
      9834a2bb
  2. 14 1月, 2006 2 次提交
  3. 13 1月, 2006 7 次提交
  4. 11 1月, 2006 1 次提交
  5. 10 1月, 2006 2 次提交
  6. 09 1月, 2006 1 次提交
    • J
      [PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1 · 6a878184
      Jan Blunck 提交于
      Since version 4.1 the gcc is warning about ignored attributes. This patch is
      using the equivalent attribute on the struct instead of on each of the
      structure or union members.
      
      GCC Manual:
        "Specifying Attributes of Types
      
         packed
          This attribute, attached to struct or union type definition, specifies
          that
          each member of the structure or union is placed to minimize the memory
          required. When attached to an enum definition, it indicates that the
          smallest integral type should be used.
      
          Specifying this attribute for struct and union types is equivalent to
          specifying the packed attribute on each of the structure or union
          members."
      Signed-off-by: NJan Blunck <jblunck@suse.de>
      Cc: Dave Jones <davej@codemonkey.org.uk>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      6a878184
  7. 08 1月, 2006 7 次提交
  8. 07 1月, 2006 1 次提交
  9. 06 1月, 2006 2 次提交
  10. 04 1月, 2006 14 次提交