It doesn't matter if user-land compilation breaks. As long as old binaries
work (and they will), we're fine.
User-land was _already_ broken. By virtue of using a type that it should
NOT have used.
If you want to use __kernel_dev_t, go ahead.
Linus
Yes. As everyone knows, one should not use kernel includes.
On the other hand, having local copies of everything is also
a bad habit, to be avoided when possible.
With Linux it is generally impossible to avoid going to local
copies, but so far losetup survived with the construction
% cat loop.h
#include <linux/posix_types.h>
#undef dev_t
#define dev_t __kernel_dev_t
#include <linux/loop.h>
#undef dev_t
%
Yecch.
(This is terribly ugly, but the alternative may be even worse:
lots of #ifdef's testing architecture etc.)
It is a pity that dev_t, a type that is not used anywhere in the
kernel except at the interface with user space, is a different
type from what user space uses.
Andries
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/