Fastest way to chown a whole device (xfs)
Use xargs -p
or GNU parallel
to speed things up considerably.
Unfortunately I do not think there is such a thing, but I would be pleasantly surprised if there was. You could write your own implementation in C and optimise it heavily. However the success of that depends on how well optimized chown is to begin with. And considering it's one of the core utilities I would say it's rather optimized. In addition you are bound most likely by i/o speed.
I have had some success avoiding limitations of ls and rm by piping the results of find to xargs, in the case a directory has a lot of files, i.e.:
find /path/* | xargs rm
So, a wild guess, maybe this can speed up chown, in case it is slower at recursively scanning a filesystem than find:
sudo find /path/* | xargs chown www-data:www-data