commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=8aafd1f9b6076b82378a557225bf4fcacfd8c245 branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/2011R1
Signed-off-by: Steven Miao <[email protected]> Signed-off-by: Sonic Zhang <[email protected]> --- drivers/staging/icc/core/protocol.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/staging/icc/core/protocol.c b/drivers/staging/icc/core/protocol.c index 6b99dec..b1e134d 100644 --- a/drivers/staging/icc/core/protocol.c +++ b/drivers/staging/icc/core/protocol.c @@ -806,12 +806,13 @@ icc_release(struct inode *inode, struct file *file) struct sm_session_table *table = icc_info->sessions_table; int used; int i; + pid_t pid = current->pid; table->refcnt--; - if (table->refcnt == 0) { - used = MAX_ENDPOINTS - table->nfree; - for (i = 0; i < used; i++) + for (i = 0; i < MAX_ENDPOINTS; i++) { + if (table->sessions[i].pid == pid) sm_free_session(i, table); } + WARN_ON(table->nfree != MAX_ENDPOINTS); return ret; }
_______________________________________________ Linux-kernel-commits mailing list [email protected] https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits
