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: <20060824103412.GA14002@elte.hu>
Date:	Thu, 24 Aug 2006 12:34:12 +0200
From:	Ingo Molnar <mingo@...e.hu>
To:	Gautham R Shenoy <ego@...ibm.com>
Cc:	rusty@...tcorp.com.au, torvalds@...l.org, akpm@...l.org,
	linux-kernel@...r.kernel.org, arjan@...el.linux.com,
	davej@...hat.com, vatsa@...ibm.com, dipankar@...ibm.com,
	ashok.raj@...el.com
Subject: Re: [RFC][PATCH 0/4] Redesign cpu_hotplug locking.


* Gautham R Shenoy <ego@...ibm.com> wrote:

> So here's an implementation on the lines of (c).
> 
> There are two types of tasks interested in cpu_hotplug
> - ones who want to *prevent* a hotplug event.
> - ones who want to *perform* a cpu hotplug.
> 
> For sake of simplicity let's call the former ones readers (though I 
> would have prefered inhibitors or somthing fancier!) and latter ones 
> writers. Let write operation = cpu_hotplug operation.
> 
> -The protocol is analogous to RWSEM, *only not so fair* .

really nice! I'm quite sure that this is the right way to approach this 
problem.

Please add the appropriate lock_acquire()/lock_release() calls into the 
new sleeping semaphore type. Just use the parameters that rwlocks use:

#define rwlock_acquire(l, s, t, i)            lock_acquire(l, s, t, 0, 2, i)
#define rwlock_acquire_read(l, s, t, i)       lock_acquire(l, s, t, 2, 2, i)

and lockdep will allow recursive read-locking. You'll also need a 
lockdep_init_map() call to register the lock with lockdep. Then your 
locking scheme will be fully checked by lockdep too. (with your current 
code the new lock type is not added to the lock dependency graph(s))

	Ingo
-
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