Re: [PATCH] Fix siginfo._uid bug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andreas Schwab wrote:
Maxim Kuvyrkov <maxim@xxxxxxxxxxxxxxxx> writes:

The bug is rather elegant and has been present in sources for years.

For more than 9 years, to be precise, when 32 bit uids were introduced.

The problem is that m68k uses a custom siginfo layout due to having
a 16-bit uid field for 'backward compatibility'.  I.e., siginfo._kill
fields are:

I've found this interesting thread from 2000:

http://marc.info/?l=linux-kernel&m=94829131029274&w=2

The change went in 2.3.41, and undid the change made in 2.3.39.  It was
reintroduced (for asm-m68k/siginfo.h only and with __kernel_* types; no
other siginfo header used them at that time) in 2.4.0-test12.

Now looking at the glibc side, m68k has always used the generic
linux/bits/siginfo.h (with a single 32bit uid field), until Richard
Sandiford introduced linux/m68k/siginfo.h in October 2006, copying the
(broken) layout from the kernel.

Given that there is no way to keep backward compatibility it might be a
good opportunity to do same cleanup here.  Like going back to the
generic layout.

I can only cheer for going to the generic layout as I don't want repeat the exercise of hunting a bug that is both in the kernel and glibc.

--
Maxim
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux