mirror of
https://github.com/S3NEO/android_kernel_samsung_msm8226.git
synced 2024-11-07 03:47:13 +00:00
vt: Add a note on the historical abuse of CLOCK_TICK_RATE
This is one area where we can't just magic away the bizarre use of CLOCK_TICK_RATE as it leaks to user space APIs. It also means the visible CLOCK_TICK_RATE is frozen for architectures which is horrible. We need to fix this somehow Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
413f81eba3
commit
fab892232e
1 changed files with 6 additions and 0 deletions
|
@ -400,6 +400,9 @@ int vt_ioctl(struct tty_struct *tty, struct file * file,
|
||||||
case KIOCSOUND:
|
case KIOCSOUND:
|
||||||
if (!perm)
|
if (!perm)
|
||||||
goto eperm;
|
goto eperm;
|
||||||
|
/* FIXME: This is an old broken API but we need to keep it
|
||||||
|
supported and somehow separate the historic advertised
|
||||||
|
tick rate from any real one */
|
||||||
if (arg)
|
if (arg)
|
||||||
arg = CLOCK_TICK_RATE / arg;
|
arg = CLOCK_TICK_RATE / arg;
|
||||||
kd_mksound(arg, 0);
|
kd_mksound(arg, 0);
|
||||||
|
@ -417,6 +420,9 @@ int vt_ioctl(struct tty_struct *tty, struct file * file,
|
||||||
*/
|
*/
|
||||||
ticks = HZ * ((arg >> 16) & 0xffff) / 1000;
|
ticks = HZ * ((arg >> 16) & 0xffff) / 1000;
|
||||||
count = ticks ? (arg & 0xffff) : 0;
|
count = ticks ? (arg & 0xffff) : 0;
|
||||||
|
/* FIXME: This is an old broken API but we need to keep it
|
||||||
|
supported and somehow separate the historic advertised
|
||||||
|
tick rate from any real one */
|
||||||
if (count)
|
if (count)
|
||||||
count = CLOCK_TICK_RATE / count;
|
count = CLOCK_TICK_RATE / count;
|
||||||
kd_mksound(count, ticks);
|
kd_mksound(count, ticks);
|
||||||
|
|
Loading…
Reference in a new issue