Races in ichsmb(9) when accessed from a multithreaded process
Chris Torek
torek at elf.torek.net
Mon Feb 3 21:20:51 UTC 2014
Yes, we found that the code does not properly allow either
multiple threads *or* multiple processes to work. The top level
driver makes it a single-open device (which has the obvious
drawback that only one process can open() the device). But even
then, multiple threads within a process, or forking, or using
PF_LOCAL sockets to hand over the file descriptor, result in
races.
We have a hack that makes it work for our case but the SMB
framework needs an overhaul.
Chris
More information about the freebsd-hackers
mailing list