This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
On 05/05/2016 12:15 AM, Mike Frysinger wrote:
> On 28 Apr 2016 21:39, Zack Weinberg wrote:
>> New ports henceforth need only provide bits/sysmacros.h defining
>> macros __dev_makedev, __dev_major, and __dev_minor, and it's OK if
>> these macros evaluate their arguments more than once.
>
> as a general policy, i don't think we want that.
Hmm. The only obvious alternative is to make the macros be function
bodies. On the one hand, that's uglier; on the other hand, that would
discourage people from using them directly (__names only go so far).
I'll try that in the next revision and you can see what you think.
>> 1) There seem to be generic "bits" headers in a top-level directory
>> named bits/, as well as sysdeps/generic/bits/ which is where I would
>> expect them to be. What's up with that?
>
> i suspect it's something like:
> - bits/: The One True header that is used everywhere and overriding
> doesn't make sense.
> - sysdeps/generic/bits/: We expect platforms to override it, so throw
> it in here to signal as much.
addressed separately
>> Does it maybe make sense to promote
>> the extended dev_t encoding glibc uses on all Linux-based
>> configurations, which supports 32-bit major and minor numbers, to
>> generic?
>
> i think making it 64-bit as a GNU extesion/base makes sense
OK, I'll make that change. I'll have to leave Hurd potentially broken,
though.
>> +/* Confirm that makedev (major (d), minor (d)) == d. */
>
> GNU style says two spaces after periods. comes up a few times.
argh
>> + printf ("FAIL: %04lx != %04lx (maj %02x min %02x)\n",
>> + d2, d1, maj, min);
>
> you noted that we can't rely on dev_t size, so you'll probably want to
> cast to uint64_t and use PRIx64 in the format string.
Good point. I think it's always 64 bits _wide_, but it isn't
necessarily always matched to %lx.
> also, you seem to be omitting the 8 spaces -> 1 tab conversion here and
> in other places in this patch.
Sorry, I mostly work on projects that want _no_ tabs these days so I
have my editor set to always use spaces.
>> +#define __dev_makedev(major, minor) (((major) << 8) | (minor & 0xff))
>
> parens around (minor) please
This file will not exist in the revision, but I've double-checked for
other such errors.
zw
Attachment:
signature.asc
Description: OpenPGP digital signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |