1. 24 7月, 2008 3 次提交
    • H
      cifs: assorted endian annotations · 5ca33c6a
      Harvey Harrison 提交于
      fs/cifs/cifssmb.c:3917:13: warning: incorrect type in assignment (different base types)
      fs/cifs/cifssmb.c:3917:13:    expected bool [unsigned] [usertype] is_unicode
      fs/cifs/cifssmb.c:3917:13:    got restricted __le16
      
      The comment explains why __force is used here.
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      fs/cifs/connect.c:458:16: warning: cast to restricted __be32
      Signed-off-by: NHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      5ca33c6a
    • J
      [CIFS] break ATTR_SIZE changes out into their own function · 8efdbde6
      Jeff Layton 提交于
      Move the code that handles ATTR_SIZE changes to its own function. This
      makes for a smaller function and reduces the level of indentation.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      8efdbde6
    • J
      lockdep: annotate cifs in-kernel sockets · 09e50d55
      Jeff Layton 提交于
      Put CIFS sockets in their own class to avoid some lockdep warnings. CIFS
      sockets are not exposed to user-space, and so are not subject to the
      same deadlock scenarios.
      
      A similar change was made a couple of years ago for RPC sockets in commit
      ed07536e.
      
      This patch should prevent lockdep false-positives like this one:
      
      =======================================================
      [ INFO: possible circular locking dependency detected ]
      2.6.18-98.el5.jtltest.38.bz456320.1debug #1
      -------------------------------------------------------
      test5/2483 is trying to acquire lock:
       (sk_lock-AF_INET){--..}, at: [<ffffffff800270d2>] tcp_sendmsg+0x1c/0xb2f
      
      but task is already holding lock:
       (&inode->i_alloc_sem){--..}, at: [<ffffffff8002e454>] notify_change+0xf5/0x2e0
      
      which lock already depends on the new lock.
      
      the existing dependency chain (in reverse order) is:
      
      -> #3 (&inode->i_alloc_sem){--..}:
             [<ffffffff800a817c>] __lock_acquire+0x9a9/0xadf
             [<ffffffff800a8a72>] lock_acquire+0x55/0x70
             [<ffffffff8002e454>] notify_change+0xf5/0x2e0
             [<ffffffff800a4e36>] down_write+0x3c/0x68
             [<ffffffff8002e454>] notify_change+0xf5/0x2e0
             [<ffffffff800e358d>] do_truncate+0x50/0x6b
             [<ffffffff8005197c>] get_write_access+0x40/0x46
             [<ffffffff80012cf1>] may_open+0x1d3/0x22e
             [<ffffffff8001bc81>] open_namei+0x2c6/0x6dd
             [<ffffffff800289c6>] do_filp_open+0x1c/0x38
             [<ffffffff800683ef>] _spin_unlock+0x17/0x20
             [<ffffffff800167a7>] get_unused_fd+0xf9/0x107
             [<ffffffff8001a704>] do_sys_open+0x44/0xbe
             [<ffffffff80060116>] system_call+0x7e/0x83
             [<ffffffffffffffff>] 0xffffffffffffffff
      
      -> #2 (&sysfs_inode_imutex_key){--..}:
             [<ffffffff800a817c>] __lock_acquire+0x9a9/0xadf
             [<ffffffff8010f6df>] create_dir+0x26/0x1d7
             [<ffffffff800a8a72>] lock_acquire+0x55/0x70
             [<ffffffff8010f6df>] create_dir+0x26/0x1d7
             [<ffffffff800671c0>] mutex_lock_nested+0x104/0x29c
             [<ffffffff800a819d>] __lock_acquire+0x9ca/0xadf
             [<ffffffff8010f6df>] create_dir+0x26/0x1d7
             [<ffffffff8010fc67>] sysfs_create_dir+0x58/0x76
             [<ffffffff8015144c>] kobject_add+0xdb/0x198
             [<ffffffff801be765>] class_device_add+0xb2/0x465
             [<ffffffff8005a6ff>] kobject_get+0x12/0x17
             [<ffffffff80225265>] register_netdevice+0x270/0x33e
             [<ffffffff8022538c>] register_netdev+0x59/0x67
             [<ffffffff80464d40>] net_olddevs_init+0xb/0xac
             [<ffffffff80448a79>] init+0x1f9/0x2fc
             [<ffffffff80068885>] _spin_unlock_irq+0x24/0x27
             [<ffffffff80067f86>] trace_hardirqs_on_thunk+0x35/0x37
             [<ffffffff80061079>] child_rip+0xa/0x11
             [<ffffffff80068885>] _spin_unlock_irq+0x24/0x27
             [<ffffffff800606a8>] restore_args+0x0/0x30
             [<ffffffff80179a59>] acpi_ds_init_one_object+0x0/0x80
             [<ffffffff80448880>] init+0x0/0x2fc
             [<ffffffff8006106f>] child_rip+0x0/0x11
             [<ffffffffffffffff>] 0xffffffffffffffff
      
      -> #1 (rtnl_mutex){--..}:
             [<ffffffff800a817c>] __lock_acquire+0x9a9/0xadf
             [<ffffffff8025acf8>] ip_mc_leave_group+0x23/0xb7
             [<ffffffff800a8a72>] lock_acquire+0x55/0x70
             [<ffffffff8025acf8>] ip_mc_leave_group+0x23/0xb7
             [<ffffffff800671c0>] mutex_lock_nested+0x104/0x29c
             [<ffffffff8025acf8>] ip_mc_leave_group+0x23/0xb7
             [<ffffffff802451b0>] do_ip_setsockopt+0x6d1/0x9bf
             [<ffffffff800a575e>] lock_release_holdtime+0x27/0x48
             [<ffffffff800a575e>] lock_release_holdtime+0x27/0x48
             [<ffffffff8006a85e>] do_page_fault+0x503/0x835
             [<ffffffff8012cbf6>] socket_has_perm+0x5b/0x68
             [<ffffffff80245556>] ip_setsockopt+0x22/0x78
             [<ffffffff8021c973>] sys_setsockopt+0x91/0xb7
             [<ffffffff800602a6>] tracesys+0xd5/0xdf
             [<ffffffffffffffff>] 0xffffffffffffffff
      
      -> #0 (sk_lock-AF_INET){--..}:
             [<ffffffff800a5037>] print_stack_trace+0x59/0x68
             [<ffffffff800a8092>] __lock_acquire+0x8bf/0xadf
             [<ffffffff800a8a72>] lock_acquire+0x55/0x70
             [<ffffffff800270d2>] tcp_sendmsg+0x1c/0xb2f
             [<ffffffff80035466>] lock_sock+0xd4/0xe4
             [<ffffffff80096e91>] _local_bh_enable+0xcb/0xe0
             [<ffffffff800606a8>] restore_args+0x0/0x30
             [<ffffffff800270d2>] tcp_sendmsg+0x1c/0xb2f
             [<ffffffff80057540>] sock_sendmsg+0xf3/0x110
             [<ffffffff800a2bb6>] autoremove_wake_function+0x0/0x2e
             [<ffffffff800a10e4>] kernel_text_address+0x1a/0x26
             [<ffffffff8006f4e2>] dump_trace+0x211/0x23a
             [<ffffffff800a6d3d>] find_usage_backwards+0x5f/0x88
             [<ffffffff8840221a>] MD5Final+0xaf/0xc2 [cifs]
             [<ffffffff884032ec>] cifs_calculate_signature+0x55/0x69 [cifs]
             [<ffffffff8021d891>] kernel_sendmsg+0x35/0x47
             [<ffffffff883ff38e>] smb_send+0xa3/0x151 [cifs]
             [<ffffffff883ff5de>] SendReceive+0x1a2/0x448 [cifs]
             [<ffffffff800a812f>] __lock_acquire+0x95c/0xadf
             [<ffffffff883e758a>] CIFSSMBSetEOF+0x20d/0x25b [cifs]
             [<ffffffff883fa430>] cifs_set_file_size+0x110/0x3b7 [cifs]
             [<ffffffff883faa89>] cifs_setattr+0x3b2/0x6f6 [cifs]
             [<ffffffff8002e454>] notify_change+0xf5/0x2e0
             [<ffffffff8002e4a4>] notify_change+0x145/0x2e0
             [<ffffffff800e358d>] do_truncate+0x50/0x6b
             [<ffffffff8005197c>] get_write_access+0x40/0x46
             [<ffffffff80012cf1>] may_open+0x1d3/0x22e
             [<ffffffff8001bc81>] open_namei+0x2c6/0x6dd
             [<ffffffff800289c6>] do_filp_open+0x1c/0x38
             [<ffffffff800683ef>] _spin_unlock+0x17/0x20
             [<ffffffff800167a7>] get_unused_fd+0xf9/0x107
             [<ffffffff8001a704>] do_sys_open+0x44/0xbe
             [<ffffffff800602a6>] tracesys+0xd5/0xdf
             [<ffffffffffffffff>] 0xffffffffffffffff
      
      other info that might help us debug this:
      
      2 locks held by test5/2483:
       #0:  (&inode->i_mutex){--..}, at: [<ffffffff800e3582>] do_truncate+0x45/0x6b
       #1:  (&inode->i_alloc_sem){--..}, at: [<ffffffff8002e454>] notify_change+0xf5/0x2e0
      
      stack backtrace:
      
      Call Trace:
       [<ffffffff800a6a7b>] print_circular_bug_tail+0x65/0x6e
       [<ffffffff800a5037>] print_stack_trace+0x59/0x68
       [<ffffffff800a8092>] __lock_acquire+0x8bf/0xadf
       [<ffffffff800a8a72>] lock_acquire+0x55/0x70
       [<ffffffff800270d2>] tcp_sendmsg+0x1c/0xb2f
       [<ffffffff80035466>] lock_sock+0xd4/0xe4
       [<ffffffff80096e91>] _local_bh_enable+0xcb/0xe0
       [<ffffffff800606a8>] restore_args+0x0/0x30
       [<ffffffff800270d2>] tcp_sendmsg+0x1c/0xb2f
       [<ffffffff80057540>] sock_sendmsg+0xf3/0x110
       [<ffffffff800a2bb6>] autoremove_wake_function+0x0/0x2e
       [<ffffffff800a10e4>] kernel_text_address+0x1a/0x26
       [<ffffffff8006f4e2>] dump_trace+0x211/0x23a
       [<ffffffff800a6d3d>] find_usage_backwards+0x5f/0x88
       [<ffffffff8840221a>] :cifs:MD5Final+0xaf/0xc2
       [<ffffffff884032ec>] :cifs:cifs_calculate_signature+0x55/0x69
       [<ffffffff8021d891>] kernel_sendmsg+0x35/0x47
       [<ffffffff883ff38e>] :cifs:smb_send+0xa3/0x151
       [<ffffffff883ff5de>] :cifs:SendReceive+0x1a2/0x448
       [<ffffffff800a812f>] __lock_acquire+0x95c/0xadf
       [<ffffffff883e758a>] :cifs:CIFSSMBSetEOF+0x20d/0x25b
       [<ffffffff883fa430>] :cifs:cifs_set_file_size+0x110/0x3b7
       [<ffffffff883faa89>] :cifs:cifs_setattr+0x3b2/0x6f6
       [<ffffffff8002e454>] notify_change+0xf5/0x2e0
       [<ffffffff8002e4a4>] notify_change+0x145/0x2e0
       [<ffffffff800e358d>] do_truncate+0x50/0x6b
       [<ffffffff8005197c>] get_write_access+0x40/0x46
       [<ffffffff80012cf1>] may_open+0x1d3/0x22e
       [<ffffffff8001bc81>] open_namei+0x2c6/0x6dd
       [<ffffffff800289c6>] do_filp_open+0x1c/0x38
       [<ffffffff800683ef>] _spin_unlock+0x17/0x20
       [<ffffffff800167a7>] get_unused_fd+0xf9/0x107
       [<ffffffff8001a704>] do_sys_open+0x44/0xbe
       [<ffffffff800602a6>] tracesys+0xd5/0xdf
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Acked-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      09e50d55
  2. 22 7月, 2008 1 次提交
  3. 21 7月, 2008 1 次提交
    • A
      tty: Ldisc revamp · a352def2
      Alan Cox 提交于
      Move the line disciplines towards a conventional ->ops arrangement.  For
      the moment the actual 'tty_ldisc' struct in the tty is kept as part of
      the tty struct but this can then be changed if it turns out that when it
      all settles down we want to refcount ldiscs separately to the tty.
      
      Pull the ldisc code out of /proc and put it with our ldisc code.
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a352def2
  4. 19 7月, 2008 2 次提交
  5. 18 7月, 2008 4 次提交
  6. 17 7月, 2008 2 次提交
    • C
      [PATCH] ocfs2: fix oops in mmap_truncate testing · c0420ad2
      Coly Li 提交于
      This patch fixes a mmap_truncate bug which was found by ocfs2 test suite.
      
      In an ocfs2 cluster more than 1 node, run program mmap_truncate, which races
      mmap writes and truncates from multiple processes. While the test is
      running, a stat from another node forces writeout, causing an oops in
      ocfs2_get_block() because it sees a buffer to write which isn't allocated.
      
      This patch fixed the bug by clear dirty and uptodate bits in buffer, leave
      the buffer unmapped and return.
      
      Fix is suggested by Mark Fasheh, and I code up the patch.
      Signed-off-by: NColy Li <coyli@suse.de>
      Signed-off-by: NMark Fasheh <mfasheh@suse.com>
      c0420ad2
    • R
      Fix compile issues in fs/compat_ioctl.c when CONFIG_BLOCK is disabled · 3c3622dc
      Randy Dunlap 提交于
      Fix fs/compat_ioctl.c to handle CONFIG_BLOCK=n, CONFIG_SCSI=n to avoid
      build errors:
      
      In file included from include/scsi/scsi.h:12,
                       from fs/compat_ioctl.c:71:
      include/scsi/scsi_cmnd.h:27:25: warning: "BLK_MAX_CDB" is not defined
      include/scsi/scsi_cmnd.h:28:3: error: #error MAX_COMMAND_SIZE can not be bigger than BLK_MAX_CDB
      In file included from include/scsi/scsi.h:12,
                       from fs/compat_ioctl.c:71:
      include/scsi/scsi_cmnd.h: In function 'scsi_bidi_cmnd':
      include/scsi/scsi_cmnd.h:182: error: implicit declaration of function 'blk_bidi_rq'
      include/scsi/scsi_cmnd.h:183: error: dereferencing pointer to incomplete type
      include/scsi/scsi_cmnd.h: In function 'scsi_in':
      include/scsi/scsi_cmnd.h:189: error: dereferencing pointer to incomplete type
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3c3622dc
  7. 16 7月, 2008 22 次提交
  8. 15 7月, 2008 5 次提交