Re: [PATCH] remove name length check in a workqueue

From: Frederic TEMPORELLI - astek
Date: Wed Aug 10 2005 - 13:50:12 EST


James Bottomley a écrit :

Well, but the other alternative is that we hit arbitrary BUG_ON() limits
in systems that create numbered workqueues which is rather contrary to
our scaleability objectives, isn't it?

I think I'd rather the name truncation than have to respond to kernel
BUG()'s. If someone really has a problem with the appearance of ps,
they can always increase TASK_COMM_LEN.



We could truncate the name before adding the CPU number, but it sounds
saner to just prevent anyone passing in excessively long names. Via
BUG_ON, say ;)

What's the actual problem?



What I posted originally; the current SCSI format for a workqueue:
scsi_wq_%d hits the bug after the host number rises to 100, which has
been seen by some enterprise person with > 100 HBAs.

The reason for this name is that the error handler thread is called
scsi_eh_%d; so we could rename all our threads to avoid this, but one
day someone will come along with a huge enough machine to hit whatever
limit we squeeze it down to.

James



In scsi layer (drivers/scsi/hosts.c), wq name length is limited to KOBJ_NAME_LEN due to the snprintf .
may be nice to use same limit if BUG_ON is kept... but why NULL isn't returned, then ? ;-)

--
Tempo
-
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/