Re: [PATCHSET] workqueue: concurrency managed workqueue, take#4

From: Anton Blanchard
Date: Sat Feb 27 2010 - 20:15:22 EST



Hi Tejun,

I gave the workqueue patches a spin on PowerPC. I'm particularly interested
from an OS jitter perspective, and that these patches wont introduce more
jitter. It looks like we reach a steady state of worker threads and arent
continually creating and destroying them which is good. This could be a big
deal on compute CPUs (CPUs isolated via isol_cpus or cpusets).

A few things I've found so far:

1. NR_CPUS > 32 causes issues with the workqueue debugfs code:

kernel/workqueue.c:3314: warning: left shift count >= width of type
kernel/workqueue.c:3323: warning: left shift count >= width of type
kernel/workqueue.c:3323: warning: integer overflow in expression
kernel/workqueue.c:3324: warning: enumeration values exceed range of largest integer
kernel/workqueue.c: In function âwq_debugfs_decode_posâ:
kernel/workqueue.c:3336: warning: right shift count is negative
kernel/workqueue.c:3337: warning: right shift count is negative
kernel/workqueue.c: In function âwq_debugfs_next_posâ:
kernel/workqueue.c:3435: warning: left shift count is negative
kernel/workqueue.c:3436: warning: left shift count is negative
kernel/workqueue.c: In function âwq_debugfs_startâ:
kernel/workqueue.c:3455: warning: left shift count >= width of type

2. cifs needs to be converted:

fs/cifs/cifsfs.c: In function âexit_cifsâ:
fs/cifs/cifsfs.c:1067: error: âsystem_single_wqâ undeclared (first use in this function)
fs/cifs/cifsfs.c:1067: error: (Each undeclared identifier is reported only once
fs/cifs/cifsfs.c:1067: error: for each function it appears in.)

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