improve reporting around getattrlistbulk
improve reporting around getattrlistbulk

Summary:
Welp, I should have done this in the earlier commit
because I was looking into a slow test and saw that the logging
output didn't have the right newlines and then I saw that we
were hitting the fallback path quite a lot.

This diff improves reporting in the case that not all of the
attributes are returned by printing the set that we got (using
a function borrowed from eden and slightly modified), and
makes the error path conditional on errno != 0.

I smell something fishy though; I was previously under the
assumption that we were in the wrong for acting based on
what appeared to be stack garbage in the error field, but
since that is confirmed to always be present, I don't think
my earlier diff really fixed anything aside from adding a
bit more logging and improving the chances that we would
fall back to something that basically worked.

Reviewed By: chadaustin

Differential Revision: D7008177

fbshipit-source-id: 00672f920c8dfa84c119bf3df23d1e6a557dc727

nodakai/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,wez/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,wez/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,wez/watchman,nodakai/watchman,wez/watchman,nodakai/watchman,wez/watchman,wez/watchman,nodakai/watchman,wez/watchman,wez/watchman,nodakai/watchman,facebook/watchman,wez/watchman