> I agree that this looks broken, but I don't see why it
> would be s390 specific. The clobber of adjacent memory
> happens on all architectures, and on all big endian systems
> the value read is incorrect even if adjacent memory happens
> to be 0.
Probably alignment restrictions do not allow anything interesting
to happen. I know now that ppc people complained about it.
> However, I'm not convinced the patch is a proper fix; it
> will cause the MAJOR and MINOR macros to be applied to a
> variable not of type kdev_t, which happens to work now but will
> break if the definition of kdev_t is changed to a structure
> or pointer type (as it probably will at some point in the
> future, if I recall the various discussions correctly).
>
> What about either
> - adding support for kdev_t values to procfs
> or
I thought that would be the right thing to do when kdev_t is changed.
Currently, I do not know how to change it. Guy Streeter told me
that someone floated an insanely ugly patch that special-cased
shorts into do_proc_dointvec(), and I did not like that approach
too much. Once the structure of new kdev_t is known, the
do_proc_kdev_t may be defined, but I think it makes no sense
to jump the gun now.
> - keeping two int variables real_root_major and
> real_root_minor ?
Who knows if we are going to have majors and minors at all.
Suppose Gooch and Viro give us a decent devfs, or something.
An alternative may be to redo the initrd interface, for instance
have /proc/real-root-path instead of real-root-dev (and no sysctl),
I did not have time to explore all implications of that way.
-- Pete
-
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/