1. 29 1月, 2009 2 次提交
    • S
      [CIFS] Rename md5 functions to avoid collision with new rt modules · 6a7f8d36
      Steve French 提交于
      When rt modules were added they (each) included their own md5
      with names which collided with the existing names of cifs's md5 functions.
      
      Renaming cifs's md5 modules so we don't collide with them.
      
      > Stephen Rothwell wrote:
      > When CIFS is built-in (=y) and staging/rt28[67]0 =y, there are multiple
      > definitions of:
      >
      > build-r8250.out:(.text+0x1d8ad0): multiple definition of `MD5Init'
      > build-r8250.out:(.text+0x1dbb30): multiple definition of `MD5Update'
      > build-r8250.out:(.text+0x1db9b0): multiple definition of `MD5Final'
      >
      > all of which need to have more unique identifiers for their global
      > symbols (e.g., rt28_md5_init, cifs_md5_init, foo, blah, bar).
      >
      
      CC: Greg K-H <gregkh@suse.de>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      6a7f8d36
    • J
      cifs: turn smb_send into a wrapper around smb_sendv · 0496e02d
      Jeff Layton 提交于
      cifs: turn smb_send into a wrapper around smb_sendv
      
      Rename smb_send2 to smb_sendv to make it consistent with kernel naming
      conventions for functions that take a vector.
      
      There's no need to have 2 functions to handle sending SMB calls. Turn
      smb_send into a wrapper around smb_sendv. This also allows us to
      properly mark the socket as needing to be reconnected when there's a
      partial send from smb_send.
      
      Also, in practice we always use the address and noblocksnd flag
      that's attached to the TCP_Server_Info. There's no need to pass
      them in as separate args to smb_sendv.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Acked-by: NDave Kleikamp <shaggy@linux.vnet.ibm.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      0496e02d
  2. 28 1月, 2009 3 次提交
  3. 27 1月, 2009 1 次提交
    • V
      inotify: clean up inotify_read and fix locking problems · 3632dee2
      Vegard Nossum 提交于
      If userspace supplies an invalid pointer to a read() of an inotify
      instance, the inotify device's event list mutex is unlocked twice.
      This causes an unbalance which effectively leaves the data structure
      unprotected, and we can trigger oopses by accessing the inotify
      instance from different tasks concurrently.
      
      The best fix (contributed largely by Linus) is a total rewrite
      of the function in question:
      
      On Thu, Jan 22, 2009 at 7:05 AM, Linus Torvalds wrote:
      > The thing to notice is that:
      >
      >  - locking is done in just one place, and there is no question about it
      >   not having an unlock.
      >
      >  - that whole double-while(1)-loop thing is gone.
      >
      >  - use multiple functions to make nesting and error handling sane
      >
      >  - do error testing after doing the things you always need to do, ie do
      >   this:
      >
      >        mutex_lock(..)
      >        ret = function_call();
      >        mutex_unlock(..)
      >
      >        .. test ret here ..
      >
      >   instead of doing conditional exits with unlocking or freeing.
      >
      > So if the code is written in this way, it may still be buggy, but at least
      > it's not buggy because of subtle "forgot to unlock" or "forgot to free"
      > issues.
      >
      > This _always_ unlocks if it locked, and it always frees if it got a
      > non-error kevent.
      
      Cc: John McCutchan <ttb@tentacle.dhs.org>
      Cc: Robert Love <rlove@google.com>
      Cc: <stable@kernel.org>
      Signed-off-by: NVegard Nossum <vegard.nossum@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3632dee2
  4. 26 1月, 2009 5 次提交
  5. 22 1月, 2009 29 次提交