Hello,
I am Barr Kong Khemara, I humbly ask if you are related to my client who died couple of
years ago in a car accident here in my country Cambodia. I wish to also inquire if
it is possible to have different families with the same last name as yours by coincidence
who do not share the same common roots? Kindly get back to me if your email is still
Valid to enable me give you the details of my message or make headway in my search.
Regards,
Kong Khemara
The series is aimed at replacing struct timespec which is not
y2038 safe with y2038 safe struct timespec64 for k_clock interfaces.
The series also replaces struct itimerspec which uses struct timespec
internally with struct itimerspec64 for the k_clock interfaces.
The series does not change the syscall interface.
This will be done in a follow up series.
A few existing checkpatch-noted style issues, such as the 80 line
character limit, have been left as-is to facilitate easier review.
Changes since v1:
* Address review comments for change logs and coding style.
* Fix kbuild test error for alpha.
Deepa Dinamani (7):
time: Delete do_sys_setimeofday()
time: Change posix clocks ops interfaces to use timespec64
Change k_clock clock_get() to use timespec64
Change k_clock clock_getres() to use timespec64
Change k_clock clock_set() to use timespec64
Change k_clock timer_set() and timer_get() to use timespec64
Change k_clock nsleep() to use timespec64
arch/alpha/kernel/osf_sys.c | 4 +-
drivers/char/mmtimer.c | 28 ++++++-------
drivers/ptp/ptp_clock.c | 18 ++++----
include/linux/hrtimer.h | 2 +-
include/linux/posix-clock.h | 10 ++---
include/linux/posix-timers.h | 20 ++++-----
include/linux/timekeeping.h | 20 +++------
kernel/compat.c | 10 +++--
kernel/time/alarmtimer.c | 24 +++++------
kernel/time/hrtimer.c | 10 +++--
kernel/time/posix-clock.c | 10 ++---
kernel/time/posix-cpu-timers.c | 66 +++++++++++++++--------------
kernel/time/posix-stubs.c | 20 ++++++---
kernel/time/posix-timers.c | 95 ++++++++++++++++++++++++------------------
kernel/time/time.c | 4 +-
15 files changed, 179 insertions(+), 162 deletions(-)
--
2.7.4
Cc: Richard Cochran <richardcochran(a)gmail.com>
Cc: linux-alpha(a)vger.kernel.org
Cc: netdev(a)vger.kernel.org
The series is aimed at replacing struct timespec which is not
y2038 safe with y2038 safe struct timespec64 for k_clock interfaces.
The series does not change the syscall interface.
This will be done in a follow up series.
A few existing checkpatch-noted style issues, such as the 80 line
character limit, have been left as-is to facilitate easier review.
Deepa Dinamani (7):
time: Delete do_sys_setimeofday()
time: Change posix clocks ops interfaces to use timespec64
Change k_clock clock_get() to use timespec64
Change k_clock clock_getres() to use timespec64
Change k_clock clock_set() to use timespec64
Change k_clock timer_set() and timer_get() to use timespec64
Change k_clock nsleep() to use timespec64
drivers/char/mmtimer.c | 28 ++++++-------
drivers/ptp/ptp_clock.c | 18 ++++----
include/linux/hrtimer.h | 2 +-
include/linux/posix-clock.h | 10 ++---
include/linux/posix-timers.h | 14 +++----
include/linux/timekeeping.h | 20 +++------
kernel/compat.c | 10 +++--
kernel/time/alarmtimer.c | 24 +++++------
kernel/time/hrtimer.c | 10 +++--
kernel/time/posix-clock.c | 10 ++---
kernel/time/posix-cpu-timers.c | 66 ++++++++++++++++--------------
kernel/time/posix-stubs.c | 20 ++++++---
kernel/time/posix-timers.c | 93 ++++++++++++++++++++++++------------------
kernel/time/time.c | 4 +-
14 files changed, 172 insertions(+), 157 deletions(-)
--
2.7.4
Resending to update author id in patch 7/7.
The series is aimed at replacing struct timespec which is not
y2038 safe with y2038 safe struct timespec64 for k_clock interfaces.
The series does not change the syscall interface.
This will be done in a follow up series.
A few existing checkpatch-noted style issues, such as the 80 line
character limit, have been left as-is to facilitate easier review.
Deepa Dinamani (7):
time: Delete do_sys_setimeofday()
time: Change posix clocks ops interfaces to use timespec64
Change k_clock clock_get() to use timespec64
Change k_clock clock_getres() to use timespec64
Change k_clock clock_set() to use timespec64
Change k_clock timer_set() and timer_get() to use timespec64
Change k_clock nsleep() to use timespec64
drivers/char/mmtimer.c | 28 ++++++-------
drivers/ptp/ptp_clock.c | 18 ++++----
include/linux/hrtimer.h | 2 +-
include/linux/posix-clock.h | 10 ++---
include/linux/posix-timers.h | 14 +++----
include/linux/timekeeping.h | 20 +++------
kernel/compat.c | 10 +++--
kernel/time/alarmtimer.c | 24 +++++------
kernel/time/hrtimer.c | 10 +++--
kernel/time/posix-clock.c | 10 ++---
kernel/time/posix-cpu-timers.c | 66 ++++++++++++++++--------------
kernel/time/posix-stubs.c | 20 ++++++---
kernel/time/posix-timers.c | 93 ++++++++++++++++++++++++------------------
kernel/time/time.c | 4 +-
14 files changed, 172 insertions(+), 157 deletions(-)
--
2.7.4
sys_newlstat is a system call implementation that is meant for user
space, and that copies kernel-internal data structure to the user
format, which is not needed for in-kernel users.
Further, as we rearrange the system call implementation so we can
extend it with 64-bit time_t, the prototype for sys_newlstat changes.
This changes the initramfs code to use vfs_lstat directly, to get
it out of the way of the time_t changes, and make it slightly more
efficient in the process. Along the same lines we also replace
sys_stat and sys_stat64 with vfs_stat.
Signed-off-by: Arnd Bergmann <arnd(a)arndb.de>
---
Submitted before in June 2016, but no reply.
Andrew or Al, could one of you pick this up for v4.12?
---
init/do_mounts.h | 22 ++++------------------
init/initramfs.c | 12 ++++++------
2 files changed, 10 insertions(+), 24 deletions(-)
diff --git a/init/do_mounts.h b/init/do_mounts.h
index 067af1d9e8b6..282d65bfd674 100644
--- a/init/do_mounts.h
+++ b/init/do_mounts.h
@@ -19,29 +19,15 @@ static inline int create_dev(char *name, dev_t dev)
return sys_mknod(name, S_IFBLK|0600, new_encode_dev(dev));
}
-#if BITS_PER_LONG == 32
static inline u32 bstat(char *name)
{
- struct stat64 stat;
- if (sys_stat64(name, &stat) != 0)
+ struct kstat stat;
+ if (vfs_stat(name, &stat) != 0)
return 0;
- if (!S_ISBLK(stat.st_mode))
+ if (!S_ISBLK(stat.mode))
return 0;
- if (stat.st_rdev != (u32)stat.st_rdev)
- return 0;
- return stat.st_rdev;
-}
-#else
-static inline u32 bstat(char *name)
-{
- struct stat stat;
- if (sys_newstat(name, &stat) != 0)
- return 0;
- if (!S_ISBLK(stat.st_mode))
- return 0;
- return stat.st_rdev;
+ return stat.rdev;
}
-#endif
#ifdef CONFIG_BLK_DEV_RAM
diff --git a/init/initramfs.c b/init/initramfs.c
index 7eb7cb7cb9b9..83d514d0e69d 100644
--- a/init/initramfs.c
+++ b/init/initramfs.c
@@ -312,10 +312,10 @@ static int __init maybe_link(void)
static void __init clean_path(char *path, umode_t fmode)
{
- struct stat st;
+ struct kstat st;
- if (!sys_newlstat(path, &st) && (st.st_mode ^ fmode) & S_IFMT) {
- if (S_ISDIR(st.st_mode))
+ if (!vfs_lstat(path, &st) && (st.mode ^ fmode) & S_IFMT) {
+ if (S_ISDIR(st.mode))
sys_rmdir(path);
else
sys_unlink(path);
@@ -581,13 +581,13 @@ static void __init clean_rootfs(void)
num = sys_getdents64(fd, dirp, BUF_SIZE);
while (num > 0) {
while (num > 0) {
- struct stat st;
+ struct kstat st;
int ret;
- ret = sys_newlstat(dirp->d_name, &st);
+ ret = vfs_lstat(dirp->d_name, &st);
WARN_ON_ONCE(ret);
if (!ret) {
- if (S_ISDIR(st.st_mode))
+ if (S_ISDIR(st.mode))
sys_rmdir(dirp->d_name);
else
sys_unlink(dirp->d_name);
--
2.9.0