On Tue, Feb 28, 2017 at 10:28:20PM +0900, Byungchul Park wrote:
On Tue, Feb 28, 2017 at 02:05:13PM +0100, Peter Zijlstra wrote:
quoted
On Wed, Jan 18, 2017 at 10:17:32PM +0900, Byungchul Park wrote:
quoted
+#define MAX_XHLOCKS_NR 64UL
quoted
+#ifdef CONFIG_LOCKDEP_CROSSRELEASE
+ if (tsk->xhlocks) {
+ void *tmp = tsk->xhlocks;
+ /* Disable crossrelease for current */
+ tsk->xhlocks = NULL;
+ vfree(tmp);
+ }
+#endif
quoted
+#ifdef CONFIG_LOCKDEP_CROSSRELEASE
+ p->xhlock_idx = 0;
+ p->xhlock_idx_soft = 0;
+ p->xhlock_idx_hard = 0;
+ p->xhlock_idx_nmi = 0;
+ p->xhlocks = vzalloc(sizeof(struct hist_lock) * MAX_XHLOCKS_NR);
I don't think we need vmalloc for this now.
Really? When is a better time to do it?
I think the time creating a task is the best time to initialize it. No?
The place is fine, but I would use kmalloc() now (and subsequently kfree
on the other end) for the allocation. Its not _that_ large anymore,
right?
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>