Skip to content

Commit

Permalink
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/teigland/dlm

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:
  dlm: fix uninitialized variable for search_rsb_list callers
  dlm: release socket on error
  dlm: fix basts for granted CW waiting PR/CW
  dlm: check for null in device_write
  • Loading branch information
Linus Torvalds committed Jul 28, 2008
2 parents d9089c2 + 18c60c0 commit 3988ba0
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 3 deletions.
4 changes: 3 additions & 1 deletion fs/dlm/lock.c
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,7 @@ static int search_rsb_list(struct list_head *head, char *name, int len,
if (len == r->res_length && !memcmp(name, r->res_name, len))
goto found;
}
*r_ret = NULL;
return -EBADR;

found:
Expand Down Expand Up @@ -1782,7 +1783,8 @@ static void grant_pending_locks(struct dlm_rsb *r)

list_for_each_entry_safe(lkb, s, &r->res_grantqueue, lkb_statequeue) {
if (lkb->lkb_bastfn && lock_requires_bast(lkb, high, cw)) {
if (cw && high == DLM_LOCK_PR)
if (cw && high == DLM_LOCK_PR &&
lkb->lkb_grmode == DLM_LOCK_PR)
queue_bast(r, lkb, DLM_LOCK_CW);
else
queue_bast(r, lkb, high);
Expand Down
4 changes: 3 additions & 1 deletion fs/dlm/lowcomms.c
Original file line number Diff line number Diff line change
Expand Up @@ -891,8 +891,10 @@ static void tcp_connect_to_sock(struct connection *con)
goto out_err;

memset(&saddr, 0, sizeof(saddr));
if (dlm_nodeid_to_addr(con->nodeid, &saddr))
if (dlm_nodeid_to_addr(con->nodeid, &saddr)) {
sock_release(sock);
goto out_err;
}

sock->sk->sk_user_data = con;
con->rx_action = receive_from_sock;
Expand Down
2 changes: 1 addition & 1 deletion fs/dlm/user.c
Original file line number Diff line number Diff line change
Expand Up @@ -539,7 +539,7 @@ static ssize_t device_write(struct file *file, const char __user *buf,

/* do we really need this? can a write happen after a close? */
if ((kbuf->cmd == DLM_USER_LOCK || kbuf->cmd == DLM_USER_UNLOCK) &&
test_bit(DLM_PROC_FLAGS_CLOSING, &proc->flags))
(proc && test_bit(DLM_PROC_FLAGS_CLOSING, &proc->flags)))
return -EINVAL;

sigfillset(&allsigs);
Expand Down

0 comments on commit 3988ba0

Please sign in to comment.