lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080331165718.0fb7c14e.akpm@linux-foundation.org>
Date:	Mon, 31 Mar 2008 16:57:18 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	Jiri Slaby <jirislaby@...il.com>
Cc:	linux-kernel@...r.kernel.org, jirislaby@...il.com
Subject: Re: [PATCH 3/4] Char: ip2, fix sparse warnings

On Fri, 28 Mar 2008 22:18:43 +0100
Jiri Slaby <jirislaby@...il.com> wrote:

> Unlock two grabbed locks on some paths.
> 
> Signed-off-by: Jiri Slaby <jirislaby@...il.com>
> ---
>  drivers/char/ip2/i2lib.c |   10 ++++++----
>  1 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/char/ip2/i2lib.c b/drivers/char/ip2/i2lib.c
> index 618f5fe..1d5388c 100644
> --- a/drivers/char/ip2/i2lib.c
> +++ b/drivers/char/ip2/i2lib.c
> @@ -643,12 +643,12 @@ i2QueueCommands(int type, i2ChanStrPtr pCh, int timeout, int nCommands,
>  				// Normal Expected path - We still hold LOCK
>  				break; /* from for()- Enough room: goto proceed */
>  			}
> -		}
> -
> -		ip2trace (CHANN, ITRC_QUEUE, 3, 1, totalsize );
> +			ip2trace(CHANN, ITRC_QUEUE, 3, 1, totalsize);
> +			write_unlock_irqrestore(lock_var_p, flags);
> +		} else
> +			ip2trace(CHANN, ITRC_QUEUE, 3, 1, totalsize);
>  
>  		// Prepare to wait for buffers to empty
> -		write_unlock_irqrestore(lock_var_p, flags);
>  		serviceOutgoingFifo(pB);	// Dump what we got
>  
>  		if (timeout == 0) {
> @@ -1834,6 +1834,8 @@ i2StripFifo(i2eBordStrPtr pB)
>  		default: // Neither packet? should be impossible
>  			ip2trace (ITRC_NO_PORT, ITRC_SFIFO, 5, 1,
>  				PTYPE_OF(pB->i2eLeadoffWord) );
> +			write_unlock_irqrestore(&pB->read_fifo_spinlock,
> +					bflags);
>  
>  			break;
>  		}  // End of switch on type of packets

Your tree apparently has a sensible-looking write_unlock_irqrestore(),
whereas mine has a stupid-looking WRITE_UNLOCK_IRQRESTORE().  How did this
happen?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ